From: Roger Pau Monné Date: Fri, 29 May 2020 15:52:06 +0000 (+0200) Subject: clang: don't define nocall X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=9164e93203979755bfa8bf81a1e8e9f8125d4414;p=people%2Froyger%2Fxen.git clang: don't define nocall Clang doesn't support attribute error, and the possible equivalents like diagnose_if don't seem to work well in this case as they trigger when when the function is not called (just by being used by the APPEND_CALL macro). Define nocall to a noop on clang until a proper solution can be found. Signed-off-by: Roger Pau Monné Acked-by: Julien Grall [jb: error -> __error__] Acked-by: Jan Beulich --- diff --git a/xen/include/xen/compiler.h b/xen/include/xen/compiler.h index c22439b7a4..c0e0ee9f27 100644 --- a/xen/include/xen/compiler.h +++ b/xen/include/xen/compiler.h @@ -20,7 +20,11 @@ #define __weak __attribute__((__weak__)) -#define nocall __attribute__((error("Nonstandard ABI"))) +#if !defined(__clang__) +# define nocall __attribute__((__error__("Nonstandard ABI"))) +#else +# define nocall +#endif #if (!defined(__clang__) && (__GNUC__ == 4) && (__GNUC_MINOR__ < 5)) #define unreachable() do {} while (1)