https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119446
Bug ID: 119446 Summary: ICE in finish_member_declaration, at cp/semantics.cc:4235 Product: gcc Version: unknown Status: UNCONFIRMED Keywords: ice-checking, ice-on-invalid-code Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: rush102333 at gmail dot com Target Milestone: --- Simplified test input: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ struct Base { virtual void func(); }; template <typename T> struct wrapper { struct : Base { }; }; void uses() { wrapper<int> w; } ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Stack Dump: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <source>:7:12: error: anonymous struct with base classes [-Wtemplate-body] 7 | struct : Base { | ^ <source>: In instantiation of 'struct wrapper<int>': <source>:12:18: required from here 12 | wrapper<int> w; | ^ <source>:7:5: internal compiler error: in finish_member_declaration, at cp/semantics.cc:4235 7 | struct : Base { | ^~~~~~ 0x291f785 diagnostic_context::diagnostic_impl(rich_location*, diagnostic_metadata const*, diagnostic_option_id, char const*, __va_list_tag (*) [1], diagnostic_t) ???:0 0x2936756 internal_error(char const*, ...) ???:0 0xacfde6 fancy_abort(char const*, int, char const*) ???:0 0xd55247 instantiate_class_template(tree_node*) ???:0 0xb997c2 start_decl_1(tree_node*, bool) ???:0 0xbb9ddf start_decl(cp_declarator const*, cp_decl_specifier_seq*, int, tree_node*, tree_node*, tree_node**) ???:0 0xcf21b3 c_parse_file() ???:0 0xe545f9 c_common_parse_file() ???:0 Please submit a full bug report, with preprocessed source (by using -freport-bug). Please include the complete backtrace with any bug report. See <https://gcc.gnu.org/bugs/> for instructions. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Please see https://godbolt.org/z/3sc8zzz1Y