Hallo, just upgraded my crossgcc-toolchain to gcc-1-14-0. Given this code snippet: #define MG 32 static unsigned char a[MG] = {0}; void init_login (void) { int i; for (i=0; i<MG; i++) { a[i] = 1; } } IMHO, this code should not access index 32 of the array, because the for loop should terminate. Thus, following warning is completely unexpected to me: m68k-unknown-elf-gcc -ansi -pedantic -Wall -Wcast-align -Wstrict-prototypes -Wmissing-prototypes -std=c99 -Wnull-dereference -g -O3 -fno-toplevel-reorder -mcpu32 -ffreestanding -c -o login.o login.c login.c: In function 'init_login': login.c:2909:22: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 2909 | a[i] = 1; | ~~~~~^~~ login.c:2899:22: note: at offset 32 into destination object 'a' of size 32 2899 | static unsigned char a[MG] = {0}; | ^ Opinions? -- Josef Wolf jw@xxxxxxxxxxxxx