https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64485
--- Comment #1 from Zhendong Su <su at cs dot ucdavis.edu> --- The following (somewhat simpler) test case triggers the same ICE: --------------------- int a, b, c; int fn1 () { return a || b; } static void fn2 (int p) { if (p) c = fn1 (); for (;;) ; } void fn3 () { fn2 (1); }