TwentyOne

First Flight #29
Beginner FriendlyGameFiFoundrySolidity
100 EXP
View results
Submission Details
Severity: low
Invalid

PUSH0 Opcode Not Supported on All Chains May Cause Deployment Issues

Root Cause

The contract uses Solidity ^0.8.13, and newer compiler versions may introduce opcodes like PUSH0 that are not supported on all Ethereum Virtual Machine (EVM) compatible chains, especially some Layer 2 solutions.

pragma solidity ^0.8.13;

Impact

Deploying the contract on networks that do not support these newer opcodes will fail, rendering the contract unusable on those chains. This limits the contract's compatibility and accessibility.

Recommendations

  • Specify EVM Version: Set the EVM version explicitly in the compiler settings to ensure compatibility:

    // In the compiler settings
    "evmVersion": "Berlin"
  • Test on Target Chains: Before deployment, test the contract on all intended networks to ensure compatibility.

Updates

Lead Judging Commences

inallhonesty Lead Judge 7 months ago
Submission Judgement Published
Invalidated
Reason: Non-acceptable severity

Support

FAQs

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