Re: [PATCH] qemu: Don't initialize struct utsname

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

 



On Mon, Jan 22, 2018 at 03:12:46PM +0100, Jiri Denemark wrote:
> On Mon, Jan 22, 2018 at 14:01:26 +0000, Daniel P. Berrange wrote:
> > On Mon, Jan 22, 2018 at 02:54:42PM +0100, Jiri Denemark wrote:
> > > It breaks the build and it is not really useful for anything.
> > 
> > Why does that break the build ?   "{ 0 }" is a valid initializer for
> > any struct according to the C standards.
> 
> Yeah, it seems -Wmissing-braces falsely reports missing braces in there.
> It worked just fine on my host, by our Jenkins builders all failed on
> it. Anyway, I didn't bother looking at details as it's easier to drop
> the initializer. And doing so makes usage of struct utsname in libvirt
> consistent.

Looks like it generates the bogus warning when the first field of the
struct is itself another struct.

eg

  struct Base {
     int a;
  }

  struct One {
     int b;
     struct base c;
  };

  struct Two {
     struct base c;
     int b;
  };


  struct One one = {0};
  struct Two two = {0};


The 'two' initializer generates a warning but the 'one' initializer
does not. So that explains why most of our {0} initalizers are working
ok at least.

Regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|

--
libvir-list mailing list
libvir-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/libvir-list



[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]
  Powered by Linux