[Intel-gfx] [PATCH i-g-t] lib/igt_aux.h: Cast is confusing old gcc

Rodrigo Vivi rodrigo.vivi at intel.com
Tue Nov 29 20:06:31 UTC 2016


I noticed in some machines igt compilation was breaking
after igt_dummyload was introduced.

I don't know exactly why, but it seems this cast seems to let
old gcc a bit confused. Without the cast everything works
properly.

Compilation Error log:
  CC       igt_dummyload.lo
In file included from igt.h:30:0,
                 from igt_dummyload.c:25:
igt_aux.h:288:39: error: initializer element is not constant
 #define __IGT_INIT_LIST(name) (struct igt_list){ &(name), &(name) }
                                       ^
igt_aux.h:289:47: note: in expansion of macro ‘__IGT_INIT_LIST’
 #define IGT_LIST(name) struct igt_list name = __IGT_INIT_LIST(name);
                                               ^
igt_dummyload.c:50:8: note: in expansion of macro ‘IGT_LIST’
 static IGT_LIST(spin_list);
        ^
make[4]: *** [igt_dummyload.lo] Error 1

Cc: Abdiel Janulgue <abdiel.janulgue at linux.intel.com>
Signed-off-by: Rodrigo Vivi <rodrigo.vivi at intel.com>
---
 lib/igt_aux.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lib/igt_aux.h b/lib/igt_aux.h
index 177bd1d..6989448 100644
--- a/lib/igt_aux.h
+++ b/lib/igt_aux.h
@@ -285,7 +285,7 @@ struct igt_list {
 	struct igt_list *next;
 };
 
-#define __IGT_INIT_LIST(name) (struct igt_list){ &(name), &(name) }
+#define __IGT_INIT_LIST(name) { &(name), &(name) }
 #define IGT_LIST(name) struct igt_list name = __IGT_INIT_LIST(name);
 
 static inline void igt_list_init(struct igt_list *list)
-- 
1.9.1



More information about the Intel-gfx mailing list