From 0b9c7914831b80c5903024ac2f3b1fcb470de0a8 Mon Sep 17 00:00:00 2001 From: Dave Love Date: Mon, 13 Jul 1998 03:51:25 +0000 Subject: [PATCH] New test from Craig. From-SVN: r21097 --- gcc/testsuite/g77.f-torture/execute/auto0.f | 80 +++++++++++++++++++ gcc/testsuite/g77.f-torture/execute/auto1.f | 88 +++++++++++++++++++++ 2 files changed, 168 insertions(+) create mode 100644 gcc/testsuite/g77.f-torture/execute/auto0.f create mode 100644 gcc/testsuite/g77.f-torture/execute/auto1.f diff --git a/gcc/testsuite/g77.f-torture/execute/auto0.f b/gcc/testsuite/g77.f-torture/execute/auto0.f new file mode 100644 index 000000000000..4b6b2f51a8e6 --- /dev/null +++ b/gcc/testsuite/g77.f-torture/execute/auto0.f @@ -0,0 +1,80 @@ +* Test automatic arrays. + program auto0 + implicit none + integer i + integer j0(40) + integer j1(40) + integer jc0(40) + integer jc1(40) + common /jc0/ jc0 + common /jc1/ jc1 + + data j0/40*3/ + data j1/40*4/ + + i = 40 + call a1 (j0, j1, i) + + do i = 1, 40 + if (j0(i) .ne. 4) call abort + if (j1(i) .ne. 3) call abort + if (jc0(i) .ne. 6) call abort + if (jc1(i) .ne. 5) call abort + end do + + end + + block data jc + implicit none + integer jc0(40) + integer jc1(40) + common /jc0/ jc0 + common /jc1/ jc1 + + data jc0/40*5/ + data jc1/40*6/ + + end + + subroutine a1 (j0, j1, n) + implicit none + integer j0(40), j1(40), n + integer k0(n), k1(n) + integer i + integer jc0(40) + integer jc1(40) + common /jc0/ jc0 + common /jc1/ jc1 + + do i = 1, 40 + j0(i) = j1(i) - j0(i) + jc0(i) = jc1(i) - jc0(i) + end do + + n = -1 + + do i = 1, 40 + k0(i) = n + k1(i) = n + end do + + do i = 1, 40 + j1(i) = j1(i) + k0(i) * j0(i) + jc1(i) = jc1(i) + k1(i) * jc0(i) + end do + + n = 500 + + do i = 1, 40 + if (k0(i) .ne. -1) call abort + k0(i) = n + if (k1(i) .ne. -1) call abort + k1(i) = n + end do + + do i = 1, 40 + j0(i) = j1(i) + j0(i) + jc0(i) = jc1(i) + jc0(i) + end do + + end diff --git a/gcc/testsuite/g77.f-torture/execute/auto1.f b/gcc/testsuite/g77.f-torture/execute/auto1.f new file mode 100644 index 000000000000..ab9044ceca53 --- /dev/null +++ b/gcc/testsuite/g77.f-torture/execute/auto1.f @@ -0,0 +1,88 @@ +* Test automatic arrays. + program auto1 + implicit none + integer i + integer j0(40) + integer j1(40) + integer jc0(40) + integer jc1(40) + common /jc0/ jc0 + common /jc1/ jc1 + + data j0/40*3/ + data j1/40*4/ + + i = 40 + call a1 (j0, j1, i) + + do i = 1, 40 + if (j0(i) .ne. 4) call abort + if (j1(i) .ne. 3) call abort + if (jc0(i) .ne. 6) call abort + if (jc1(i) .ne. 5) call abort + end do + + end + + block data jc + implicit none + integer jc0(40) + integer jc1(40) + common /jc0/ jc0 + common /jc1/ jc1 + + data jc0/40*5/ + data jc1/40*6/ + + end + + subroutine a1 (j0, j1, n) + implicit none + integer j0(40), j1(40), n + integer k0(n,3,2), k1(n,3,2) + integer i,j,k + integer jc0(40) + integer jc1(40) + common /jc0/ jc0 + common /jc1/ jc1 + + do i = 1, 40 + j0(i) = j1(i) - j0(i) + jc0(i) = jc1(i) - jc0(i) + end do + + n = -1 + + do k = 1, 2 + do j = 1, 3 + do i = 1, 40 + k0(i, j, k) = n + k1(i, j, k) = n + end do + end do + end do + + do i = 1, 40 + j1(i) = j1(i) + k0(i, 3, 2) * j0(i) + jc1(i) = jc1(i) + k1(i, 1, 1) * jc0(i) + end do + + n = 500 + + do k = 1, 2 + do j = 1, 3 + do i = 1, 40 + if (k0(i, j, k) .ne. -1) call abort + k0(i, j, k) = n + if (k1(i, j, k) .ne. -1) call abort + k1(i, j, k) = n + end do + end do + end do + + do i = 1, 40 + j0(i) = j1(i) + j0(i) + jc0(i) = jc1(i) + jc0(i) + end do + + end -- 2.47.2