On Sun, Jul 10, 2022 at 4:12 PM Eric Sunshine <sunshine@xxxxxxxxxxxxxx> wrote: > > On macOS High Sierra (10.13), Apple's `clang`[1] complains about missing > braces around initialization of a subobject, which is problematic when > building with `DEVELOPER=YesPlease` which enables `-Werror`: > > builtin/unpack-objects.c:388:26: error: suggest braces around > initialization of subobject [-Werror,-Wmissing-braces] > git_zstream zstream = { 0 }; > > [1]: `cc --version` => "Apple LLVM version 10.0.0 (clang-1000.10.44.4)" > > Signed-off-by: Eric Sunshine <sunshine@xxxxxxxxxxxxxx> > --- > > Notes: > This is atop 'hx/unpack-streaming' which is already in 'next'. > All the CI builds are fine with this change. > > As I understand it, this should be a safe change; the fields which > follow `z_stream z` in `git_zstream` will be initialized to zero > since the first field has an explicit initializer. > > builtin/unpack-objects.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/builtin/unpack-objects.c b/builtin/unpack-objects.c > index 43789b8ef2..c606c92e37 100644 > --- a/builtin/unpack-objects.c > +++ b/builtin/unpack-objects.c > @@ -385,7 +385,7 @@ static const void *feed_input_zstream(struct input_stream *in_stream, > > static void stream_blob(unsigned long size, unsigned nr) > { > - git_zstream zstream = { 0 }; > + git_zstream zstream = {{ 0 }}; > struct input_zstream_data data = { 0 }; > struct input_stream in_stream = { > .read = feed_input_zstream, > -- > 2.37.0.236.gcef32db0b6.dirty > Not a comment, just wondering, when should I use "{ { 0 } }" and when should I use "{ 0 }"? I didn't get the error with "Apple clang version 13.0.0 (clang-1300.0.29.30)", because it's a higher version ? Thanks. -Han Xin