http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60248
Bug ID: 60248 Summary: [4.7/4.8/4.9 Regression] ICE specializing variadic template Product: gcc Version: 4.9.0 Status: UNCONFIRMED Keywords: ice-on-valid-code Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: reichelt at gcc dot gnu.org The following valid code snippet (compiled with "-std=c++11 -g") triggers an ICE since GCC 4.7.0: ==================================== template<int...> struct A {}; template<> struct A<0> { typedef enum { e } B; }; A<0> a; ==================================== bug.cc:3:19: internal compiler error: tree check: expected var_decl or function_decl, have type_decl in make_alias_for, at cp/method.c:230 template<> struct A<0> ^ 0xdbfcc4 tree_check_failed(tree_node const*, char const*, int, char const*, ...) ../../gcc/gcc/tree.c:9192 0x7118bf tree_check2 ../../gcc/gcc/tree.h:2728 0x7118bf make_alias_for(tree_node*, tree_node*) ../../gcc/gcc/cp/method.c:230 0x776e40 mangle_decl(tree_node*) ../../gcc/gcc/cp/mangle.c:3510 0xdc1e20 decl_assembler_name(tree_node*) ../../gcc/gcc/tree.c:600 0x8e105e add_linkage_attr ../../gcc/gcc/dwarf2out.c:16558 0x905de9 gen_typedef_die ../../gcc/gcc/dwarf2out.c:19593 0x8f1654 gen_typedef_die ../../gcc/gcc/dwarf2out.c:19544 0x8f1654 gen_decl_die ../../gcc/gcc/dwarf2out.c:20403 0x8f454c gen_type_die_with_usage ../../gcc/gcc/dwarf2out.c:19736 0x8f127c gen_decl_die ../../gcc/gcc/dwarf2out.c:20400 0x8f340c gen_member_die ../../gcc/gcc/dwarf2out.c:19400 0x8f340c gen_struct_or_union_type_die ../../gcc/gcc/dwarf2out.c:19486 0x8f340c gen_tagged_type_die ../../gcc/gcc/dwarf2out.c:19676 0x8f4c30 gen_type_die_with_usage ../../gcc/gcc/dwarf2out.c:19823 0x8f127c gen_decl_die ../../gcc/gcc/dwarf2out.c:20400 0xafc8d2 rest_of_type_compilation(tree_node*, int) ../../gcc/gcc/passes.c:283 0x675d73 finish_struct_1(tree_node*) ../../gcc/gcc/cp/class.c:6636 0x677574 finish_struct(tree_node*, tree_node*) ../../gcc/gcc/cp/class.c:6801 0x6a97ba cp_parser_class_specifier_1 ../../gcc/gcc/cp/parser.c:19218 Please submit a full bug report, [etc.]