On Thu, Jun 22, 2023 at 05:43:57PM -0600, Gustavo A. R. Silva wrote: > Zero-length arrays are deprecated, and we are replacing them with flexible > array members instead. So, replace zero-length array with flexible-array > member in struct memmap. > > Address the following warning found after building (with GCC-13) mips64 > with decstation_64_defconfig: > In function 'rex_setup_memory_region', > inlined from 'prom_meminit' at arch/mips/dec/prom/memory.c:91:3: > arch/mips/dec/prom/memory.c:72:31: error: array subscript i is outside array bounds of 'unsigned char[0]' [-Werror=array-bounds=] > 72 | if (bm->bitmap[i] == 0xff) > | ~~~~~~~~~~^~~ > In file included from arch/mips/dec/prom/memory.c:16: > ./arch/mips/include/asm/dec/prom.h: In function 'prom_meminit': > ./arch/mips/include/asm/dec/prom.h:73:23: note: while referencing 'bitmap' > 73 | unsigned char bitmap[0]; > > This helps with the ongoing efforts to globally enable -Warray-bounds. > > This results in no differences in binary output. > > Link: https://github.com/KSPP/linux/issues/79 > Link: https://github.com/KSPP/linux/issues/323 > Signed-off-by: Gustavo A. R. Silva <gustavoars@xxxxxxxxxx> > --- > arch/mips/include/asm/dec/prom.h | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/arch/mips/include/asm/dec/prom.h b/arch/mips/include/asm/dec/prom.h > index 1e1247add1cf..908e96e3a311 100644 > --- a/arch/mips/include/asm/dec/prom.h > +++ b/arch/mips/include/asm/dec/prom.h > @@ -70,7 +70,7 @@ static inline bool prom_is_rex(u32 magic) > */ > typedef struct { > int pagesize; > - unsigned char bitmap[0]; > + unsigned char bitmap[]; > } memmap; > > > -- > 2.34.1 applied to mips-next. Thomas. -- Crap can work. Given enough thrust pigs will fly, but it's not necessarily a good idea. [ RFC1925, 2.3 ]