https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65240
--- Comment #5 from Matthias Klose <doko at gcc dot gnu.org> --- reduced test case for filters.i: double a, b, d, e; c, f, g; double fn1() { double t; if (t < 0.0) t = -t; if (t < 1.0) return 1.0 - t; t = -t; if (t < .5) return t * t; } double fn2(double p1) { if (p1 < 1) b = p1 * p1 / 3.0; if (p1) return 6.0 * p1 * p1; } double fn3(double p1) { if (c == 0) fn4(); else if (c == 2) return fn1(); else if (c == 5) return fn2(p1); else if (c == 3) { d = p1 * p1; return d; } } fn5() { double h, j; int k = f, i; h = a; i = 0; for (; i < k; i++) { g = 0; for (; g < k;) { e = ((i + 1.0) / k - 1.0) * h; j = (2.0 * g - 1.0) * fn3(e) * fn3(j); } } }