15,000 USDC
View results
Submission Details
Severity: gas

Setting the constructor to `payable`

Summary

You can cut out 10 opcodes in the creation-time EVM bytecode if you declare a constructor payable. Making the constructor payable eliminates the need for an initial check of msg.value == 0 and saves 13 gas on deployment with no security risks.

Vulnerability Details

Code Snippet

File: DSCEngine.sol
112: constructor(address[] memory tokenAddresses, address[] memory priceFeedAddresses, address dscAddress) {
File: DecentralizedStableCoin.sol
44: constructor() ERC20("DecentralizedStableCoin", "DSC") {}

Impact

Tools Used

Recommendations

Set the constructor to payable

Support

FAQs

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