https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84536
Bug ID: 84536 Summary: [7/8 Regression] ICE with non-type template parameter Product: gcc Version: 8.0 Status: UNCONFIRMED Keywords: error-recovery, 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 an ICE since GCC 7.1.0: ==================================================== template<int... N> auto foo(N...) -> void {} void bar() { foo<>(); } ==================================================== bug.cc:1:34: error: expected ';' before '->' token template<int... N> auto foo(N...) -> void {} ^~~ ; bug.cc: In instantiation of 'auto foo<>': bug.cc:5:3: required from here bug.cc:1:25: internal compiler error: in cp_finish_decl, at cp/decl.c:6812 template<int... N> auto foo(N...) -> void {} ^~~ 0x600957 cp_finish_decl(tree_node*, tree_node*, bool, tree_node*, int) ../../gcc/gcc/cp/decl.c:6812 0x965bf9 instantiate_decl(tree_node*, bool, bool) ../../gcc/gcc/cp/pt.c:23367 0x8aefcb maybe_instantiate_decl ../../gcc/gcc/cp/decl2.c:5186 0x8b0dd8 mark_used(tree_node*, int) ../../gcc/gcc/cp/decl2.c:5281 0x9ace9b finish_id_expression(tree_node*, tree_node*, tree_node*, cp_id_kind*, bool, bool, bool*, bool, bool, bool, bool, char const**, unsigned int) ../../gcc/gcc/cp/semantics.c:3681 0x91e2dc cp_parser_primary_expression ../../gcc/gcc/cp/parser.c:5607 0x9306fc cp_parser_postfix_expression ../../gcc/gcc/cp/parser.c:7026 0x9312d0 cp_parser_unary_expression ../../gcc/gcc/cp/parser.c:8318 0x91165f cp_parser_cast_expression ../../gcc/gcc/cp/parser.c:9086 0x911e6a cp_parser_binary_expression ../../gcc/gcc/cp/parser.c:9187 0x9136a4 cp_parser_assignment_expression ../../gcc/gcc/cp/parser.c:9482 0x913db8 cp_parser_expression ../../gcc/gcc/cp/parser.c:9651 0x915a78 cp_parser_expression_statement ../../gcc/gcc/cp/parser.c:11118 0x91bded cp_parser_statement ../../gcc/gcc/cp/parser.c:10922 0x91d300 cp_parser_statement_seq_opt ../../gcc/gcc/cp/parser.c:11261 0x91d3d7 cp_parser_compound_statement ../../gcc/gcc/cp/parser.c:11215 0x933b50 cp_parser_function_body ../../gcc/gcc/cp/parser.c:21756 0x933b50 cp_parser_ctor_initializer_opt_and_function_body ../../gcc/gcc/cp/parser.c:21793 0x934400 cp_parser_function_definition_after_declarator ../../gcc/gcc/cp/parser.c:26694 0x935134 cp_parser_function_definition_from_specifiers_and_declarator ../../gcc/gcc/cp/parser.c:26610 Please submit a full bug report, [etc.]