[Intel-gfx] [PATCH i-g-t] lib/igt_aux.h: Cast is confusing old gcc
Abdiel Janulgue
abdiel.janulgue at linux.intel.com
Wed Nov 30 08:35:49 UTC 2016
On 11/29/2016 10:06 PM, Rodrigo Vivi wrote:
> 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.
Thanks, this is how kernel's LIST_HEAD_INIT looks like anyway
Reviewed-by: Abdiel Janulgue <abdiel.janulgue at linux.intel.com>
>
> 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)
>
More information about the Intel-gfx
mailing list