Omniscia Alliance Block Audit

Treasury Code Style Findings

Treasury Code Style Findings

TRE-01C: Variable Mutability Specifier

TypeSeverityLocation
Gas OptimizationInformationalTreasury.sol:L18, L21, L26, L27

Description:

The linked variables are only assigned to once during the constructor of the contract.

Example:

contracts/V2/Treasury.sol
23constructor(address _uniswapRouter, address _externalRewardToken) public {
24 require(_uniswapRouter != address(0x0), "Treasury:: Uniswap router cannot be 0");
25 require(_externalRewardToken != address(0x0), "Treasury:: External reward token not set");
26 uniswapRouter = IUniswapV2Router(_uniswapRouter);
27 externalRewardToken = _externalRewardToken;
28}

Recommendation:

As a result, we advise the immutable mutability specifier to be introduced to them greatly optimizing the gas cost involved in interacting with them.

Alleviation:

The linked variables were properly set to immutable greatly optimizing all segments they are utilized in.