solidity/test/libsolidity/smtCheckerTests/modifiers/modifier_inside_branch_assignment.sol

26 lines
515 B
Solidity
Raw Normal View History

2019-04-01 09:10:28 +00:00
contract C {
uint x;
address owner;
modifier onlyOwner {
if (msg.sender == owner) _;
}
function f() public onlyOwner {
x = 0;
}
function g(uint y) public {
x = 1;
if (y > 0)
f();
// Fails for {y = >0, msg.sender == owner, x = 0}.
assert(x > 0);
}
}
2021-03-31 15:11:54 +00:00
// ====
// SMTEngine: all
2019-04-01 09:10:28 +00:00
// ----
2022-08-26 12:33:59 +00:00
// Warning 1218: (254-267): CHC: Error trying to invoke SMT solver.
// Warning 6328: (254-267): CHC: Assertion violation might happen here.
// Warning 4661: (254-267): BMC: Assertion violation happens here.