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 usingsedor the like. - Declare the array
externin 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_holderand{0}will then be initialisingposition_holder.barwhich is fine and the warning goes away.