https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69161
--- Comment #12 from ktkachov at gcc dot gnu.org --- (In reply to Jakub Jelinek from comment #11) > And __INTPTR_TYPE__ g = (__INTPTR_TYPE__) &g; ? You mean (__INTPTR_TYPE__) &c; ? It ICEs as well: char a; int b, c, d, e; void foo (void) { int f; for (f = 0; f <= 4; f++) { for (d = 0; d < 20; d++) { __INTPTR_TYPE__ g = (__INTPTR_TYPE__) &c; b &= (0 != g) > e; } e &= a; } }