mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
27 lines
591 B
Solidity
27 lines
591 B
Solidity
contract C {
|
|
struct S {
|
|
uint256 x;
|
|
}
|
|
S s;
|
|
|
|
function g() internal returns (uint256, S storage, uint256) {
|
|
s.x = 7;
|
|
return (1, s, 2);
|
|
}
|
|
|
|
function f() public returns (bool) {
|
|
(uint256 x1, S storage y1, uint256 z1) = g();
|
|
if (x1 != 1 || y1.x != 7 || z1 != 2) return false;
|
|
(, S storage y2, ) = g();
|
|
if (y2.x != 7) return false;
|
|
(uint256 x2, , ) = g();
|
|
if (x2 != 1) return false;
|
|
(, , uint256 z2) = g();
|
|
if (z2 != 2) return false;
|
|
return true;
|
|
}
|
|
}
|
|
|
|
// ----
|
|
// f() -> true
|