> > 
> > I am not sure if TYPE_MAIN_VARIANT is really needed here.  What I know is 
> > that
> > complete types may have incomplete variants.
> 
> How can that be?  TYPE_FIELDS is shared across variants and all variants
> should be layed out.

Because TYPE_FILEDS are not always shared across variants.  For example
gfc_nonrestricted_type builds variants of types that have their own TYPE_FIELDS
lists whose types are variants of the original TYPE_FIELDs.  C++ FE used to do
the same for member pointers, but I noticed that last stage1 with early version
of type verifier and as far as I can remember Jason changed that.

Honza

Reply via email to