https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71387
Bug ID: 71387
Summary: [6/7 Regression] ICE in emit_move_insn, at expr.c:3418
with -Og
Product: gcc
Version: 7.0
Status: UNCONFIRMED
Keywords: ice-on-valid-code
Severity: normal
Priority: P3
Component: middle-end
Assignee: unassigned at gcc dot gnu.org
Reporter: burnus at gcc dot gnu.org
Target Milestone: ---
The attached program fails with -Og as follows; using -O0, -O1, -O2 works.
(It fails likewise with GCC 7 (cf. below) and GCC 6 but works with GCC 5 [all
branch builds of today on x86-64-gnu-linux].)
$ g++ -Og test9a.ii -w
test9a.ii: In constructor
‘EPointIteratorRectangleBase::EPointIteratorRectangleBase(const
ERectangleBase*)’:
test9a.ii:37:43: internal compiler error: in emit_move_insn, at expr.c:3418
m_actPoint = m_rectBase->getLowerRight();
~~~~~~~~~~~~~~~~~~~~~~~~~^~
0xa864e7 emit_move_insn(rtx_def*, rtx_def*)
../../gcc/expr.c:3417
0xa8d9bd store_expr_with_bounds(tree_node*, rtx_def*, int, bool, bool,
tree_node*)
../../gcc/expr.c:5450
0xa8f0d0 expand_assignment(tree_node*, tree_node*, bool)
../../gcc/expr.c:5042