Re: [PATCH] unpack-objects: fix compilation warning/error due to missing braces

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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



[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux