solidity/test/libsolidity/syntaxTests/controlFlow/localStorageVariables/ternary_declaration_err.sol
2022-04-01 23:41:18 -05:00

18 lines
609 B
Solidity

contract C {
struct S { bool f; }
S s;
function f(bool flag) internal view {
S storage c;
flag ? (c = s).f : false;
c;
}
function g(bool flag) internal view {
S storage c;
flag ? false : (c = s).f;
c;
}
}
// ----
// TypeError 3464: (152-153='c'): This variable is of storage pointer type and can be accessed without prior assignment, which would lead to undefined behaviour.
// TypeError 3464: (266-267='c'): This variable is of storage pointer type and can be accessed without prior assignment, which would lead to undefined behaviour.