111
|
1 ! { dg-do run }
|
|
2 module b
|
|
3 type cat
|
|
4 integer :: i = 0
|
|
5 end type cat
|
|
6 end module b
|
|
7
|
|
8 program a
|
|
9 use b
|
|
10 type(cat) z
|
|
11 integer :: i = 0, j(4,3,2) = 0
|
|
12 call string_comp(i)
|
131
|
13 if (i /= 3) STOP 1
|
111
|
14 call string_comp(z%i)
|
131
|
15 if (z%i /= 3) STOP 2
|
111
|
16 call string_comp(j(1,2,1))
|
131
|
17 if (j(1,2,1) /= 3) STOP 3
|
111
|
18 end program a
|
|
19
|
|
20 subroutine string_comp(i)
|
|
21 integer, parameter :: map(0:50) = 3
|
|
22 integer :: i
|
|
23 i = map(42)
|
|
24 end subroutine string_comp
|