Solidity Bug Info

Bug Name Description Severity
MissingSideEffectsOnSelectorAccess
Accessing the ``.selector`` member on complex expressions leaves the expression unevaluated in the legacy code generation.
When accessing the ``.selector`` member on an expression with side-effects, like an assignment, a function call or a conditional, the expression would not be evaluated in the legacy code generation. This would happen in expressions where the functions used in the expression were all known at compilation time, regardless of whether the whole expression could be evaluated at compilation time or not. Note that the code generated by the IR pipeline was unaffected and would behave as expected.

- Link: https://blog.soliditylang.org/2023/07/19/missing-side-effects-on-selector-access-bug/
- First Introduced: 0.6.2
- Fixed in Version: 0.8.21
- Published:
- Severity<: low

low