https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59124
baoshan <pangbw at gmail dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |pangbw at gmail dot com --- Comment #18 from baoshan <pangbw at gmail dot com> --- I see this issue on 5.2.0 too: cat test.c unsigned baz[6]; void test(unsigned *bar, unsigned n) { unsigned i, j; if (n > 6) { n = 6; } for (i = 1; i < n; i++) { for (j = i - 1; j > 0; j--) { bar[j - 1] = baz[j - 1]; } } } bpg@ala-bpg-lx1$./cross/bin/arm-linux-gnueabi-gcc -c -Wall -O3 test.c test.c: In function ‘test’: test.c:9:32: warning: array subscript is above array bounds [-Warray-bounds] bar[j - 1] = baz[j - 1]; ^ test.c:9:32: warning: array subscript is above array bounds [-Warray-bounds] bpg@ala-bpg-lx1$./cross/bin/arm-linux-gnueabi-gcc -v Using built-in specs. COLLECT_GCC=./cross/bin/arm-linux-gnueabi-gcc COLLECT_LTO_WRAPPER=/net/ala-rsu-lx1/ala-rsu-lx11/bpg/SHARE/GCC520/X_520/cross/libexec/gcc/arm-linux-gnueabi/5.2.0/lto-wrapper Target: arm-linux-gnueabi Configured with: ../gcc-5.2.0/configure --prefix=/net/ala-rsu-lx1/ala-rsu-lx11/bpg/SHARE/GCC520/X_520/cross --target=arm-linux-gnueabi --enable-languages=c,c++ --d\ isable-multilib Thread model: posix gcc version 5.2.0 (GCC)