https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79519
Bug ID: 79519 Summary: [5/6/7 Regression] ICE deleting template friend function Product: gcc Version: 7.0 Status: UNCONFIRMED Keywords: ice-on-invalid-code Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: reichelt at gcc dot gnu.org Target Milestone: --- The following invalid code snippet triggers since GCC 5.1.0: ====================================================== struct A { template<typename> void foo(); }; struct B { template<typename> friend void A::foo() = delete; }; ====================================================== bug.cc:8:45: internal compiler error: in grokfield, at cp/decl2.c:930 template<typename> friend void A::foo() = delete; ^~~~~~ 0x6ec8b1 grokfield(cp_declarator const*, cp_decl_specifier_seq*, tree_node*, bool, tree_node*, tree_node*) ../../gcc/gcc/cp/decl2.c:930 0x7390a3 cp_parser_init_declarator ../../gcc/gcc/cp/parser.c:19375 0x71321a cp_parser_single_declaration ../../gcc/gcc/cp/parser.c:26728 0x73361c cp_parser_template_declaration_after_parameters ../../gcc/gcc/cp/parser.c:26332 0x7332ac cp_parser_explicit_template_declaration ../../gcc/gcc/cp/parser.c:26567 0x7332ac cp_parser_template_declaration_after_export ../../gcc/gcc/cp/parser.c:26586 0x70e571 cp_parser_member_declaration ../../gcc/gcc/cp/parser.c:23024 0x70f3fa cp_parser_member_specification_opt ../../gcc/gcc/cp/parser.c:22951 0x70f3fa cp_parser_class_specifier_1 ../../gcc/gcc/cp/parser.c:22107 0x711a29 cp_parser_class_specifier ../../gcc/gcc/cp/parser.c:22359 0x711a29 cp_parser_type_specifier ../../gcc/gcc/cp/parser.c:16432 0x71291a cp_parser_decl_specifier_seq ../../gcc/gcc/cp/parser.c:13345 0x739b01 cp_parser_simple_declaration ../../gcc/gcc/cp/parser.c:12670 0x73aa25 cp_parser_block_declaration ../../gcc/gcc/cp/parser.c:12617 0x7135d4 cp_parser_declaration ../../gcc/gcc/cp/parser.c:12515 0x74406b cp_parser_declaration_seq_opt ../../gcc/gcc/cp/parser.c:12391 0x74434a cp_parser_translation_unit ../../gcc/gcc/cp/parser.c:4366 0x74434a c_parse_file() ../../gcc/gcc/cp/parser.c:38425 0x8a2f73 c_common_parse_file() ../../gcc/gcc/c-family/c-opts.c:1107 Please submit a full bug report, [etc.]