On Thu, Oct 6, 2022 at 5:25 PM René Scharfe <l.s.r@xxxxxx> wrote: > Am 06.10.22 um 21:43 schrieb Jeff Hostetler via GitGitGadget: > > Add extra set of braces around zero initialization of two array/structure > > variables to resolve compiler errors/warnings from clang 11.0.0 on MacOS. > > This is not needed on clang 14.0. > > Not sure how the Apple version numbers map to LLVM versions. I can > reproduce it with Godbolt's Compiler Explorer with clang 8, but not > with clang 9 or higher: https://godbolt.org/z/f7f7s9xxz > > > builtin/merge-file.c:29:23: error: suggest braces around initialization \ > > of subobject [-Werror,-Wmissing-braces] > > mmfile_t mmfs[3] = { 0 }; > > ^ > > {} > > {0} is an idiom to zero-initialize any struct, no matter how deeply > nested. It's valid C and the compiler warning about it is not helpful. > Shouldn't we rather silence it with -Wno-missing-braces? That was indeed Ævar's suggestion in [1]: Since this is only a warning, and only a practical issue with -Werror I wonder if a config.mak.dev change wouldn't be better, i.e. to provide a -Wno-missing-braces for this older clang version. The problem is that Apple seems to invent their version numbers out of thin air with no relation to reality[2,3], so it may take some effort to work out suitable "version mapping rules" for config.mak.dev, and nobody has done it yet. [1]: https://lore.kernel.org/git/220712.86lesy6cri.gmgdl@xxxxxxxxxxxxxxxxxxx/ [2]: https://lore.kernel.org/git/Ys0hhYjPExuNWynE@xxxxxxxxxxxxxxxxxxxxxxx/ [3]: https://lore.kernel.org/git/YQ2LdvwEnZN9LUQn@xxxxxxxxxxxxxxxxxxxxxxx/