1 ! RUN: %S/test_symbols.sh %s %t %flang_fc1
3 !DEF: /s1 (Subroutine) Subprogram
5 !DEF: /s1/a ObjectEntity REAL(4)
6 !DEF: /s1/b ObjectEntity REAL(4)
8 !DEF: /s1/i ObjectEntity INTEGER(8)
10 !DEF: /s1/Forall1/i ObjectEntity INTEGER(8)
17 !DEF: /s1/Forall2/i ObjectEntity INTEGER(8)
20 forall(i
=1:10)a(i
) = b(i
)
23 !DEF: /s2 (Subroutine) Subprogram
25 !DEF: /s2/a ObjectEntity REAL(4)
27 !DEF: /s2/i ObjectEntity INTEGER(4)
29 !DEF: /s2/Block1/i ObjectEntity INTEGER(4)
43 !DEF: /s3 (Subroutine) Subprogram
45 !DEF: /s3/n PARAMETER ObjectEntity INTEGER(4)
46 integer, parameter :: n
= 4
47 !DEF: /s3/n2 PARAMETER ObjectEntity INTEGER(4)
49 integer, parameter :: n2
= n
*n
51 !DEF: /s3/x (InDataStmt) ObjectEntity REAL(4)
52 real, dimension(n
,n
) :: x
54 !DEF: /s3/ImpliedDos1/k (Implicit) ObjectEntity INTEGER(4)
55 !DEF: /s3/ImpliedDos1/j ObjectEntity INTEGER(8)
58 data ((x(k
,j
),integer(kind
=8)::j
=1,n
),k
=1,n
)/n2
*3.0/
61 !DEF: /s4 (Subroutine) Subprogram
63 !DEF: /s4/t DerivedType
64 !DEF: /s4/t/k TypeParam INTEGER(4)
68 !DEF: /s4/t/a ObjectEntity INTEGER(4)
72 !DEF: /s4/x (InDataStmt) ObjectEntity TYPE(t(k=1_4))
82 !DEF: /s5 (Subroutine) Subprogram
84 !DEF: /s5/t DerivedType
85 !DEF: /s5/t/l TypeParam INTEGER(4)
91 !DEF: /s5/x ALLOCATABLE ObjectEntity TYPE(t(l=:))
92 type(t(:)), allocatable
:: x
93 !DEF: /s5/y ALLOCATABLE ObjectEntity REAL(4)
94 real, allocatable
:: y
102 !DEF: /s6 (Subroutine) Subprogram
104 !DEF: /s6/j ObjectEntity INTEGER(8)
106 !DEF: /s6/a ObjectEntity INTEGER(4)
108 !DEF: /s6/Block1/i ObjectEntity INTEGER(4)
109 !DEF: /s6/Block1/j (LocalityLocal) HostAssoc INTEGER(8)
110 !DEF: /s6/Block1/k (Implicit, LocalityLocalInit) HostAssoc INTEGER(4)
111 !DEF: /s6/Block1/a (LocalityShared) HostAssoc INTEGER(4)
112 do concurrent(integer::i
=1:5)local(j
)local_init(k
)shared(a
)
120 !DEF: /s7 (Subroutine) Subprogram
122 !DEF: /s7/one PARAMETER ObjectEntity REAL(4)
123 real, parameter :: one
= 1.0
124 !DEF: /s7/z ObjectEntity COMPLEX(4)
126 complex :: z
= (one
, -one
)
129 !DEF: /s8 (Subroutine) Subprogram
131 !DEF: /s8/one PARAMETER ObjectEntity REAL(4)
132 real, parameter :: one
= 1.0
133 !DEF: /s8/y (InDataStmt) ObjectEntity REAL(4)
134 !DEF: /s8/z (InDataStmt) ObjectEntity REAL(4)
137 !DEF: /s8/ImpliedDos1/i (Implicit) ObjectEntity INTEGER(4)
139 !DEF: /s8/ImpliedDos2/i (Implicit) ObjectEntity INTEGER(4)
140 !DEF: /s8/x (Implicit, InDataStmt) ObjectEntity REAL(4)
142 data (y(i
),i
=1,10),(z(i
),i
=1,10),x
/21*one
/