https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86871
--- Comment #4 from Sergei Trofimovich <slyfox at inbox dot ru> --- Shortened even more by removing operator overload: int b; int c; void g() { for (int f; f; f++) { int d = 0; for (int e = -1; e <= 1; e++) { int a = f + e; if (a) d = *(&c + a); } *(&b + f) = d; } }