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