[Bug c++/93046] New: [10 Regression] ICE in cp_gimplify_init_expr

asolokha at gmx dot com gcc-bugzilla@gcc.gnu.org
Mon Dec 23 07:14:00 GMT 2019


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

            Bug ID: 93046
           Summary: [10 Regression] ICE in cp_gimplify_init_expr
           Product: gcc
           Version: 10.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: asolokha at gmx dot com
  Target Milestone: ---

g++-10.0.0-alpha20191222 snapshot (r279712) ICEs when compiling the following
testcase, reduced from clang/testsuite/CodeGenCXX/cxx1z-copy-omission.cpp (and
several others) from the clang 9.0.1 test suite:

struct id {
  id (int);
  operator bool ();
};

id
o9 ()
{
  return id (1) ?: id (2);
}

% g++-10.0.0-alpha20191222 -c fxrshtnj.cpp
fxrshtnj.cpp: In function 'id o9()':
fxrshtnj.cpp:9:25: internal compiler error: Segmentation fault
    9 |   return id (1) ?: id (2);
      |                         ^
0xf529d0 crash_signal
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20191222/work/gcc-10-20191222/gcc/toplev.c:328
0x8939d8 cp_gimplify_init_expr
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20191222/work/gcc-10-20191222/gcc/cp/cp-gimplify.c:531
0x8939d8 cp_gimplify_expr(tree_node**, gimple**, gimple**)
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20191222/work/gcc-10-20191222/gcc/cp/cp-gimplify.c:734
0xccb881 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20191222/work/gcc-10-20191222/gcc/gimplify.c:13475
0xccfdf5 gimplify_stmt(tree_node**, gimple**)
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20191222/work/gcc-10-20191222/gcc/gimplify.c:6814
0xce205d gimplify_cond_expr
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20191222/work/gcc-10-20191222/gcc/gimplify.c:4232
0xcccdb6 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20191222/work/gcc-10-20191222/gcc/gimplify.c:13523
0xccfdf5 gimplify_stmt(tree_node**, gimple**)
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20191222/work/gcc-10-20191222/gcc/gimplify.c:6814
0xcd7815 gimplify_and_add(tree_node*, gimple**)
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20191222/work/gcc-10-20191222/gcc/gimplify.c:486
0xcd7815 gimplify_return_expr
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20191222/work/gcc-10-20191222/gcc/gimplify.c:1659
0xccd4a9 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20191222/work/gcc-10-20191222/gcc/gimplify.c:13827
0xce5243 gimplify_stmt(tree_node**, gimple**)
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20191222/work/gcc-10-20191222/gcc/gimplify.c:6814
0xce5243 gimplify_cleanup_point_expr
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20191222/work/gcc-10-20191222/gcc/gimplify.c:6556
0xccc7c7 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20191222/work/gcc-10-20191222/gcc/gimplify.c:13958
0xce47a4 gimplify_stmt(tree_node**, gimple**)
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20191222/work/gcc-10-20191222/gcc/gimplify.c:6814
0xce47a4 gimplify_body(tree_node*, bool)
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20191222/work/gcc-10-20191222/gcc/gimplify.c:14814
0xce4bec gimplify_function_tree(tree_node*)
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20191222/work/gcc-10-20191222/gcc/gimplify.c:14958
0xb350f2 cgraph_node::analyze()
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20191222/work/gcc-10-20191222/gcc/cgraphunit.c:669
0xb379ee analyze_functions
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20191222/work/gcc-10-20191222/gcc/cgraphunit.c:1212
0xb385e8 symbol_table::finalize_compilation_unit()
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20191222/work/gcc-10-20191222/gcc/cgraphunit.c:2958

r279576 seems to be a possible culprit.


More information about the Gcc-bugs mailing list