mirror of
				https://github.com/ethereum/solidity
				synced 2023-10-03 13:03:40 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			23 lines
		
	
	
		
			815 B
		
	
	
	
		
			Solidity
		
	
	
	
	
	
			
		
		
	
	
			23 lines
		
	
	
		
			815 B
		
	
	
	
		
			Solidity
		
	
	
	
	
	
| abstract contract A {
 | |
| 	function foo() internal virtual returns (uint256);
 | |
| 	function test(uint8 _a) virtual internal returns (uint256);
 | |
| }
 | |
| abstract contract B {
 | |
| 	function foo() internal virtual returns (uint256);
 | |
| 	function test() internal virtual returns (uint256);
 | |
| }
 | |
| abstract contract C {
 | |
| 	function foo() internal virtual returns (uint256);
 | |
| }
 | |
| abstract contract D {
 | |
| 	function foo() internal virtual returns (uint256);
 | |
| 	function test() internal virtual returns (uint256);
 | |
| }
 | |
| abstract contract X is A, B, C, D {
 | |
| 	function test() internal override(B, D, C) virtual returns (uint256);
 | |
| 	function foo() internal override(A, C) virtual returns (uint256);
 | |
| }
 | |
| // ----
 | |
| // TypeError: (533-550): Invalid contract specified in override list: "C".
 | |
| // TypeError: (603-617): Function needs to specify overridden contracts "B" and "D".
 |