报告无意义的按位表达式。

此类表达式包括对给定类型的最大值应用 & 运算符,对零以及移零应用 or 运算符。 出现此类表达式,可能是因为自动重构没有一直持续到完成,而且不太可能是出于原本的意图。

示例:


  // 警告:运算毫无意义,可以替换为 `flags`
  // 0xFFFF_FFFF 是一个整数的最大值,并且这两个文字都被视为
  // 32 位整数文字。
  int bits = flags & 0xFFFF_FFFF;

  // 警告:运算毫无意义,可以替换为 `bits`
  // 包含 0 的 OR 运算始终输出另一个操作数。
  int or = bits | 0x0;

  // 警告:运算毫无意义,结果始终为 0
  int xor = or ^ or;