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