> You probably can't. But check what the C frontend ends up producing with
>
> Struct x { const struct x *p; };
>
> Doesn't it use an incomplete copy during the definition of x?
I was poking around this last week with the type identification. C frontend
seems
always make the type complete by copying the fields in c-decl.c:finish_struct.
I tried to add check that types are complete when main variant is and learnt
that
C++ FE seems in some cases leave the type incomplete even if main variant is
complete
but not in such a simple cases. I will look into it a bit more after arrival -
but
that is my recollection. The finish_builtin_struct was only case where we set
DECL_SIZE but not DECL_FIELDS
Honza
>
> Richard.
>
> >Thanks,
> >Honza
>