bool public override auctionOngoing;
uint256 public override auctionStart;
bool public override hasBonded;
uint256 public override bondAmount;
uint256 public override bondTimestamp;
uint256 public override bondBlock;
IBasket public override basket;
IFactory public override factory;
address public override auctionBonder;
Bounty[] private _bounties;
bool public override initialized;
Boolean variables auctionOngoing, hasBonded, initialized can be packed into a single slot
and save storage space.
Tools Used
Manual Analysis
Recommended Mitigation Steps
Pack the boolean variables into a single storage slot.
Handle
saian
Vulnerability details
Impact
Re-order storage variables to save gas
Proof of Concept
Auction.sol (Lines: 16 - 29)
Boolean variables auctionOngoing, hasBonded, initialized can be packed into a single slot and save storage space.
Tools Used
Manual Analysis
Recommended Mitigation Steps
Pack the boolean variables into a single storage slot.