mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
15 lines
320 B
Solidity
15 lines
320 B
Solidity
pragma experimental SMTChecker;
|
|
contract C {
|
|
function mul(uint256 a, uint256 b) internal pure returns (uint256) {
|
|
if (a == 0) {
|
|
return 0;
|
|
}
|
|
// TODO remove when SMTChecker sees that this code is the `else` of the `return`.
|
|
require(a != 0);
|
|
uint256 c = a * b;
|
|
require(c / a == b);
|
|
return c;
|
|
}
|
|
}
|
|
// ----
|