Reports bitwise mask expressions which are guaranteed to evaluate to true or false.

The inspection checks the expressions of the form (var & constant1) == constant2 or (var | constant1) == constant2, where constant1 and constant2 are incompatible bitmask constants.

Example:

  // Incompatible mask: as the mask ends in 00,
  // the result could be 0x1200 but not 0x1234
  if ((mask & 0xFF00) == 0x1234) {...}