public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/60248] New: [4.7/4.8/4.9 Regression] ICE specializing variadic template
@ 2014-02-17 20:59 reichelt at gcc dot gnu.org
  2014-02-17 21:00 ` [Bug c++/60248] [4.7/4.8/4.9 Regression] [C++11] " reichelt at gcc dot gnu.org
                   ` (7 more replies)
  0 siblings, 8 replies; 9+ messages in thread
From: reichelt at gcc dot gnu.org @ 2014-02-17 20:59 UTC (permalink / raw)
  To: gcc-bugs

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.]


^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2014-02-21 15:52 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-02-17 20:59 [Bug c++/60248] New: [4.7/4.8/4.9 Regression] ICE specializing variadic template reichelt at gcc dot gnu.org
2014-02-17 21:00 ` [Bug c++/60248] [4.7/4.8/4.9 Regression] [C++11] " reichelt at gcc dot gnu.org
2014-02-18  9:25 ` rguenth at gcc dot gnu.org
2014-02-18 10:31 ` mpolacek at gcc dot gnu.org
2014-02-21  5:39 ` jason at gcc dot gnu.org
2014-02-21 14:57 ` jason at gcc dot gnu.org
2014-02-21 15:02 ` jason at gcc dot gnu.org
2014-02-21 15:29 ` jason at gcc dot gnu.org
2014-02-21 15:52 ` jason at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).