Beginner FriendlyFoundry
100 EXP
View results
Submission Details
Severity: medium
Valid

Solidity Version 0.8.20 and above is not supported by Arbitrum

Description: Solc compiler version 0.8.20 and above switches the default target EVM version to Shanghai, which means that the generated bytecode will include PUSH0 opcodes. Since the project wants to deploy to Arbitrum, but since Arbitrum doesn't have PUSH0 opcode support (as per Arbitrum documentation) deployment of the contract will fail.

  • Found in src/VotingBooth.sol Line: 2

    pragma solidity ^0.8.23;

Impact: The project will not be able to deploy on Arbitrum as it doesn't support PUSH0 opcode.

Recommended Mitigation: The issue can be mitigated by changing the solidity version to 0.8.19.

Updates

Lead Judging Commences

0xnevi Lead Judge almost 2 years ago
Submission Judgement Published
Validated
Assigned finding tags:

PUSH0 not supported for solidity solidity ^0.8.20

Support

FAQs

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