27 lines
489 B
Fortran
27 lines
489 B
Fortran
! { dg-do run }
|
|
module b
|
|
type cat
|
|
integer :: i = 0
|
|
end type cat
|
|
end module b
|
|
|
|
program a
|
|
use b
|
|
type(cat) z
|
|
integer :: i = 0, j(4,3,2) = 0
|
|
call string_comp(i)
|
|
if (i /= 3) call abort
|
|
call string_comp(z%i)
|
|
if (z%i /= 3) call abort
|
|
call string_comp(j(1,2,1))
|
|
if (j(1,2,1) /= 3) call abort
|
|
end program a
|
|
|
|
subroutine string_comp(i)
|
|
integer, parameter :: map(0:50) = 3
|
|
integer :: i
|
|
i = map(42)
|
|
end subroutine string_comp
|
|
|
|
! { dg-final { cleanup-modules "b" } }
|