MorpheusAI

MorpheusAI
Foundry
22,500 USDC
View results
Submission Details
Severity: low
Invalid

Floating Pragma

Summary

Contracts should be deployed with the same compiler version and flags that they have been tested thoroughly. Locking the pragma helps to ensure that contracts do not accidentally get deployed using, for example, an outdated compiler version that might introduce bugs that affect the contract system negatively.

floating pragma was used in the following contracts

https://github.com/Cyfrin/2024-01-Morpheus/blob/main/contracts/Distribution.sol#L2

pragma solidity ^0.8.20;

https://github.com/Cyfrin/2024-01-Morpheus/blob/main/contracts/L1Sender.sol#L2C1-L2C25

https://github.com/Cyfrin/2024-01-Morpheus/blob/main/contracts/L2MessageReceiver.sol#L2C1-L2C25

https://github.com/Cyfrin/2024-01-Morpheus/blob/main/contracts/L2TokenReceiver.sol#L2C1-L2C25

https://github.com/Cyfrin/2024-01-Morpheus/blob/main/contracts/MOR.sol#L2

Tools Used

manual review

Recommendations

consider Locking the pragma version and also consider known bugs (https://github.com/ethereum/solidity/releases) for the compiler version that is chosen.

Updates

Lead Judging Commences

inallhonesty Lead Judge
over 1 year ago
inallhonesty Lead Judge over 1 year ago
Submission Judgement Published
Invalidated
Reason: Known issue

Support

FAQs

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