Break circular dependency between FIR dialect and utilities
[llvm-project.git] / flang / test / Semantics / symbol10.f90
blobba1f5ab45f53360f2af1830634b84d5d6b7eeda3
1 ! RUN: %python %S/test_symbols.py %s %flang_fc1
2 !DEF: /m1 Module
3 module m1
4 contains
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
11 end module
12 !DEF: /m2 Module
13 module 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
33 contains
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
40 end module