On Fri, Jul 10, 2020 at 02:00:34PM +0300, Kirill A. Shutemov wrote: > On Fri, Jul 10, 2020 at 12:09:36PM +0200, Arnd Bergmann wrote: > > I forgot why we care though -- is there any behavior of gnu11 > > that we prefer over the gnu99 behavior, or is it just going with > > the times because it's the right thing to do? All the interesting > > features of c11 seem to also be available as extensions in > > gcc-4.9's gnu89, though I could not find a definite list of the > > differences. > > Last time (llist_entry_safe() thread) it came up due to local variables in > loops feature that is not available for gnu89. Both gnu99 and gnu11 is > fine. Same for anonymous structs/unions. I used to have a use case for that in struct efi_dev_path in include/linux/efi.h, but Ard refactored it in a gnu89-compatible way for v5.7 with db8952e7094f. (BTW, revisiting that commit I think it should have been broken into smaller pieces, in particular the efi_get_device_by_path() argument and #ifdef change should have gone into a separate commit.) Thanks, Lukas