2020-05-14 18:09:52 +00:00
|
|
|
abstract contract D {
|
|
|
|
function d() external virtual;
|
|
|
|
}
|
|
|
|
|
|
|
|
contract C {
|
|
|
|
uint x;
|
|
|
|
D d;
|
|
|
|
function f() public {
|
|
|
|
if (x < 10)
|
|
|
|
++x;
|
|
|
|
}
|
|
|
|
function g() public {
|
|
|
|
d.d();
|
|
|
|
assert(x < 10);
|
|
|
|
}
|
|
|
|
}
|
2021-03-31 15:11:54 +00:00
|
|
|
// ====
|
|
|
|
// SMTEngine: all
|
2020-05-14 18:09:52 +00:00
|
|
|
// ----
|
2021-03-31 15:11:54 +00:00
|
|
|
// Warning 6328: (167-181): CHC: Assertion violation happens here.
|
2021-10-06 09:53:03 +00:00
|
|
|
// Info 1180: Reentrancy property(ies) for :C:\n!(<errorCode> = 1)\n<errorCode> = 0 -> no errors\n<errorCode> = 1 -> Overflow at ++x\n<errorCode> = 3 -> Assertion failed at assert(x < 10)\n
|