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

24 lines
545 B
Solidity

pragma experimental SMTChecker;
contract C {
uint a;
constructor(uint x) public {
a = x;
}
}
abstract contract B is C {
constructor(uint x) public {
a = x;
}
}
contract A is B {
constructor(uint x) C(x + 2) B(x + 1) public {
assert(a == x + 1);
}
}
// ----
// Warning 2661: (221-226): Overflow (resulting value larger than 2**256 - 1) happens here
// Warning 2661: (212-217): Overflow (resulting value larger than 2**256 - 1) happens here
// Warning 2661: (251-256): Overflow (resulting value larger than 2**256 - 1) happens here