https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94730

--- Comment #3 from joseph at codesourcery dot com <joseph at codesourcery dot 
com> ---
I'd suspect the code in finish_decl that deals with types determined from 
array initializers ("For global variables, update the copy of the type 
that exists in the binding.") of being involved here.

                  if (b_ext->u.type && comptypes (b_ext->u.type, type))
                    b_ext->u.type = composite_type (b_ext->u.type, type);
                  else
                    b_ext->u.type = type;

If the new type isn't compatible with the existing type of the 
declaration, it should probably not be stored in b_ext->u.type.

Reply via email to