Pre-auditThree days of senior audit time for $1,500, credited in full toward your Zealynx audit.3 audit days, credited toward your auditSee how →
L-03·

Missing `IERC165` support in `supportsInterface()`

Not reportedoptionsleverageblack-scholes
TL;DR

The supportsInterface function in the ERC721WithURIBuilderUpgradeable contract overrides the IERC165 interface but fails to provide support for the necessary interface IDs(IERC165).

Severity
LOW
Method
MManual review
CAT.

The supportsInterface function in the ERC721WithURIBuilderUpgradeable contract overrides the IERC165 interface but fails to provide support for the necessary interface IDs(IERC165). This is not a good practice and may return incorrect results.

solidity
function supportsInterface(bytes4 interfaceId)
public
view
virtual
override(IERC165, ERC721EnumerableUpgradeable)
returns (bool)
{
return ERC721EnumerableUpgradeable.supportsInterface(interfaceId);
}

To mitigate this issue, change it to:

solidity
function supportsInterface(bytes4 interfaceId)
public
view
virtual
override(IERC165, ERC721EnumerableUpgradeable)
returns (bool)
{
return ERC721EnumerableUpgradeable.supportsInterface(interfaceId) || super.supportsInterface(interfaceId);
}
02Section · Report provenance

Report provenance

Published by Pashov Audit Group, with Carlos (Bloqarl) participating as a contractor. The source report states that its fixes review was not fully completed; no final remediation disposition is recorded for this finding. Read the full report.

L-03