Pointless bitwise expression
Reports pointless bitwise expressions.
Such expressions include applying the & operator to the maximum value for the given type, applying the or operator to zero, and shifting by zero. Such expressions may be the result of automated refactorings not followed through to completion and are unlikely to be originally intended.
Examples:
// Warning: operation is pointless and can be replaced with just `flags`
// 0xFFFF_FFFF is the maximum value for an integer, and both literals are treated
// as 32 bit integer literals.
int bits = flags & 0xFFFF_FFFF;
// Warning: operation is pointless and can be replaced with just `bits`
// OR-ing with 0 always outputs the other operand.
int or = bits | 0x0;
// Warning: operation is pointless, as always results in 0
int xor = or ^ or;- By ID
Can be used to locate inspection in e.g. Qodana configuration files, where you can quickly enable or disable it, or adjust its settings.
PointlessBitwiseExpression
Here you can find the description of settings available for the Pointless bitwise expression inspection, and the reference of their default values.
You can suppress this inspection by placing the following comment marker before the code fragment where you no longer want messages from this inspection to appear:
//noinspection PointlessBitwiseExpressionnote
Actual comment syntax will depend on the code language you are working with
More detailed instructions as well as other ways and options that you have can be found in the product documentation:
Inspection Details | |
|---|---|
By default bundled with: |