Variable Shadowing#
Informational
Variable shadowing occurs when a local variable has the same name as a state variable. This is discouraged as it reduces the readability of the code and is prone to errors. Best practice is to avoid shadowing not only in a given contract, but also in its inheriting contracts.
The name and symbol constructor arguments shadow inherited state variables from CommunityToken in the following contracts:
ERC721WrapperERC721WrapperVotesPVFDWrapperVotes
This was not found to cause any bugs, but does inhibit the readability of the contract.
Recommendation#
Rename the constructor arguments and their usages to name_ and symbol_ in the above contracts to eliminate variable shadowing.