GCC 4.8 now warns about typedefs that are local to a scope and not used anywhere within that scope. This produces spurious warnings with the STATIC_ASSERT() macro (which uses a typedef to provoke a compile error in the event of an assertion failure).
This patch avoids the warning using the GCC __attribute__((unused)) syntax. --- src/mesa/main/compiler.h | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/mesa/main/compiler.h b/src/mesa/main/compiler.h index 8b23665..ddeb61d 100644 --- a/src/mesa/main/compiler.h +++ b/src/mesa/main/compiler.h @@ -249,6 +249,12 @@ static INLINE GLuint CPU_TO_LE32(GLuint x) #endif +#if (__GNUC__ >= 3) +#define GCC_ATTRIBUTE_UNUSED __attribute__((unused)) +#else +#define GCC_ATTRIBUTE_UNUSED +#endif + /** * Static (compile-time) assertion. * Basically, use COND to dimension an array. If COND is false/zero the @@ -256,7 +262,7 @@ static INLINE GLuint CPU_TO_LE32(GLuint x) */ #define STATIC_ASSERT(COND) \ do { \ - typedef int static_assertion_failed[(!!(COND))*2-1]; \ + typedef int static_assertion_failed[(!!(COND))*2-1] GCC_ATTRIBUTE_UNUSED; \ } while (0) -- 1.8.2 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev