1! RUN: %S/test_symbols.sh %s %t %f18
2!DEF: /m1 Module
3module m1
4contains
5 !DEF: /m1/foo_complex PUBLIC (Subroutine) Subprogram
6 !DEF: /m1/foo_complex/z ObjectEntity COMPLEX(4)
7 subroutine foo_complex (z)
8  !REF: /m1/foo_complex/z
9  complex z
10 end subroutine
11end module
12!DEF: /m2 Module
13module m2
14 !REF: /m1
15 use :: m1
16 !DEF: /m2/foo PUBLIC (Subroutine) Generic
17 interface foo
18  !DEF: /m2/foo_int PUBLIC (Subroutine) Subprogram
19  module procedure :: foo_int
20  !DEF: /m2/foo_real EXTERNAL, PUBLIC (Subroutine) Subprogram
21  procedure :: foo_real
22  !DEF: /m2/foo_complex PUBLIC (Subroutine) Use
23  procedure :: foo_complex
24 end interface
25 interface
26  !REF: /m2/foo_real
27  !DEF: /m2/foo_real/r ObjectEntity REAL(4)
28  subroutine foo_real (r)
29   !REF: /m2/foo_real/r
30   real r
31  end subroutine
32 end interface
33contains
34 !REF: /m2/foo_int
35 !DEF: /m2/foo_int/i ObjectEntity INTEGER(4)
36 subroutine foo_int (i)
37  !REF: /m2/foo_int/i
38  integer i
39 end subroutine
40end module
41