solidity/test/libsolidity/smtCheckerTests/out_of_bounds/array_2d_1.sol

16 lines
314 B
Solidity
Raw Normal View History

2021-03-23 18:15:14 +00:00
pragma experimental SMTChecker;
contract C {
uint[][] a;
function p() public { a.push(); }
function q(uint i) public {
require(i < a.length);
a[i].push();
}
function r(uint i, uint j) public view returns (uint) {
require(i < a.length);
require(j < a[i].length);
return a[i][j]; // safe access
}
}