https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109820
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution|--- |INVALID --- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> --- This is definitely not a false positive. if (((test >> 4) & 0x15) == 0x9) a & 0x15 will never be equal to 0x9. The only bits 0x15 and 0x9 share in common is 0x1 (that is 0x9 & 0x15 is 0x1) so that above bitwise comparison will always be false and that is exactly what the compiler is warning about.