[Bug fortran/50069] FORALL fails on a character array
burnus at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Wed Aug 17 08:25:00 GMT 2011
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50069
Tobias Burnus <burnus at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Keywords| |wrong-code
Status|UNCONFIRMED |NEW
Last reconfirmed| |2011-08-17
Ever Confirmed|0 |1
Known to fail| |4.1.2, 4.3.4, 4.4.0, 4.5.1,
| |4.6.1, 4.7.0
--- Comment #2 from Tobias Burnus <burnus at gcc dot gnu.org> 2011-08-17 08:21:34 UTC ---
Draft patch:
diff --git a/gcc/fortran/trans-stmt.c b/gcc/fortran/trans-stmt.c
index a911a5b..7d85413 100644
--- a/gcc/fortran/trans-stmt.c
+++ b/gcc/fortran/trans-stmt.c
@@ -2452,6 +2452,9 @@ forall_make_variable_temp (gfc_code *c, stmtblock_t *pre,
stmtblock_t *post)
tmp = gfc_conv_array_offset (old_sym->backend_decl);
gfc_conv_descriptor_offset_set (pre, tse.expr, tmp);
}
+ else
+ gfc_conv_descriptor_offset_set (pre, tse.expr,
+ build_int_cst (gfc_array_index_type, -1));
}
else
{
More information about the Gcc-bugs
mailing list