1 ! RUN: %python %S/test_symbols.py %s %flang_fc1
2 ! References to generic functions with forward-referenced specifics.
6 !DEF: /m/specific4 PUBLIC (Function) Subprogram INTEGER(4)
7 !DEF: /m/specific4/x INTENT(IN) ObjectEntity INTEGER(4)
8 integer function specific4(x
)
10 integer, intent(in
) :: x(*)
12 !DEF: /m/test PUBLIC (Subroutine) Subprogram
13 !DEF: /m/test/specific1 EXTERNAL (Function) Subprogram INTEGER(4)
14 subroutine test (specific1
)
15 !DEF: /m/test/generic (Function) Generic
17 !REF: /m/test/specific1
18 procedure
:: specific1
19 !DEF: /m/test/specific2 EXTERNAL, PURE (Function) Subprogram INTEGER(4)
20 procedure
:: specific2
21 !DEF: /m/test/specific3 EXTERNAL (Function) Subprogram INTEGER(4)
22 procedure
:: specific3
23 !DEF: /m/test/specific4 EXTERNAL (Function) Subprogram INTEGER(4)
24 procedure
:: specific4
27 !REF: /m/test/specific1
28 !DEF: /m/test/specific1/x INTENT(IN) ObjectEntity INTEGER(4)
29 integer function specific1(x
)
30 !REF: /m/test/specific1/x
31 integer, intent(in
) :: x
33 !REF: /m/test/specific2
34 !DEF: /m/test/specific2/x INTENT(IN) ObjectEntity INTEGER(4)
35 !DEF: /m/test/specific2/y INTENT(IN) ObjectEntity INTEGER(4)
36 pure
integer function specific2(x
, y
)
37 !REF: /m/test/specific2/x
38 !REF: /m/test/specific2/y
39 integer, intent(in
) :: x
, y
41 !REF: /m/test/specific3
42 !DEF: /m/test/specific3/x INTENT(IN) ObjectEntity INTEGER(4)
43 !DEF: /m/test/specific3/y INTENT(IN) ObjectEntity INTEGER(4)
44 integer function specific3(x
, y
)
47 !REF: /m/test/specific3/x
48 !REF: /m/test/specific3/y
49 !REF: /m/test/specific2
50 integer, intent(in
) :: x
, y(generic(1, x
))
52 !REF: /m/test/specific4
53 !DEF: /m/test/specific4/x INTENT(IN) ObjectEntity INTEGER(4)
54 integer function specific4(x
)
55 !REF: /m/test/specific4/x
56 integer, intent(in
) :: x(:)
59 !REF: /m/test/specific4