https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113290
--- Comment #3 from Richard Biener <rguenth at gcc dot gnu.org> --- int a[77]; int bar (); void foo () { int val; #define LOOP \ val = bar (); \ for (int i = 0; i < 77; ++i) \ { \ if (a[i] == val) \ break; \ a[i]++; \ } #define LOOP10 LOOP LOOP LOOP LOOP LOOP LOOP LOOP LOOP LOOP LOOP #define LOOP100 LOOP10 LOOP10 LOOP10 LOOP10 LOOP10 LOOP10 LOOP10 LOOP10 LOOP10 LOOP10 #define LOOP1000 LOOP100 LOOP100 LOOP100 LOOP100 LOOP100 LOOP100 LOOP100 LOOP100 LOOP100 LOOP100 LOOP1000 }