[Bug c++/90749] New: [8/9/10 Regression] ICE in enclosing_instantiation_of, at cp/pt.c:13462

gscfq@t-online.de gcc-bugzilla@gcc.gnu.org
Tue Jun 4 17:48:00 GMT 2019


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

            Bug ID: 90749
           Summary: [8/9/10 Regression] ICE in enclosing_instantiation_of,
                    at cp/pt.c:13462
           Product: gcc
           Version: 10.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: gscfq@t-online.de
  Target Milestone: ---

Changed between 20180525 and 20180615 :


$ cat z1.cc
template <int n>
void foo ()
{
  static int i {100};
  struct { int a {i++}; } b {};
}
int main ()
{
  foo<0> ();
}


$ g++-7 -c z1.cc
$
$ g++-10-20190602 -c z1.cc
z1.cc: In instantiation of 'void foo() [with int n = 0]':
z1.cc:9:11:   required from here
z1.cc:4:14: internal compiler error: in enclosing_instantiation_of, at
cp/pt.c:13462
    4 |   static int i {100};
      |              ^
0x6d2f1d enclosing_instantiation_of
        ../../gcc/cp/pt.c:13462
0x6ee2e7 tsubst_decl
        ../../gcc/cp/pt.c:13825
0x6ed64c tsubst_copy
        ../../gcc/cp/pt.c:15681
0x6dfdde tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool,
bool)
        ../../gcc/cp/pt.c:19474
0x6e17d9 tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool,
bool)
        ../../gcc/cp/pt.c:19597
0x6e0032 tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool,
bool)
        ../../gcc/cp/pt.c:18455
0x6e1806 tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool,
bool)
        ../../gcc/cp/pt.c:19413
0x6699d5 get_nsdmi(tree_node*, bool, int)
        ../../gcc/cp/init.c:604
0x7427a0 process_init_constructor_record
        ../../gcc/cp/typeck2.c:1584
0x7427a0 process_init_constructor
        ../../gcc/cp/typeck2.c:1841
0x7427a0 digest_init_r
        ../../gcc/cp/typeck2.c:1239
0x7437c0 digest_init_flags(tree_node*, tree_node*, int, int)
        ../../gcc/cp/typeck2.c:1284
0x7437c0 store_init_value(tree_node*, tree_node*, vec<tree_node*, va_gc,
vl_embed>**, int)
        ../../gcc/cp/typeck2.c:824
0x64750d check_initializer
        ../../gcc/cp/decl.c:6568
0x648812 cp_finish_decl(tree_node*, tree_node*, bool, tree_node*, int)
        ../../gcc/cp/decl.c:7242
0x6eb412 tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool)
        ../../gcc/cp/pt.c:17173
0x6e8da1 tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool)
        ../../gcc/cp/pt.c:17036
0x6e9a11 tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool)
        ../../gcc/cp/pt.c:17330
0x6e7cfc instantiate_decl(tree_node*, bool, bool)
        ../../gcc/cp/pt.c:24769
0x6fd48b instantiate_pending_templates(int)
        ../../gcc/cp/pt.c:24885


More information about the Gcc-bugs mailing list