From: Søren Sandmann Pedersen <s...@redhat.com>

Apparently GCC 4.5 still warns about "value computed not used" even
with __attribute__((unused)). Fix this by only doing the compile time
check on gcc > 4.5.

Signed-off-by: Soren Sandmann <s...@redhat.com>
---

I need this patch to get qemu to compile with GCC 4.5, but I'm not
sure if 4.5 is the right compiler version to check against.

 osdep.h |    5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/osdep.h b/osdep.h
index cb213e0..df89552 100644
--- a/osdep.h
+++ b/osdep.h
@@ -41,8 +41,9 @@ typedef signed int              int_fast16_t;
 #endif
 
 /* Convert from a base type to a parent type, with compile time checking.  */
-#ifdef __GNUC__
-#define DO_UPCAST(type, field, dev) ( __extension__ ( { \
+#if defined (__GNUC__) && \
+    (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ > 5))
+#define DO_UPCAST(type, field, dev) ( __extension__ ( {        \
     char __attribute__((unused)) offset_must_be_zero[ \
         -offsetof(type, field)]; \
     container_of(dev, type, field);}))
-- 
1.7.4


Reply via email to