[Bug c++/70029] [8 Regression] ICE with C++11 and -flto

jason at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Thu Sep 7 15:26:00 GMT 2017


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

--- Comment #14 from Jason Merrill <jason at gcc dot gnu.org> ---
(In reply to Jason Merrill from comment #13)
> I believe r241831 fixed the actual problem that verify_type was catching. 
> This still fails because free_lang_data_in_type clears TYPE_LANG_FLAG_4 on
> 't' but not 'ct'.

No, that's not it.

The issue is still that build_ref_qualified_type creates a variant, and
build_type_attribute_qual_variant doesn't know how to recreate that, so it
returns a type that is its own main variant.  We'll run into the same issue
with exception specifications.  So it seems we need a langhook somewhere in
BTAQV or build_distinct_type_copy, to reproduce the language qualifiers and
variant relationship.


More information about the Gcc-bugs mailing list