solidity/test/libsolidity/smtCheckerTests/types/address_transfer_insufficient.sol

17 lines
433 B
Solidity
Raw Normal View History

2019-04-11 16:14:48 +00:00
pragma experimental SMTChecker;
contract C
{
function f(address payable a, address payable b) public {
require(a.balance == 0);
a.transfer(600);
b.transfer(1000);
// Fails since a == this is possible.
assert(a.balance == 600);
}
}
// ----
2020-07-13 18:48:00 +00:00
// Warning 6328: (213-237): Assertion violation happens here
// Warning 1236: (134-149): Insufficient funds happens here
// Warning 1236: (153-169): Insufficient funds happens here