When calling precompiles, the call is still considered successful even on error or failure. A failed precompile call simply results in a returndatasize of 0.
In the ExecutionHelper contract, we have _execute and _tryExecute functions, both of which return true even when our calls to precompiles fail.
This behavior results in incorrect return data and lacks a revert in _execute when the call to the precompile fails.
Manual
We should check if our call to the precompile was successful and verify the output.
The contest is live. Earn rewards by submitting a finding.
This is your time to appeal against judgements on your submissions.
Appeals are being carefully reviewed by our judges.