1! RUN: %S/test_symbols.sh %s %t %flang_fc1
2! REQUIRES: shell
3! Test that intent-stmt and subprogram prefix and suffix are resolved.
4
5!DEF: /m Module
6module m
7 !DEF: /m/f PRIVATE, PURE, RECURSIVE (Function) Subprogram REAL(4)
8 private :: f
9contains
10 !DEF: /m/s BIND(C), PUBLIC, PURE (Subroutine) Subprogram
11 !DEF: /m/s/x INTENT(IN) (Implicit) ObjectEntity REAL(4)
12 !DEF: /m/s/y INTENT(INOUT) (Implicit) ObjectEntity REAL(4)
13 pure subroutine s (x, y) bind(c)
14  !REF: /m/s/x
15  intent(in) :: x
16  !REF: /m/s/y
17  intent(inout) :: y
18 contains
19  !DEF: /m/s/ss PURE (Subroutine) Subprogram
20  pure subroutine ss
21  end subroutine
22 end subroutine
23 !REF: /m/f
24 !DEF: /m/f/x ALLOCATABLE ObjectEntity REAL(4)
25 recursive pure function f() result(x)
26  !REF: /m/f/x
27  real, allocatable :: x
28  !REF: /m/f/x
29  x = 1.0
30 end function
31end module
32