Closed zlace0x closed 1 year ago
There are functions in the contracts that are declared with the virtual specifier. These functions are not expected to be overridden, so the use of the virtual specifier is redundant.
Path: ./src/Funnel.sol : computeDomainSeparator(), permit(), permitRenewable(), _checkOnTransferReceived(), _checkOnApprovalReceived(), supportsInterface(), _fallback()
Recommendation: Consider removing redundant code.
Status: Reported (There are still functions with redundant virtual specifier)
There are functions in the contracts that are declared with the virtual specifier. These functions are not expected to be overridden, so the use of the virtual specifier is redundant.
Path: ./src/Funnel.sol : computeDomainSeparator(), permit(), permitRenewable(), _checkOnTransferReceived(), _checkOnApprovalReceived(), supportsInterface(), _fallback()
Recommendation: Consider removing redundant code.
Status: Reported (There are still functions with redundant virtual specifier)