[libvirt] [PATCH] bhyve: fix build with gcc48

Eric Blake eblake at redhat.com
Sat May 23 22:04:30 UTC 2015

On 05/23/2015 02:45 PM, Martin Kletzander wrote:
> On Sat, May 23, 2015 at 08:05:23PM +0300, Roman Bogorodskiy wrote:
>> Build with gcc 4.8 fails with:

Arguably a bug in gcc; but since we can work around it without too much
pain, we should.

>> bhyve/bhyve_monitor.c: In function 'bhyveMonitorIO':

>> bhyveMonitorIO(int watch, int kq, int events ATTRIBUTE_UNUSED, void
>> *opaque)
>> {
>> -    const struct timespec zerowait = {};
>> +    const struct timespec zerowait = { 0, 0 };

Would also be sufficient to do 'zerowait = { 0 };' - any C compiler that
warns about an initializer of { 0 } is broken, because that is THE
idiomatic way to zero-initialize anything (scalar or structure)
according to C99.

> You "need" to set at least minimum one field, all others will be set
> to 0.  But this is of course very right thing to do.
> ACK, structures shouldn't be initialized this way.

Go ahead and push as you have it, though, with two members, since we
know struct timespec has (at least) two members.

Eric Blake   eblake redhat com    +1-919-301-3266
Libvirt virtualization library http://libvirt.org

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 604 bytes
Desc: OpenPGP digital signature
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20150523/aef4cb83/attachment-0001.sig>

More information about the libvir-list mailing list