https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71433
--- Comment #1 from Vincent Lefèvre <vincent-gcc at vinc17 dot net> --- Here's a simple test case: int t[1]; int fct (long e) { int d = 0, i, n = 52; if (e < 0) n += e; for (i = 1 ; i < n / 64 + 1 ; i++) d = t[i]; return d; } If I replace "long" by "int" in the second line, I no longer get any warning.