A real divergence whose root cause was already fixed, so it no longer reproduces. No point.
Duplicate of earlier submission cab8cd48-932f-4c86-ad12-db3f2a1c2b39 (@rappie_eth, 2026-07-26T14:59:54.389Z). A source-pinned Batch-99 counterfactual containing the isolated earliest block-environment and eager-ANF fix changes this later submission to NO_DIVERGENCE before the other Batch-100 loop or expression fixes are present. The earlier report therefore supplies the generic correction that eliminates this test and retains first-file priority. The exact merged commit replay also returns NO_DIVERGENCE.
manual-static-and-source-review
Duplicate of earlier submission cab8cd48-932f-4c86-ad12-db3f2a1c2b39 (@rappie_eth, 2026-07-26T14:59:54.389Z). A source-pinned Batch-99 counterfactual containing the isolated earliest block-environment and eager-ANF fix changes this later submission to NO_DIVERGENCE before the other Batch-100 loop or expression fixes are present. The earlier report therefore supplies the generic correction that eliminates this test and retains first-file priority. The exact merged commit replay also returns NO_DIVERGENCE.
// SPDX-License-Identifier: MIT
pragma solidity 0.8.35;
/* ===ARENA-MANIFEST===
{
"deploy": {
"contract": "C",
"args": []
},
"entry": {
"function": "run",
"args": [
0
]
},
"feature": "nested-and-or-evaluation",
"note": "g(3) && (g(4) || g(5)) with a pure parity predicate: true && (false || true) is true. solc+EVM returns true; solidity-lean returns false. The disjunction alone (g(4) || g(5)) agrees, so the fault is in a parenthesised || appearing as the right operand of &&."
}
===END-ARENA-MANIFEST=== */
contract C {
function g(uint256 v) internal pure returns (bool) { return v % 2 == 1; }
function run(uint256) external pure returns (bool) {
return g(3) && (g(4) || g(5));
}
}