Omniscia Olympus DAO Audit
OlympusERC20 Code Style Findings
OlympusERC20 Code Style Findings
OER-01C: Incorrect Function Visibility
Type | Severity | Location |
---|---|---|
Code Style | Informational | OlympusERC20.sol:L34 |
Description:
The _burnFrom
function is incorrectly available externally by its public
modifier.
Example:
contracts/OlympusERC20.sol
30function burnFrom(address account_, uint256 amount_) public virtual {31 _burnFrom(account_, amount_);32}33
34function _burnFrom(address account_, uint256 amount_) public virtual {35 uint256 decreasedAllowance_ =36 allowance(account_, msg.sender).sub(37 amount_,38 "ERC20: burn amount exceeds allowance"39 );40
41 _approve(account_, msg.sender, decreasedAllowance_);42 _burn(account_, amount_);43}
Recommendation:
We advise it to be set to internal
to properly illustrate its purpose and avoid potential circumventions of the burnFrom
function in the future.
Alleviation:
The visibility specifier of the _burnFrom
function was adjusted according to our recommendation.