[Bug fortran/69604] ICE in gfc_add_modify_loc, at fortran/trans.c:159

anlauf at gmx dot de gcc-bugzilla@gcc.gnu.org
Fri Mar 18 20:35:00 GMT 2016


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?


More information about the Gcc-bugs mailing list