Reset branch to trunk.
[official-gcc.git] / trunk / gcc / testsuite / gfortran.fortran-torture / execute / intrinsic_size.f90
blob729c55f228304c9c568aea3be1dcabb62d91bf02
1 ! Program to test the SIZE intrinsics
2 program testsize
3 implicit none
4 real, dimension(:, :), allocatable :: a
5 integer, dimension(5) :: j
6 integer, dimension(2, 3) :: b
7 integer i
9 if (size (b(2, :), 1) .ne. 3) call abort
11 allocate (a(3:8, 5:7))
13 ! With one parameter
14 if (size(a) .ne. 18) call abort
16 ! With two parameters, assigning to an array
17 j = size(a, 1)
18 if (any (j .ne. (/6, 6, 6, 6, 6/))) call abort
20 ! With a variable second parameter
21 i = 2
22 i = size(a, i)
23 if (i .ne. 3) call abort
25 call test(a)
26 contains
28 subroutine test (a)
29 real, dimension (1:, 1:) :: a
30 integer i
32 i = 2
33 if ((size(a, 1) .ne. 6) .or. (size(a, i) .ne. 3)) call abort
34 if (size (a) .ne. 18 ) call abort
35 end subroutine
36 end program