Omniscia Hot Cross Audit

CrossMint721 Static Analysis Findings

CrossMint721 Static Analysis Findings

CM1-01S: Unused Function

TypeSeverityLocation
Language SpecificInformationalCrossMint721.sol:L90-L92

Description:

The _burn function remains unutilized in the codebase.

Example:

contracts/token/CrossMint721.sol
90function _burn(uint256 tokenId) internal override(ERC721URIStorage, ERC721) {
91 super._burn(tokenId);
92}

Recommendation:

We advise it to be removed to avoid unnecessary bytecode.

Alleviation:

The _burn function was safely omitted from the codebase.

CM1-02S: Variable Shadowing

TypeSeverityLocation
Language SpecificInformationalCrossMint721.sol:L41, L42

Description:

The linked variables shadow the declaration of an inherited contract.

Example:

contracts/token/CrossMint721.sol
40constructor(
41 string memory name,
42 string memory symbol,
43 string memory baseURI_,
44 address owner
45) MinterControl(owner, msg.sender) ERC721(name, symbol) {
46 _base_uri = baseURI_;
47}

Recommendation:

We strongly recommend them to be renamed to avoid the colission, such as by prefixing them or suffixing them with an underscore (_).

Alleviation:

The variables were suffixed with the underscore (_) character thereby no longer causing a collision.