Fix warning with -Wsign-compare -Wsystem-headers
[official-gcc.git] / gcc / testsuite / gfortran.fortran-torture / execute / der_init.f90
blob483cf41d3c5beb71660a2ef07207f681f09235d3
1 ! Program to test derived type initializers and constructors
2 program der_init
3 implicit none
4 type t
5 integer :: i
6 integer :: j = 4
7 end type
8 integer :: m, n
10 ! Explicit initializer
11 type (t) :: var = t(1, 2)
12 ! Type (default) initializer
13 type (t) :: var2
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) STOP 1
19 if (var2%j .ne. 4) STOP 2
20 var2 = t(6, 5)
21 if (var2%i .ne. 6 .or. var2%j .ne. 5) STOP 3
23 if ((var3(1)%j .ne. 4) .or. (var3(2)%j .ne. 4)) STOP 4
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)) STOP 5
27 ! Non-constant constructor
28 n = 1
29 m = 5
30 var2 = t(n, n + m)
31 if (var2%i .ne. 1 .or. var2%j .ne. 6) STOP 6
32 end program