Square Flint Grasshopper
Medium
Such as ReputationMarket.sol
it is recommend to use ReentrancyGuardUpgradeable
instead of ReentrancyGuard
and make __ReentrancyGuard_init()
in initialize
function. It is need such as ReentrancyGuard contract stores variable _status
in the state, so id new version of the contract will be have another inheritance layout it may cause of the storage collision.
In ReputationMarket.sol:36 is inheritance from ReentrancyGuard instead of ReentrancyGuardUpgradeable
No response
No response
- Admin would like to upgrade contract
- New implementation have changed inheritance layout or new contracts added to inherit before ReentrancyGuard
- Storage collision
The protocol will be broken and it may be cause of loss some data from storage
No response
No response