solidity/test/libsolidity/smtCheckerTests/try_catch/try_public_var.sol

16 lines
456 B
Solidity
Raw Normal View History

2021-01-06 14:55:26 +00:00
contract C {
int public x;
function f() public view {
try this.x() returns (int v) {
assert(x == v); // should hold
} catch {
assert(false); // this fails, because we over-approximate every external call in the way that it can both succeed and fail
}
}
}
2021-03-31 15:11:54 +00:00
// ====
// SMTEngine: all
2021-01-06 14:55:26 +00:00
// ----
2021-03-31 15:11:54 +00:00
// Warning 6328: (139-152): CHC: Assertion violation happens here.\nCounterexample:\nx = 0\n\nTransaction trace:\nC.constructor()\nState: x = 0\nC.f()