mirror of
				https://github.com/ethereum/solidity
				synced 2023-10-03 13:03:40 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			31 lines
		
	
	
		
			568 B
		
	
	
	
		
			Solidity
		
	
	
	
	
	
			
		
		
	
	
			31 lines
		
	
	
		
			568 B
		
	
	
	
		
			Solidity
		
	
	
	
	
	
pragma abicoder               v2;
 | 
						|
 | 
						|
 | 
						|
contract C {
 | 
						|
    struct S1 {
 | 
						|
        uint256 a;
 | 
						|
        uint256 b;
 | 
						|
    }
 | 
						|
    struct S2 {
 | 
						|
        uint256 a;
 | 
						|
    }
 | 
						|
 | 
						|
    function f(S1 calldata s1, S2 calldata s2, S1 calldata s3)
 | 
						|
        external
 | 
						|
        pure
 | 
						|
        returns (uint256 a, uint256 b, uint256 c, uint256 d, uint256 e)
 | 
						|
    {
 | 
						|
        a = s1.a;
 | 
						|
        b = s1.b;
 | 
						|
        c = s2.a;
 | 
						|
        d = s3.a;
 | 
						|
        e = s3.b;
 | 
						|
    }
 | 
						|
}
 | 
						|
 | 
						|
// ====
 | 
						|
// compileToEwasm: also
 | 
						|
// compileViaYul: also
 | 
						|
// ----
 | 
						|
// f((uint256,uint256),(uint256),(uint256,uint256)): 1, 2, 3, 4, 5 -> 1, 2, 3, 4, 5
 |