https://gcc.gnu.org/bugzilla/show_bug.cgi?id=72740
--- Comment #2 from rguenther at suse dot de <rguenther at suse dot de> --- On Wed, 10 Aug 2016, ebotcazou at gcc dot gnu.org wrote: > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=72740 > > Eric Botcazou <ebotcazou at gcc dot gnu.org> changed: > > What |Removed |Added > ---------------------------------------------------------------------------- > Status|UNCONFIRMED |NEW > Last reconfirmed| |2016-08-10 > CC| |ebotcazou at gcc dot gnu.org > Ever confirmed|0 |1 > > --- Comment #1 from Eric Botcazou <ebotcazou at gcc dot gnu.org> --- > > the issue is that we have recursive pointer types and blow the stack when > > dwarf2out calls verify_type which calls variably_modified_type_p: > > > > (gdb) p type->typed.type->typed.type > > $3 = <pointer_type 0x7ffff6525a80 access2__inc> > > (gdb) p type->typed.type->typed.type->typed.type > > $4 = <pointer_type 0x7ffff6525888 access2__priv> > > (gdb) p type->typed.type->typed.type->typed.type->typed.type > > $5 = <pointer_type 0x7ffff6525a80 access2__inc> > > > > not sure how to best represent such a structure. Maybe > > variably_modified_type_p needs adjustment? > > Do you mean something similar to what Jan added in get_alias_set? Yeah, or maybe mark the "forward" reference (the "backedge") tree type in some way in the FE? POINTER_TYPE_CYCLE_CLOSING_P?