Variables: No need to explicitly initialize variables with default values
If a variable is not set/initialized, it is assumed to have the default value (0 for uint, false for bool, address(0) for address…). Explicitly initializing it with its default value is an anti-pattern and wastes gas.
Variables: No need to explicitly initialize variables with default values
If a variable is not set/initialized, it is assumed to have the default value (0 for uint, false for bool, address(0) for address…). Explicitly initializing it with its default value is an anti-pattern and wastes gas.
Instance Includes:
UINT256:
reference/lib/ReferenceFulfillmentApplier.sol:167: uint256 nextComponentIndex = 0; reference/lib/ReferenceAmountDeriver.sol:46: uint256 extraCeiling = 0; reference/lib/ReferenceOrderCombiner.sol:464: uint256 totalFilteredExecutions = 0; reference/lib/ReferenceOrderCombiner.sol:746: uint256 totalFilteredExecutions = 0; reference/lib/ReferenceGettersAndDerivers.sol:111: uint256 i = 0; reference/lib/ReferenceBasicOrderFulfiller.sol:642: uint256 recipientCount = 0; contracts/lib/AmountDeriver.sol:44: uint256 extraCeiling = 0; contracts/lib/OrderCombiner.sol:470: uint256 totalFilteredExecutions = 0; contracts/lib/OrderCombiner.sol:751: uint256 totalFilteredExecutions = 0; test/foundry/utils/BaseOrderTest.sol:141: uint256 sum = 0; test/foundry/utils/BaseOrderTest.sol:152: uint256 sum = 0; test/foundry/utils/BaseOrderTest.sol:554: uint256 value = 0; test/foundry/FulfillAdvancedOrder.t.sol:362: uint256 value = 30;
Suggestions:
Instead of writing
One can write
I suggest removing explicit initializations for default values.