This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug fortran/69604] ICE in gfc_add_modify_loc, at fortran/trans.c:159
- From: "anlauf at gmx dot de" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Fri, 18 Mar 2016 20:35:12 +0000
- Subject: [Bug fortran/69604] ICE in gfc_add_modify_loc, at fortran/trans.c:159
- Auto-submitted: auto-generated
- References: <bug-69604-4 at http dot gcc dot gnu dot org/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69604
--- Comment #7 from Harald Anlauf <anlauf at gmx dot de> ---
(In reply to Harald Anlauf from comment #6)
All crashes for case 4 go away after the following change:
Index: gcc/fortran/trans-expr.c
===================================================================
--- gcc/fortran/trans-expr.c (revision 234170)
+++ gcc/fortran/trans-expr.c (working copy)
@@ -8275,7 +8275,7 @@
gfc_add_expr_to_block (&block, tmp);
}
}
- else if (ts.type == BT_DERIVED || ts.type == BT_CLASS)
+ else if (ts.type == BT_DERIVED || ts.type == BT_CLASS || ts.type ==
BT_COMPLEX)
{
gfc_add_block_to_block (&block, &lse->pre);
gfc_add_block_to_block (&block, &rse->pre);
Could somebody please check whether this makes sense?