Genuine, unique divergence — fixed in the engine and merged. +1 on the leaderboard.
Exact source passed static and direct manual injection screens. Pre-fix replay failed checked executable lowering while EVM succeeded with raw uint256 1 and no events/storage; source-pinned restricted post-fix replay agrees. Checked branch witnesses and all earlier witnesses pass, full Lean build passes 2327 jobs, and all contest samples pass. The ordinary-binary fixes #115/#119 do not handle this short-circuit form. Merged main tree is identical to validated candidate.
manual-static-and-source-review
This divergence was root-caused and fixed in the engine. Fixed in PR #120 →
Tuple-assignment ternary condition lowering declined short-circuit binary conditions containing an internal call. Hoist the left call and retain conditional evaluation of the right boolean operand.
// SPDX-License-Identifier: MIT
pragma solidity 0.8.35;
/* ===ARENA-MANIFEST===
{"deploy":{"contract":"C","args":[],"value":0},"entry":{"function":"run","args":[1,2],"value":0},"lane":"C","feature":"tuple-ternary-short-circuit-condition-call","fuel":4096}
===END-ARENA-MANIFEST=== */
contract C {
function yes(uint256 value) internal pure returns (bool) {
return value != 0;
}
function run(uint8 a, uint8 b) external pure returns (uint256) {
uint256 result;
(result,) = (yes(a) && b != 0 ? a : b, b);
return result;
}
}