[Bug fortran/66385] [4.9/5/6 Regression] ICE: FORALL writing multiple elements of one array
tkoenig at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Thu Jun 4 09:25:00 GMT 2015
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66385
Thomas Koenig <tkoenig at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Blocks| |36854
--- Comment #5 from Thomas Koenig <tkoenig at gcc dot gnu.org> ---
As I wrote in the other PR, BLOCKs created by front-end optimization and FORALL
don't mix well.
The solution is not to attempt that particular optimization within a FORALL.
Index: frontend-passes.c
===================================================================
--- frontend-passes.c (Revision 223876)
+++ frontend-passes.c (Arbeitskopie)
@@ -1243,6 +1243,10 @@ combine_array_constructor (gfc_expr *e)
if (in_assoc_list)
return false;
+ /* With FORALL, the BLOCKS created by create_var will cause an ICE. */
+ if (forall_level > 0)
+ return false;
+
op1 = e->value.op.op1;
op2 = e->value.op.op2;
Referenced Bugs:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=36854
[Bug 36854] [meta-bug] fortran front-end optimization
More information about the Gcc-bugs
mailing list