https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113620
Xi Ruoyao <xry111 at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |xry111 at gcc dot gnu.org Status|UNCONFIRMED |NEW Keywords| |ice-on-invalid-code Ever confirmed|0 |1 Last reconfirmed| |2024-01-26 --- Comment #1 from Xi Ruoyao <xry111 at gcc dot gnu.org> --- Confirmed. t1.c:19:21: internal compiler error: tree check: accessed elt 2 of 'tree_vec' with 1 elts in tsubst, at cp/pt.cc:16216 19 | DEF::TYP r=DEF::INIT; | ^~~~ 0x910d44 tree_vec_elt_check_failed(int, int, char const*, int, char const*) ../../gcc/gcc/tree.cc:9153 0x7a8e83 tree_vec_elt_check(tree_node*, int, char const*, int, char const*) ../../gcc/gcc/tree.h:3865 0x7a8e83 tsubst(tree_node*, tree_node*, int, tree_node*) ../../gcc/gcc/cp/pt.cc:16216 0xc3ada0 tsubst_scope ../../gcc/gcc/cp/pt.cc:16857 0xc3ada0 tsubst_qualified_id ../../gcc/gcc/cp/pt.cc:17133 0xc153cd tsubst_expr(tree_node*, tree_node*, int, tree_node*) ../../gcc/gcc/cp/pt.cc:20199 0xb03627 maybe_instantiate_nsdmi_init(tree_node*, int) ../../gcc/gcc/cp/init.cc:624 0xb03b0a maybe_instantiate_nsdmi_init(tree_node*, int) ../../gcc/gcc/cp/init.cc:679 0xb03b0a get_nsdmi(tree_node*, bool, int) ../../gcc/gcc/cp/init.cc:656 0xb34ed1 walk_field_subobs ../../gcc/gcc/cp/method.cc:2466 0xb35576 walk_field_subobs ../../gcc/gcc/cp/method.cc:2390 0xb35576 synthesized_method_walk ../../gcc/gcc/cp/method.cc:2835 0xb35eed get_defaulted_eh_spec(tree_node*, int) ../../gcc/gcc/cp/method.cc:2877 0xc1a078 maybe_instantiate_noexcept(tree_node*, int) ../../gcc/gcc/cp/pt.cc:26655 0xc19ee6 maybe_instantiate_noexcept(tree_node*, int) ../../gcc/gcc/cp/pt.cc:26645 0xae729a mark_used(tree_node*, int) ../../gcc/gcc/cp/decl2.cc:5811 0xa1af3e build_over_call ../../gcc/gcc/cp/call.cc:10524 0xa183bf build_new_method_call(tree_node*, tree_node*, vec<tree_node*, va_gc, vl_embed>**, tree_node*, int, tree_node**, int) ../../gcc/gcc/cp/call.cc:11796 0xa1962a build_special_member_call(tree_node*, tree_node*, vec<tree_node*, va_gc, vl_embed>**, tree_node*, int, int) ../../gcc/gcc/cp/call.cc:11281 0xb07819 expand_default_init ../../gcc/gcc/cp/init.cc:2202 With -std=c++17 it's fine: t1.c:19:5: error: need 'typename' before 'DEF::TYP' because 'DEF' is a dependent scope 19 | DEF::TYP r=DEF::INIT; | ^~~ | typename