qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH] pixman: remove -Wredundand-decls


From: Peter Maydell
Subject: Re: [Qemu-devel] [PATCH] pixman: remove -Wredundand-decls
Date: Mon, 15 Apr 2013 08:30:54 +0100

On 15 April 2013 08:26, Alexey Kardashevskiy <address@hidden> wrote:
> On 04/15/2013 05:18 PM, Peter Maydell wrote:
>>
>> On 15 April 2013 03:31, Alexey Kardashevskiy <address@hidden> wrote:
>>>
>>> The assert.h header file from Fedora18 does not have #ifdef-#endif
>>> brackets around __assertXXXX function so it cannot compile with
>>> the -Wredundant-decls switch on.
>>>
>>> Some Linux distributions (such as Debian Wheezy) still do have those
>>> brackets arounb __assertXXXX functions (#ifndef _ASSERT_H_DECLS) but
>>> the version of assert.h on http://sourceware.org/git/?p=glibc.git does
>>> not
>>> so we should not be using -Wredundant-decls.
>>>
>>> The patch removes it.
>>
>>
>> This commit message seems to be missing any mention of
>> which versions of pixman this change breaks and why
>> it's OK now to break compiling against them...
>
>
>
> The change does not _break_ anything.

The change breaks the fix that the code was put in to deal with,
ie that pixman-0.16's header files generate warnings, which the
default development qemu will turn into errors with -Werror, which
means we won't compile.

> The second removed chunk in the patch is the problem as it:
> 1) enables -Wredundant-decls even if it was not enabled before;
> 2) makes -Wredundant-decls an error, not just a warning.

This is because not all versions of gcc have the push/pop warning
pragma.

> Default assert.h shipped with Fedora Core 18 (pretty recent and popular
> distribution, I would say) cannot compile with -Wredundant-decls as an error

This appears to be a bug in Fedora.

I guess the correct workaround for that bug is going to be either:

 * wrap assert.h the same way we wrap pixman.h
 * drop -Wredundant-decls :-(

-- PMM



reply via email to

[Prev in Thread] Current Thread [Next in Thread]