Contracts should be deployed with the same compiler version and flags that they have been tested with thoroughly. Locking the pragma helps to ensure that contracts do not accidentally get deployed using, for example, an outdated compiler version that might introduce bugs that affect the contract system negatively.
Report
Low Risk
[L-01]: Zero-address checks are missing
Context:
Recommendation:
Add zero-address checks.
Non-Critical Issues
[N-01]: Unused named return variable
Context:
[N-02]: Floating Pragma
Context:
All Contracts
Recommendation:
https://swcregistry.io/docs/SWC-103
Contracts should be deployed with the same compiler version and flags that they have been tested with thoroughly. Locking the pragma helps to ensure that contracts do not accidentally get deployed using, for example, an outdated compiler version that might introduce bugs that affect the contract system negatively.
[N-03]: Public function can be external
Context:
Description:
Public functions can be declared external if they are not called by the contract.
Recommendation:
Declare these functions as external instead of public.
[N-04]: NatSpec is missing
[N-05]: NatSpec is incomplete