Omniscia Gnosis Guild Audit
Integrity Static Analysis Findings
Integrity Static Analysis Findings
IYT-01S: Data Location Optimization
Type | Severity | Location |
---|---|---|
Gas Optimization | ![]() | Integrity.sol:L31 |
Description:
The linked input argument is set as memory
in an external
function.
Example:
packages/evm/contracts/Integrity.sol
31function enforce(ConditionFlat[] memory conditions) external pure {
Recommendation:
We advise it to be set as calldata
optimizing its read-access gas cost. In order for the optimization to lead to a gas reduction, the code would need to be refactored to adapt to the new calldata
type argument (i.e. the Integrity::_content
function would also need to accept a calldata
argument).
Alleviation:
The Gnosis Guild team has opted to not apply this optimization to the codebase to retain the present code's legibility.