Re: [PATCH] unpack-objects: fix compilation warning/error due to missing braces
- From
- Han Xin <chiyutianyi@gmail.com>
- Date
- Jul 11, 2022, 02:00 UTC
- Message-ID
- <CAO0brD0PBXDqe2HDdjg1ZhXWoYZihQ0=SY80UR+Cy3xRqqH8Sg@mail.gmail.com>
- In-Reply-To
- <20220710081135.74964-1-sunshine@sunshineco.com>
On Sun, Jul 10, 2022 at 4:12 PM Eric Sunshine <sunshine@sunshineco.com> wrote:
Show 41 quoted lines
>
> 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@sunshineco.com>
> ---
>
> 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