Beginner FriendlyFoundryNFT
100 EXP
View results
Submission Details
Severity: low
Invalid

Usage of version `0.8.20` or newer ones include `PUSH0` opcode, which will result in a failure when trying to deploy to Arbitrum.

Vulnerability Details

The contracts in the protocol are using compiler versions ^0.8.20, which means from 0.8.20 up to, but not including 0.9.0. These compiler versions produce bytecode that contains the PUSH0 opcode. The "Compatibilities" section in the protocol's documentation it's indicated that the project will be deployed on Arbitrum also. While Arbitrum is compatible with the EVM, the PUSH0 opcode is still not supported on this network, which will lead to a failure when trying to deploy the contracts.

Impact

PUSH0 opcode will lead to deployment failure on L2 networks such as Arbitrum.

Tools Used

Manual Review

Recommendations

Consider using Solidity compiler version 0.8.19.

Updates

Lead Judging Commences

inallhonesty Lead Judge over 1 year ago
Submission Judgement Published
Invalidated
Reason: Incorrect statement

Support

FAQs

Can't find an answer? Chat with us on Discord, Twitter or Linkedin.