https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120295
--- Comment #2 from mcccs at gmx dot com --- Cleaned up: struct { signed a; } b; int a, f, j, l; char c, k, g, e; short d[2] = {0}; int *i = &j; void marker_37() { a++; __builtin_printf("%d\n", a); } unsigned long long m(unsigned, char, unsigned, short); int n(unsigned char, long long, int); int o(unsigned, long long, unsigned); unsigned short p(void) { int *r = &l; *r |= ({ long long y = (m(c, c, 0, c), b.a); y; }); return 0; } unsigned long long m(unsigned q, char v, unsigned s, short u) { unsigned short ab = 5; if (n(ab, d[1], q)) for (; g; g++) ; return c; } int n(unsigned char e, long long ae, int af) { unsigned ag = 4; int *ah = &f; *ah = ({ short ad = o(f, af, ag); ad<0 || ad> e; }); return *i; } int o(unsigned ai, long long aj, unsigned ak) { for (; e; e--) { int *al = &f; for (; k; k++) *al = 0; } if (18446744073709551606UL != (unsigned long long) aj) ; else marker_37(); return ak; } int main() { c = 0xf6; p(); return 0; }