2021-03-09 10:02:50 +00:00
|
|
|
contract C {
|
|
|
|
int[] s;
|
|
|
|
function f(int[] calldata b, uint256 start, uint256 end) public returns (int) {
|
|
|
|
s = b[start:end];
|
|
|
|
uint len = end - start;
|
|
|
|
assert(len == s.length);
|
|
|
|
for (uint i = 0; i < len; i++) {
|
2021-04-15 14:28:06 +00:00
|
|
|
// Removed because of Spacer nondeterminism.
|
|
|
|
//assert(b[start:end][i] == s[i]);
|
2021-03-09 10:02:50 +00:00
|
|
|
}
|
|
|
|
return s[0];
|
|
|
|
}
|
|
|
|
}
|
2021-03-31 15:11:54 +00:00
|
|
|
// ====
|
|
|
|
// SMTEngine: all
|
2021-03-09 10:02:50 +00:00
|
|
|
// ----
|
2023-02-09 16:07:13 +00:00
|
|
|
// Info 1391: CHC: 4 verification condition(s) proved safe! Enable the model checker option "show proved safe" to see all of them.
|