solidity/test/libsolidity/smtCheckerTests/functions/constructor_hierarchy_4.sol

23 lines
895 B
Solidity
Raw Normal View History

pragma experimental SMTChecker;
contract C {
uint a;
2020-06-23 12:14:24 +00:00
constructor(uint x) {
a = x;
}
}
2019-12-03 20:44:06 +00:00
abstract contract B is C {
2020-06-23 12:14:24 +00:00
constructor(uint x) {
a = x;
}
}
contract A is B {
2020-06-23 12:14:24 +00:00
constructor(uint x) C(x + 2) B(x + 1) {
assert(a == x + 1);
}
}
// ----
2021-01-06 15:06:15 +00:00
// Warning 4984: (207-212): CHC: Overflow (resulting value larger than 2**256 - 1) happens here.\nCounterexample:\na = 0\nx = 115792089237316195423570985008687907853269984665640564039457584007913129639935\n\nTransaction trace:\nA.constructor(115792089237316195423570985008687907853269984665640564039457584007913129639935)
// Warning 4984: (198-203): CHC: Overflow (resulting value larger than 2**256 - 1) happens here.\nCounterexample:\na = 0\nx = 115792089237316195423570985008687907853269984665640564039457584007913129639934\n\nTransaction trace:\nA.constructor(115792089237316195423570985008687907853269984665640564039457584007913129639934)