Yes, this appears to be related to GCC bug 53119. It goes away if you change the C declaration to {{0}}
. Your options are:
- Ignore the warning.
- Manipulate the C code after generation to have
{{0}}
instead of{0}
on that line usingsed
or the like. - Declare the array
extern
in Vala, and write the C definition elsewhere. (The permanent version of #2.) - Do something like
struct foo { int bar; Position positions[8]; } static foo position_holder
and{0}
will then be initialisingposition_holder.bar
which is fine and the warning goes away.