1 ! RUN: %python %S/test_symbols.py %s %flang_fc1
2 ! Explicit and implicit entities in blocks
4 !DEF: /s1 (Subroutine) Subprogram
6 !DEF: /s1/x ObjectEntity INTEGER(4)
9 !DEF: /s1/BlockConstruct1/y ObjectEntity INTEGER(4)
13 !REF: /s1/BlockConstruct1/y
17 !DEF: /s1/BlockConstruct2/y ObjectEntity REAL(4)
19 !REF: /s1/BlockConstruct2/y
24 !DEF: /s2 (Subroutine) Subprogram
28 !DEF: /s2/x (Implicit) ObjectEntity INTEGER(4)
30 !DEF: /s2/y (Implicit) ObjectEntity REAL(4)
34 !DEF: /s2/s (Subroutine) Subprogram
36 !DEF: /s2/s/x (Implicit) HostAssoc INTEGER(4)
38 !DEF: /s2/s/w (Implicit) ObjectEntity INTEGER(4)
43 !DEF: /s3 (Subroutine) Subprogram
45 !DEF: /s3/j ObjectEntity INTEGER(8)
48 !DEF: /s3/BlockConstruct1/t DerivedType
50 !DEF: /s3/BlockConstruct1/t/x ObjectEntity REAL(4)
51 !DEF: /s3/BlockConstruct1/t/ImpliedDos1/i (Implicit) ObjectEntity INTEGER(4)
52 real :: x(10) = [(i
, i
=1,10)]
53 !DEF: /s3/BlockConstruct1/t/y ObjectEntity REAL(4)
54 !DEF: /s3/BlockConstruct1/t/ImpliedDos2/j ObjectEntity INTEGER(8)
55 real :: y(10) = [(j
, j
=1,10)]
60 !DEF: /s4 (Subroutine) Subprogram
64 !DEF: /s4/s EXTERNAL (Subroutine) Subprogram
65 !DEF: /s4/s/x (Implicit) ObjectEntity REAL(4)
66 !DEF: /s4/s/y (Implicit) ObjectEntity INTEGER(4)
73 !DEF: /s5 (Subroutine) Subprogram
76 !DEF: /s5/BlockConstruct1/x (Implicit) ObjectEntity REAL(4)
79 !DEF: /s5/BlockConstruct1/BlockConstruct1/x (Implicit) ObjectEntity REAL(4)
83 !DEF: /s5/x (Implicit) ObjectEntity REAL(4)
87 !DEF: /s6 (Subroutine) Subprogram
89 !DEF: /s6/i ObjectEntity INTEGER(4)
90 !DEF: /s6/j ObjectEntity INTEGER(4)
91 !DEF: /s6/k ObjectEntity INTEGER(4)
94 !DEF: /s6/BlockConstruct1/i ASYNCHRONOUS, VOLATILE HostAssoc INTEGER(4)
96 !DEF: /s6/BlockConstruct1/j ASYNCHRONOUS HostAssoc INTEGER(4)
98 !REF: /s6/BlockConstruct1/i
100 !DEF: /s6/BlockConstruct1/k TARGET (Implicit) ObjectEntity INTEGER(4)
107 !DEF: /m7/i PUBLIC ObjectEntity INTEGER(4)
108 !DEF: /m7/j PUBLIC ObjectEntity INTEGER(4)
111 !DEF: /s7 (Subroutine) Subprogram
115 !DEF: /s7/j VOLATILE Use INTEGER(4)