From 6c397102b275823c0d8ffb02ab7d74bb38ede5a9 Mon Sep 17 00:00:00 2001 From: Tobias Burnus Date: Sat, 16 Aug 2008 17:53:14 +0200 Subject: [PATCH] re PR fortran/36825 ([F08] Rank > 7 arrays [will break library ABI] libgfortran I/O+intrinsics:) 2008-08-16 Tobias Burnus PR fortran/36825 * libgfortran.h: Reduce GFC_MAX_DIMENSIONS to 7. 2008-08-16 Tobias Burnus PR fortran/36825 * gfortran.dg/rank_1.f90: Modify error message. From-SVN: r139152 --- gcc/fortran/ChangeLog | 5 +++++ gcc/fortran/libgfortran.h | 4 +++- gcc/testsuite/ChangeLog | 5 +++++ gcc/testsuite/gfortran.dg/rank_1.f90 | 5 +++-- 4 files changed, 16 insertions(+), 3 deletions(-) diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index a347d6dce33..8ca3f84aad7 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,8 @@ +2008-08-16 Tobias Burnus + + PR fortran/36825 + * libgfortran.h: Reduce GFC_MAX_DIMENSIONS to 7. + 2008-08-15 Jerry DeLisle PR fortran/35863 diff --git a/gcc/fortran/libgfortran.h b/gcc/fortran/libgfortran.h index ccae391aebb..74bb9a92fcf 100644 --- a/gcc/fortran/libgfortran.h +++ b/gcc/fortran/libgfortran.h @@ -88,7 +88,9 @@ libgfortran_error_codes; #define GFC_STDERR_UNIT_NUMBER 0 -#define GFC_MAX_DIMENSIONS 15 +/* FIXME: Increase to 15 for Fortran 2008. Also needs changes to + GFC_DTYPE_RANK_MASK. See PR 36825. */ +#define GFC_MAX_DIMENSIONS 7 #define GFC_DTYPE_RANK_MASK 0x07 #define GFC_DTYPE_TYPE_SHIFT 3 diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index b06b6a3ca3b..fe96594951d 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2008-08-16 Tobias Burnus + + PR fortran/36825 + * gfortran.dg/rank_1.f90: Modify error message. + 2008-08-15 Jerry DeLisle PR fortran/35863 diff --git a/gcc/testsuite/gfortran.dg/rank_1.f90 b/gcc/testsuite/gfortran.dg/rank_1.f90 index 3467faded2b..6a81e410bd5 100644 --- a/gcc/testsuite/gfortran.dg/rank_1.f90 +++ b/gcc/testsuite/gfortran.dg/rank_1.f90 @@ -4,6 +4,7 @@ ! Fortran < 2008 allows 7 dimensions ! Fortran 2008 allows 15 dimensions (including co-array ranks) ! -integer :: a(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15) -integer :: b(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16) ! { dg-error "has more than 15 dimensions" } +! FIXME: Rank patch was reverted because of PR 36825. +integer :: a(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15) ! { dg-error "has more than 7 dimensions" } +integer :: b(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16) ! { dg-error "has more than 7 dimensions" } end