mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
31 lines
867 B
Solidity
31 lines
867 B
Solidity
pragma experimental SMTChecker;
|
|
|
|
contract C{
|
|
uint x;
|
|
constructor(uint y) {
|
|
assert(x == 1);
|
|
x = 1;
|
|
}
|
|
function f() public {
|
|
assert(x == 2);
|
|
++x;
|
|
g();
|
|
assert(x == 2);
|
|
}
|
|
|
|
function g() internal {
|
|
assert(x == 3);
|
|
--x;
|
|
assert(x == 2);
|
|
}
|
|
}
|
|
// ----
|
|
// Warning 5667: (70-76): Unused function parameter. Remove or comment out the variable name to silence this warning.
|
|
// Warning 6328: (138-152): Assertion violation happens here
|
|
// Warning 6328: (170-184): Assertion violation happens here
|
|
// Warning 6328: (220-234): Assertion violation happens here
|
|
// Warning 6328: (245-259): Assertion violation happens here
|
|
// Warning 6328: (82-96): Assertion violation happens here
|
|
// Warning 2661: (156-159): Overflow (resulting value larger than 2**256 - 1) happens here
|
|
// Warning 4144: (238-241): Underflow (resulting value less than 0) happens here
|