https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115801
Nathaniel Shead <nshead at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |nshead at gcc dot gnu.org Last reconfirmed| |2024-07-07 Ever confirmed|0 |1 Status|UNCONFIRMED |NEW --- Comment #1 from Nathaniel Shead <nshead at gcc dot gnu.org> --- Confirmed. Full trace: 0x38eed62 internal_error(char const*, ...) ../../gcc/gcc/diagnostic-global-context.cc:491 0x1bd9a30 crash_signal ../../gcc/gcc/toplev.cc:319 0x7f97b0fa251f ??? ./signal/../sysdeps/unix/sysv/linux/x86_64/libc_sigaction.c:0 0xdd6061 tree_check(tree_node*, char const*, int, char const*, tree_code) ../../gcc/gcc/tree.h:3631 0x1174d96 tsubst_template_decl ../../gcc/gcc/cp/pt.cc:15011 0x1177f87 tsubst_decl ../../gcc/gcc/cp/pt.cc:15127 0x117cb4e tsubst(tree_node*, tree_node*, int, tree_node*) ../../gcc/gcc/cp/pt.cc:16167 0x1160524 tsubst_friend_class ../../gcc/gcc/cp/pt.cc:11792 0x116635c instantiate_class_template(tree_node*) ../../gcc/gcc/cp/pt.cc:12669 0x12622ec complete_type(tree_node*) ../../gcc/gcc/cp/typeck.cc:138 0xf152e9 start_decl_1(tree_node*, bool) ../../gcc/gcc/cp/decl.cc:6210 0xf150ee start_decl(cp_declarator const*, cp_decl_specifier_seq*, int, tree_node*, tree_node*, tree_node**) ../../gcc/gcc/cp/decl.cc:6176 0x10c939f cp_parser_init_declarator ../../gcc/gcc/cp/parser.cc:23719 0x10b968c cp_parser_simple_declaration ../../gcc/gcc/cp/parser.cc:16064 0x10b9195 cp_parser_block_declaration ../../gcc/gcc/cp/parser.cc:15883 0x10b7293 cp_parser_declaration_statement ../../gcc/gcc/cp/parser.cc:14988 0x10b1bb4 cp_parser_statement ../../gcc/gcc/cp/parser.cc:12913 0x10b2efa cp_parser_statement_seq_opt ../../gcc/gcc/cp/parser.cc:13450 0x10b2a58 cp_parser_compound_statement ../../gcc/gcc/cp/parser.cc:13297 0x10cefca cp_parser_function_body ../../gcc/gcc/cp/parser.cc:26231 The cause is that the TEMPLATE_DECL for "Foo" as found in tsubst_template_decl has null DECL_TEMPLATE_PARMS, so we're probably missing streaming something for uninstantiated template friends here.