mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
27 lines
1.4 KiB
Solidity
27 lines
1.4 KiB
Solidity
pragma experimental SMTChecker;
|
|
|
|
contract C
|
|
{
|
|
function f() public payable {
|
|
assert(msg.sender == block.coinbase);
|
|
assert(block.difficulty == block.gaslimit);
|
|
assert(block.number == block.timestamp);
|
|
assert(tx.gasprice == msg.value);
|
|
assert(tx.origin == msg.sender);
|
|
uint x = block.number;
|
|
unchecked { x += 2; }
|
|
assert(x > block.number);
|
|
assert(block.timestamp > 10);
|
|
assert(gasleft() > 100);
|
|
}
|
|
}
|
|
// ----
|
|
// Warning 6328: (79-115): CHC: Assertion violation happens here.\nCounterexample:\n\n\nTransaction trace:\nC.constructor()\nC.f()
|
|
// Warning 6328: (119-161): CHC: Assertion violation happens here.\nCounterexample:\n\n\nTransaction trace:\nC.constructor()\nC.f()
|
|
// Warning 6328: (165-204): CHC: Assertion violation happens here.\nCounterexample:\n\n\nTransaction trace:\nC.constructor()\nC.f()
|
|
// Warning 6328: (208-240): CHC: Assertion violation happens here.\nCounterexample:\n\n\nTransaction trace:\nC.constructor()\nC.f()
|
|
// Warning 6328: (244-275): CHC: Assertion violation happens here.\nCounterexample:\n\n\nTransaction trace:\nC.constructor()\nC.f()
|
|
// Warning 6328: (328-352): CHC: Assertion violation happens here.\nCounterexample:\n\n\nTransaction trace:\nC.constructor()\nC.f()
|
|
// Warning 6328: (356-384): CHC: Assertion violation happens here.\nCounterexample:\n\n\nTransaction trace:\nC.constructor()\nC.f()
|
|
// Warning 6328: (388-411): CHC: Assertion violation happens here.\nCounterexample:\n\n\nTransaction trace:\nC.constructor()\nC.f()
|