RS.CLIPPY.INEFFECTIVE_BIT_MASK
Expressions where a bit mask will be rendered useless by a comparison, e.g., `(x | 1) > 2`
This checker is a Clippy lint created by The Rust Project Contributors. The documentation shown here is a copy of the original documentation for: ineffective_bit_mask. Copyright ©2025 The Rust Team. All rights reserved.
What it does
Checks for bit masks in comparisons which can be removed without changing the outcome. The basic structure can be seen in the following table:
| Comparison | Bit Op | Example | equals |
|---|---|---|---|
> / <= |
| / ^ |
x | 2 > 3
|
x > 3
|
< / >= |
| / ^ |
x ^ 1 < 4
|
x < 4
|
Why is this bad?
Not equally evil as bad_bit_mask,
but still a bit misleading, because the bit mask is ineffective.
Known problems
False negatives: This lint will only match instances
where we have figured out the math (which is for a power-of-two compared
value). This means things like x | 1 >= 7 (which would be better written
as x >= 6) will not be reported (but bit masks like this are fairly
uncommon).
Example
if (x | 1 > 3) { }
Use instead:
if (x >= 2) { }