diff options
author | Paul Thomas <pault@gcc.gnu.org> | 2007-04-29 05:10:22 +0000 |
---|---|---|
committer | Paul Thomas <pault@gcc.gnu.org> | 2007-04-29 05:10:22 +0000 |
commit | 4f06d65b44483f00dd2397321cf599e4066950c3 (patch) | |
tree | 11549f2341c1d06579bf77fc3a920ae6e8098c82 /gcc/fortran | |
parent | d10fb73e919c22a50a241b33b6a0d10aa752f70a (diff) | |
download | gcc-4f06d65b44483f00dd2397321cf599e4066950c3.zip gcc-4f06d65b44483f00dd2397321cf599e4066950c3.tar.gz gcc-4f06d65b44483f00dd2397321cf599e4066950c3.tar.bz2 |
re PR fortran/31711 (was "rhs array is changed while assiging to same lhs array")
2007-04-29 Paul Thomas <pault@gcc.gnu.org>
PR fortran/31711
* trans-array.c (gfc_conv_resolve_dependencies): Create a temp
whenever a dependency is found.
2007-04-29 Paul Thomas <pault@gcc.gnu.org>
PR fortran/31711
* gfortran.dg/dependency_21.f90: New test.
From-SVN: r124269
Diffstat (limited to 'gcc/fortran')
-rw-r--r-- | gcc/fortran/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/fortran/trans-array.c | 2 |
2 files changed, 8 insertions, 0 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index ef1d6cb..6bba251 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,9 @@ +2007-04-29 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/31711 + * trans-array.c (gfc_conv_resolve_dependencies): Create a temp + whenever a dependency is found. + 2007-04-28 Tobias Schlüter <tobi@gcc.gnu.org> * options.c (gfc_handle_option): Ensure requested free form line diff --git a/gcc/fortran/trans-array.c b/gcc/fortran/trans-array.c index b6a2ac0..92fd67c 100644 --- a/gcc/fortran/trans-array.c +++ b/gcc/fortran/trans-array.c @@ -3001,6 +3001,8 @@ gfc_conv_resolve_dependencies (gfc_loopinfo * loop, gfc_ss * dest, rref = ss->expr->ref; nDepend = gfc_dep_resolver (lref, rref); + if (nDepend == 1) + break; #if 0 /* TODO : loop shifting. */ if (nDepend == 1) |