> 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 >