qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH] linux-user: Suppress address-of-packed-member w


From: Peter Maydell
Subject: Re: [Qemu-devel] [PATCH] linux-user: Suppress address-of-packed-member warnings in __get/put_user_e
Date: Fri, 5 Oct 2018 10:10:50 +0100

On 5 October 2018 at 01:28, Laurent Vivier <address@hidden> wrote:
> I have the following error when building on Fedora 28 and gcc (GCC)
> 8.1.1 20180712 (Red Hat 8.1.1-5)
>
>   CC      aarch64_be-linux-user/target/arm/arm-semi.o
> .../target/arm/arm-semi.c: In function ‘do_arm_semihosting’:
> .../target/arm/arm-semi.c:270:1: error: unknown option after ‘#pragma
> GCC diagnostic’ kind [-Werror=pragmas]
>
> Perhaps you should use a "#if defined(__clang__)" to apply your fix only
> to clang?

I did test on gcc, but not that version. The point of the
   _Pragma("GCC diagnostic ignored \"-Wpragmas\"");
line is to suppress that error (which it does on my gcc 5)
so I don't know why your gcc is complaining :-(

If you add an extra diagnostic push, so:

+        _Pragma("GCC diagnostic push");                                     \
+        _Pragma("GCC diagnostic ignored \"-Wpragmas\"");                    \
+        _Pragma("GCC diagnostic push");                                     \
+        _Pragma("GCC diagnostic ignored \"-Waddress-of-packed-member\"");   \

and then a balancing extra

+        _Pragma("GCC diagnostic pop");                                      \

at the end, I don't suppose that helps?

(I generally prefer to avoid marking things as clang- or gcc-
specific where I can.)

thanks
-- PMM



reply via email to

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