1 ! Program to test derived type initializers and constructors
10 ! Explicit initializer
11 type (t
) :: var
= t(1, 2)
12 ! Type (default) initializer
14 ! Initialization of arrays
15 type (t
), dimension(2) :: var3
16 type (t
), dimension(2) :: var4
= (/t(7, 9), t(8, 6)/)
18 if (var
%i
.ne
. 1 .or
. var
%j
.ne
. 2) call abort
19 if (var2
%j
.ne
. 4) call abort
21 if (var2
%i
.ne
. 6 .or
. var2
%j
.ne
. 5) call abort
23 if ((var3(1)%j
.ne
. 4) .or
. (var3(2)%j
.ne
. 4)) call abort
24 if ((var4(1)%i
.ne
. 7) .or
. (var4(2)%i
.ne
. 8) &
25 .or
. (var4(1)%j
.ne
. 9) .or
. (var4(2)%j
.ne
. 6)) call abort
27 ! Non-constant constructor
31 if (var2
%i
.ne
. 1 .or
. var2
%j
.ne
. 6) call abort