[gcc/devel/gccgo] Make forall statement in testsuite conforming.

Ian Lance Taylor ian@gcc.gnu.org
Sun Jul 12 20:00:08 GMT 2020


https://gcc.gnu.org/g:6f609029c7078fbd29e2f842074e2b99ea099096

commit 6f609029c7078fbd29e2f842074e2b99ea099096
Author: Thomas Koenig <tkoenig@gcc.gnu.org>
Date:   Tue Jun 23 21:59:47 2020 +0200

    Make forall statement in testsuite conforming.
    
    The recent patch for dependency checking introduced one failing test
    case for pointer assignments in a forall statement.  This test case
    was invalid because of an interdependency in a forall statement.
    This patch fixes that by removing that dependency.
    
    gcc/testsuite/ChangeLog:
    
            * gfortran.fortran-torture/execute/forall_5.f90: Make forall
            statement conforming.

Diff:
---
 gcc/testsuite/gfortran.fortran-torture/execute/forall_5.f90 | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/forall_5.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/forall_5.f90
index 9b33e21e8fc..c162d44348b 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/forall_5.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/forall_5.f90
@@ -4,23 +4,23 @@ program forall_5
       integer, pointer, dimension(:)::p
    end type
 
-   type (element) q(5)
+   type (element) :: q(5), r(5)
    integer, target, dimension(25)::t
 
    n = 5
    do i = 1,5
-      q(i)%p => t((i-1)*n + 1:i*n)
+      r(i)%p => t((i-1)*n + 1:i*n)
    enddo 
 
    forall (i = 2:5)
-      q(i)%p => q(i-1)%p
+      q(i)%p => r(i-1)%p
    end forall
 
    do i = 1, 25
       t(i) = i
    enddo
 
-   if (any(q(1)%p .ne. (/1,2,3,4,5/))) STOP 1
+   if (any(r(1)%p .ne. (/1,2,3,4,5/))) STOP 1
    if (any(q(2)%p .ne. (/1,2,3,4,5/))) STOP 2
    if (any(q(3)%p .ne. (/6,7,8,9,10/))) STOP 3
    if (any(q(4)%p .ne. (/11,12,13,14,15/))) STOP 4


More information about the Gcc-cvs mailing list