[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [RFC PATCH] configure: Fix atomic64 test for --enable-werror on macO
From: |
Thomas Huth |
Subject: |
Re: [RFC PATCH] configure: Fix atomic64 test for --enable-werror on macOS |
Date: |
Thu, 16 Jul 2020 16:29:31 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.9.0 |
On 16/07/2020 16.25, Daniel P. Berrangé wrote:
> On Thu, Jul 16, 2020 at 03:11:01PM +0200, Thomas Huth wrote:
>> When using --enable-werror for the macOS builders in the Cirrus-CI,
>> the atomic64 test is currently failing, and config.log shows a bunch
>> of error messages like this:
>>
>> config-temp/qemu-conf.c:6:7: error: implicit declaration of function
>> '__atomic_load_8' is invalid in C99
>> [-Werror,-Wimplicit-function-declaration]
>> y = __atomic_load_8(&x, 0);
>> ^
>> config-temp/qemu-conf.c:6:7: error: this function declaration is not a
>> prototype [-Werror,-Wstrict-prototypes]
>>
>> Suppress the warnings to make it pass.
>>
>> Signed-off-by: Thomas Huth <thuth@redhat.com>
>> ---
>> Not sure whether this is the best way to fix this issue ... thus marked
>> as RFC.
>> Even though the compiler warns here, the program links apparently just
>> fine afterwards and CONFIG_ATOMIC64=y gets set in the config-host.mak
>> file on macOS, so the 64-bit atomic operations seem to be available...
>> Any macOS users here who could shed some light on this?
>
> The error message refers to c99, but QEMU code standard is gnu99.
>
> It doesn't look like we set std=gnu99 when running configure
> tests though, and I wonder if that is relevant in this case,
> given that the atomic_load* stuff is all compiler built-in.
> eg does -std=gnu99 have any impact on the warnings ?
I've dumped the config.log from a macOS run here:
https://cirrus-ci.com/task/4569461585870848?command=main#L1295
Looks like -std=gnu99 is used for the test already.
Thomas