On Wed, Jan 22, 2025 at 07:54:27PM -0700, Nathan Chancellor wrote: > GCC changed the default C standard dialect from gnu17 to gnu23, > which should not have impacted the kernel because it explicitly requests > the gnu11 standard in the main Makefile. However, there are certain > places in the s390 code that use their own CFLAGS without a '-std=' > value, which break with this dialect change because of the kernel's own > definitions of bool, false, and true conflicting with the C23 reserved > keywords. > > include/linux/stddef.h:11:9: error: cannot use keyword 'false' as enumeration constant > 11 | false = 0, > | ^~~~~ > include/linux/stddef.h:11:9: note: 'false' is a keyword with '-std=c23' onwards > include/linux/types.h:35:33: error: 'bool' cannot be defined via 'typedef' > 35 | typedef _Bool bool; > | ^~~~ > include/linux/types.h:35:33: note: 'bool' is a keyword with '-std=c23' onwards > > Add '-std=gnu11' to the decompressor and purgatory CFLAGS to eliminate > these errors and make the C standard version of these areas match the > rest of the kernel. > > Cc: stable@xxxxxxxxxxxxxxx > Signed-off-by: Nathan Chancellor <nathan@xxxxxxxxxx> ... > --- > arch/s390/Makefile | 2 +- > arch/s390/purgatory/Makefile | 2 +- > 2 files changed, 2 insertions(+), 2 deletions(-) Applied, thanks!