On Fri, 1 Nov 2019, Martin Sebor wrote: > Rebuilding the kernel with the updated patch results in the following > breakdown of the two warnings (the numbers are total instances of each, > unique instances, and files they come from): > > -Wzero-length-bounds 49 46 13 > -Warray-bounds 45 14 8 > > The -Warray-bounds instances I checked look legitimate even though > the code is some of them still looks benign. I'm not sure there's > a good way to relax the warning to sanction some of these abuses > without also missing some bugs. It might be worth looking into > some more in stage 3, depending on the fallout during mass rebuild. > > After bootstrapping on x86_64 and i385 and regtesting I committed > the attached patch in r277728.
It is what I believe has also broken glibc: In file included from ../sysdeps/riscv/libc-tls.c:19: ../csu/libc-tls.c: In function '__libc_setup_tls': ../csu/libc-tls.c:209:30: error: array subscript 1 is outside the bounds of an interior zero-length array 'struct dtv_slotinfo[0]' [-Werror=zero-length-bounds] 209 | static_slotinfo.si.slotinfo[1].map = main_map; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ In file included from ../sysdeps/riscv/ldsodefs.h:46, from ../sysdeps/gnu/ldsodefs.h:46, from ../sysdeps/unix/sysv/linux/ldsodefs.h:25, from ../sysdeps/unix/sysv/linux/riscv/ldsodefs.h:22, from ../csu/libc-tls.c:21, from ../sysdeps/riscv/libc-tls.c:19: ../sysdeps/generic/ldsodefs.h:423:7: note: while referencing 'slotinfo' 423 | } slotinfo[0]; | ^~~~~~~~ cc1: all warnings being treated as errors (here in a RISC-V build). Has anybody looked yet into how the breakage could possibly be addressed? Maciej