1 ! Like array_constructor_6.f90, but check constructors in which the length
2 ! of each subarray can only be determined at run time.
9 real, dimension (:, :), pointer :: gen
10 integer :: order
, i
, j
12 allocate (gen (order
, order
+ 1))
13 forall (i
= 1 : order
, j
= 1 : order
+ 1) gen (i
, j
) = i
* i
+ j
17 subroutine build (order
)
20 call test (order
, 0, (/ (gen (i
), i
= 1, order
) /))
21 call test (3, 2, (/ ((/ 1.5, 1.5, gen (i
) /), i
= 1, 3) /))
24 subroutine test (order
, prefix
, values
)
25 real, dimension (:) :: values
26 integer :: order
, prefix
, last
, i
, j
, k
32 if (values (last
) .ne
. 1.5) call abort
37 if (values (last
) .ne
. j
+ k
* k
) call abort
41 if (size (values
, dim
= 1) .ne
. last
) call abort