From 15df0040707d630b78f4dd34dd4f435026dea56c Mon Sep 17 00:00:00 2001 From: Tobias Burnus Date: Thu, 9 Jan 2020 14:43:59 +0100 Subject: Fortran] PR84135 fix merging dimension into codimension array spec PR fortran/84135 * array.c (gfc_set_array_spec): Fix shifting of codimensions when adding a dimension. * decl.c (merge_array_spec): Ditto. Fix using correct codimensions. PR fortran/84135 * gfortran.dg/coarray/codimension_3.f90: New. From-SVN: r280046 --- gcc/fortran/array.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gcc/fortran/array.c') diff --git a/gcc/fortran/array.c b/gcc/fortran/array.c index e5b4ad7..157acb8 100644 --- a/gcc/fortran/array.c +++ b/gcc/fortran/array.c @@ -887,7 +887,7 @@ gfc_set_array_spec (gfc_symbol *sym, gfc_array_spec *as, locus *error_loc) if (sym->as->rank + sym->as->corank > GFC_MAX_DIMENSIONS) goto too_many; - for (i = 0; i < sym->as->corank; i++) + for (i = sym->as->corank - 1; i >= 0; i--) { sym->as->lower[as->rank + i] = sym->as->lower[i]; sym->as->upper[as->rank + i] = sym->as->upper[i]; -- cgit v1.1