From e4f29984fa6662af4f0a7dea18dc68199248ce11 Mon Sep 17 00:00:00 2001 From: "Daniel P. Berrange" Date: Mon, 9 Sep 2013 10:02:28 +0100 Subject: Import gnulib's ignore_value macro Signed-off-by: Daniel P. Berrange --- libvirt-utils.h | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/libvirt-utils.h b/libvirt-utils.h index 05c1135..a62db2b 100644 --- a/libvirt-utils.h +++ b/libvirt-utils.h @@ -43,4 +43,15 @@ #define xalloc_oversized(n, s) \ ((size_t) (sizeof (ptrdiff_t) <= sizeof (size_t) ? -1 : -2) / (s) < (n)) + +/* The __attribute__((__warn_unused_result__)) feature + is available in gcc versions 3.4 and newer, + while the typeof feature has been available since 2.7 at least. */ +#if 3 < __GNUC__ + (4 <= __GNUC_MINOR__) +# define ignore_value(x) \ + (__extension__ ({ __typeof__ (x) __x = (x); (void) __x; })) +#else +# define ignore_value(x) ((void) (x)) +#endif + #endif /* __LIBVIRT_UTILS_H__ */ -- cgit