Security analysis tool for EVM bytecode. Supports smart contracts built for Ethereum, Hedera, Quorum, Vechain, Roostock, Tron and other EVM-compatible blockchains.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
mythril/tests/testdata/input_contracts/exceptions.sol

47 lines
843 B

pragma solidity 0.5.0;
contract Exceptions {
uint256[8] myarray;
function assert1() public {
uint256 i = 1;
assert(i == 0);
}
function assert2() public {
uint256 i = 1;
assert(i > 0);
}
function assert3(uint256 input) public {
assert(input != 23);
}
function requireisfine(uint256 input) public {
require(input != 23);
}
function divisionby0(uint256 input) public {
uint256 i = 1/input;
}
function thisisfine(uint256 input) public {
if (input > 0) {
uint256 i = 1/input;
}
}
function arrayaccess(uint256 index) public {
uint256 i = myarray[index];
}
function thisisalsofind(uint256 index) public {
if (index < 8) {
uint256 i = myarray[index];
}
}
}