mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
22 lines
478 B
Solidity
22 lines
478 B
Solidity
pragma experimental SMTChecker;
|
|
|
|
library L
|
|
{
|
|
function add(uint x, uint y) internal pure returns (uint) {
|
|
require(x < 1000);
|
|
require(y < 1000);
|
|
return x + y;
|
|
}
|
|
}
|
|
|
|
contract C
|
|
{
|
|
using L for uint;
|
|
function f(uint x) public pure {
|
|
uint y = x.add(999);
|
|
assert(y < 1000);
|
|
}
|
|
}
|
|
// ----
|
|
// Warning 6328: (261-277): CHC: Assertion violation happens here.\nCounterexample:\n\nx = 1\ny = 1000\n\nTransaction trace:\nC.constructor()\nC.f(1)\n L.add(1, 999) -- internal call
|