[Bug c++/84936] New: [8 Regression] ICE with unexpanded parameter pack

reichelt at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Sun Mar 18 21:11:00 GMT 2018


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84936

            Bug ID: 84936
           Summary: [8 Regression] ICE with unexpanded parameter pack
           Product: gcc
           Version: 8.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 an ICE on trunk:

==========================================================
struct A
{
  template<typename... T> A(T... t) : decltype(t)() {}
};

A a;
==========================================================

bug.cc: In instantiation of 'A::A(T ...) [with T = {}]':
bug.cc:6:3:   required from here
bug.cc:3:51: internal compiler error: Segmentation fault
   template<typename... T> A(T... t) : decltype(t)() {}
                                                   ^
0xebab0f crash_signal
        ../../gcc/gcc/toplev.c:325
0x9d5e09 invalid_nonstatic_memfn_p(unsigned int, tree_node*, int)
        ../../gcc/gcc/cp/typeck.c:1882
0x9b2529 finish_decltype_type(tree_node*, bool, int)
        ../../gcc/gcc/cp/semantics.c:8734
0x975ed5 tsubst(tree_node*, tree_node*, int, tree_node*)
        ../../gcc/gcc/cp/pt.c:14580
0x96ed2f tsubst_initializer_list
        ../../gcc/gcc/cp/pt.c:23825
0x96ed2f tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool)
        ../../gcc/gcc/cp/pt.c:16213
0x96d6cf tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool)
        ../../gcc/gcc/cp/pt.c:16489
0x96c868 tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool)
        ../../gcc/gcc/cp/pt.c:16193
0x96c868 instantiate_decl(tree_node*, bool, bool)
        ../../gcc/gcc/cp/pt.c:23575
0x99146b instantiate_pending_templates(int)
        ../../gcc/gcc/cp/pt.c:23691
0x8b760b c_parse_final_cleanups()
        ../../gcc/gcc/cp/decl2.c:4721
Please submit a full bug report, [etc.]

The regression was introduced between 2017-05-06 and 2017-05-12.


More information about the Gcc-bugs mailing list