1 ! Related to PR 15326. Try calling string functions whose lengths depend
2 ! on a dummy procedure.
4 integer pure
function double (x
)
5 integer, intent (in
) :: x
13 integer pure
function double (x
)
14 integer, intent (in
) :: x
18 call test (f1 (double, 100), 200)
19 call test (f2 (double, 70), 140)
21 call indirect (double)
26 integer pure
function fn (x
)
27 integer, intent (in
) :: x
30 character (len
= fn (i
)) :: f1
36 character (len
= fn (i
)) :: f2
40 subroutine indirect (fn
)
42 integer pure
function fn (x
)
43 integer, intent (in
) :: x
46 call test (f1 (fn
, 100), 200)
47 call test (f2 (fn
, 70), 140)
48 end subroutine indirect
50 subroutine test (string
, length
)
51 character (len
= *) :: string
52 integer, intent (in
) :: length
53 if (len (string
) .ne
. length
) call abort