[libvirt] Dealing with GCC 6.0

Eric Blake eblake at redhat.com
Wed Feb 24 15:25:51 UTC 2016


On 02/02/2016 03:12 AM, Richard W.M. Jones wrote:
> On Mon, Feb 01, 2016 at 03:37:07PM +0100, Martin Kletzander wrote:
>> So we recently started compiling with gcc 5 and there's a new thing now
>> and we don't build on gcc 6.  I know it's just a development build, but
>> it finds new things, like:
>>
>> fdstream.c: In function 'virFDStreamWrite':
>> fdstream.c:390:29: error: logical 'or' of equal expressions [-Werror=logical-op]
>>         if (errno == EAGAIN || errno == EWOULDBLOCK) {
>>                             ^~
>> fdstream.c: In function 'virFDStreamRead':
>> fdstream.c:440:29: error: logical 'or' of equal expressions [-Werror=logical-op]
>>         if (errno == EAGAIN || errno == EWOULDBLOCK) {
>>                             ^~
> 
> FWIW this was fixed in libguestfs by rewriting the expression as:
> 
> +      if (errno == EWOULDBLOCK ||
> +          (EWOULDBLOCK != EAGAIN && errno == EAGAIN))

Yep, this works. I'll probably push something like this under the
build-breaker rule, so that our pending release builds out of the box on
current rawhide.

I'm also seeing failures on rawhide due to the wireshark problems
(should be fixed within 24 hours once
http://koji.fedoraproject.org/koji/taskinfo?taskID=13106963 lands) and
due to this:

../../tests/securityselinuxhelper.c:307:24: error: conflicting types for
'selabel_open'
 struct selabel_handle *selabel_open(unsigned int backend,
                        ^~~~~~~~~~~~
In file included from ../../tests/securityselinuxhelper.c:32:0:
/usr/include/selinux/label.h:73:24: note: previous declaration of
'selabel_open' was here
 struct selabel_handle *selabel_open(unsigned int backend,
                        ^~~~~~~~~~~~

which doesn't say which parameter type changed in the latest selinux
headers, but also something we'll want to patch sooner rather than later.


-- 
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/20160224/b148c5c5/attachment-0001.sig>


More information about the libvir-list mailing list