https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117128
--- Comment #6 from Davide Italiano <dccitaliano at gmail dot com> --- Yet another example: int f(int* a) { int sum = *a; for (int i = 0; i < 10; i++) { if (i % 2 == 0 && (i > 3 || *a < 5)) { for (int j = 0; j < 5; j++) { if (j > 2 && sum > 0) { sum += i + j; } for (int k = 0; k < 3; k++) { if ((k * j) % 2 != 0 && i > 5) { sum -= k; } if (k > 1 && j < 4 && (sum % (i + 1)) == 0) { sum += k * j; } } } } } return sum; }