summaryrefslogtreecommitdiff
path: root/gcc/fortran/simplify.c
diff options
context:
space:
mode:
authormikael <mikael@138bc75d-0d04-0410-961f-82ee72b054a4>2009-01-19 22:19:34 +0000
committermikael <mikael@138bc75d-0d04-0410-961f-82ee72b054a4>2009-01-19 22:19:34 +0000
commitfef578d405d6aef6fa07bf5053b8bdb9ce153904 (patch)
treef4dece352a8ed71d31519c9053b6277246a3edc4 /gcc/fortran/simplify.c
parentc950adc6e1f2c8cab7e6bfa81c22b25158623e69 (diff)
downloadgcc-fef578d405d6aef6fa07bf5053b8bdb9ce153904.tar.gz
2009-01-19 Mikael Morin <mikael.morin@tele2.fr>
PR fortran/38859 * simplify.c (simplify_bound): Don't use array specification if variable or component has subsequent references. 2009-01-19 Mikael Morin <mikael.morin@tele2.fr> PR fortran/38859 * gfortran.dg/bound_5.f90: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@143501 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/fortran/simplify.c')
-rw-r--r--gcc/fortran/simplify.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/gcc/fortran/simplify.c b/gcc/fortran/simplify.c
index 90c91ae4e85..c460f312db2 100644
--- a/gcc/fortran/simplify.c
+++ b/gcc/fortran/simplify.c
@@ -2253,7 +2253,10 @@ simplify_bound (gfc_expr *array, gfc_expr *dim, gfc_expr *kind, int upper)
case AR_FULL:
/* We're done because 'as' has already been set in the
previous iteration. */
- goto done;
+ if (!ref->next)
+ goto done;
+
+ /* Fall through. */
case AR_SECTION:
case AR_UNKNOWN: