On Thu, Dec 10, 2020 at 6:14 PM <marcandre.lureau@redhat.com> wrote:
> From: Marc-André Lureau <marcandre.lureau@redhat.com>
>
> QEMU requires Clang or GCC, that define and support __GNUC__ extensions.
>
> Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
> ---
> include/qemu/compiler.h | 8 +-------
> 1 file changed, 1 insertion(+), 7 deletions(-)
>
> diff --git a/include/qemu/compiler.h b/include/qemu/compiler.h
> index 6212295e52..5e6cf2c8e8 100644
> --- a/include/qemu/compiler.h
> +++ b/include/qemu/compiler.h
> @@ -64,14 +64,10 @@
> (offsetof(container, field) + sizeof_field(container, field))
>
> /* Convert from a base type to a parent type, with compile time
> checking. */
> -#ifdef __GNUC__
> #define DO_UPCAST(type, field, dev) ( __extension__ ( { \
> char __attribute__((unused)) offset_must_be_zero[ \
> -offsetof(type, field)]; \
> container_of(dev, type, field);}))
> -#else
> -#define DO_UPCAST(type, field, dev) container_of(dev, type, field)
> -#endif
>
> #define typeof_field(type, field) typeof(((type *)0)->field)
> #define type_check(t1,t2) ((t1*)0 - (t2*)0)
> @@ -102,7 +98,7 @@
> #if defined(__clang__)
> /* clang doesn't support gnu_printf, so use printf. */
> # define GCC_FMT_ATTR(n, m) __attribute__((format(printf, n, m)))
> -#elif defined(__GNUC__)
> +#else
> /* Use gnu_printf (qemu uses standard format strings). */
> # define GCC_FMT_ATTR(n, m) __attribute__((format(gnu_printf, n, m)))
> # if defined(_WIN32)
> @@ -112,8 +108,6 @@
> */
> # define __printf__ __gnu_printf__
> # endif
> -#else
> -#define GCC_FMT_ATTR(n, m)
> #endif
>
> #ifndef __has_warning
> --
> 2.29.0
>
>
>
Peter, Paolo, anyone to give a review?
thanks
--
Marc-André Lureau