https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69161
--- Comment #9 from ktkachov at gcc dot gnu.org --- You're right, thanks. char a; int b, c, d, e; void foo (void) { int f; for (f = 0; f <= 4; f++) { for (d = 0; d < 20; d++) { long g = &c; b &= (0 != g) > e; } e &= a; } } Replacing the "long g = &c;" with "int g = &c;" unfortunately doesn't reproduce the ICE