diff mbox series

[Committed] PR fortran/69395 -- Correct error condition

Message ID 20180316192239.GA74316@troutmask.apl.washington.edu
State New
Headers show
Series [Committed] PR fortran/69395 -- Correct error condition | expand

Commit Message

Steve Kargl March 16, 2018, 7:22 p.m. UTC
The following patch fixes essentially and off-by-one
in the error condition.  Committed as obvious.

2018-03-16  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/69395
	* decl.c (merge_array_spec): Correct the error condition.

2018-03-16  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/69395
	* gfortran.dg/pr69395.f90: Add test for max dimensions
diff mbox series

Patch

Index: gcc/fortran/decl.c
===================================================================
--- gcc/fortran/decl.c	(revision 258581)
+++ gcc/fortran/decl.c	(working copy)
@@ -871,7 +871,7 @@  merge_array_spec (gfc_array_spec *from, gfc_array_spec
 	}
     }
 
-  if (to->rank + to->corank >= GFC_MAX_DIMENSIONS)
+  if (to->rank + to->corank > GFC_MAX_DIMENSIONS)
     {
       gfc_error ("Sum of array rank %d and corank %d at %C exceeds maximum "
 		 "allowed dimensions of %d",
Index: gcc/testsuite/gfortran.dg/pr69395.f90
===================================================================
--- gcc/testsuite/gfortran.dg/pr69395.f90	(revision 258580)
+++ gcc/testsuite/gfortran.dg/pr69395.f90	(working copy)
@@ -1,5 +1,6 @@ 
 ! { dg-do compile }
 ! { dg-options "-fcoarray=single" }
 program p
+real, dimension(1,2,1,2,1,2,1,2), codimension[1,2,1,2,1,2,*] :: y
 real, dimension(1,2,1,2,1,2,1,2), codimension[1,2,1,2,1,2,1,*] :: z  ! { dg-error "allowed dimensions" }
 end