Expected behavior:
Remove unused state variables to save gas.
Actual behavior:
uint256 public blockTime = block.timestamp; unused.
Likelihood:
because unused variables like this are commonly left in contracts unintentionally, especially in early versions or during iterative development, and they remain unless explicitly cleaned up. It’s a frequent oversight
Impact:
Gas inefficiency and potential confusion.
blockTime is set once at deployment.
It occupies a storage slot and consumes deployment gas.
The function doNothing() does not read or update blockTime.
This shows the variable is unused but still part of the contract state.
Since blockTime is never read or updated, it serves no functional purpose.
Removing it saves gas on deployment by reducing storage slots.
It improves code clarity and reduces potential confusion for developers and auditors.
Always review and clean up unused variables during development or audits to optimize contract efficiency.
The contest is live. Earn rewards by submitting a finding.
This is your time to appeal against judgements on your submissions.
Appeals are being carefully reviewed by our judges.