solidity/test/libsolidity/smtCheckerTests/external_calls/staticcall_reentrancy_view.sol
2021-10-26 11:30:30 +02:00

19 lines
724 B
Solidity

contract C {
uint x;
function s(uint _x) public view {
x == _x;
}
function f(address a) public {
(bool s, bytes memory data) = a.staticcall("");
assert(x == 0); // should hold
}
}
// ====
// SMTEngine: all
// ----
// Warning 2519: (106-112): This declaration shadows an existing declaration.
// Warning 2072: (106-112): Unused local variable.
// Warning 2072: (114-131): Unused local variable.
// Warning 2018: (72-188): Function state mutability can be restricted to view
// Info 1180: Contract invariant(s) for :C:\n(x <= 0)\nReentrancy property(ies) for :C:\n((!(x <= 0) || (x' <= 0)) && (!(x <= 0) || (<errorCode> <= 0)))\n<errorCode> = 0 -> no errors\n<errorCode> = 1 -> Assertion failed at assert(x == 0)\n