xref: /aosp_15_r20/external/ksp/test-utils/testData/api/libOrigins.kt (revision af87fb4bb8e3042070d2a054e912924f599b22b7)
1*af87fb4bSXin Li /*
2*af87fb4bSXin Li  * Copyright 2020 Google LLC
3*af87fb4bSXin Li  * Copyright 2010-2020 JetBrains s.r.o. and Kotlin Programming Language contributors.
4*af87fb4bSXin Li  *
5*af87fb4bSXin Li  * Licensed under the Apache License, Version 2.0 (the "License");
6*af87fb4bSXin Li  * you may not use this file except in compliance with the License.
7*af87fb4bSXin Li  * You may obtain a copy of the License at
8*af87fb4bSXin Li  *
9*af87fb4bSXin Li  * http://www.apache.org/licenses/LICENSE-2.0
10*af87fb4bSXin Li  *
11*af87fb4bSXin Li  * Unless required by applicable law or agreed to in writing, software
12*af87fb4bSXin Li  * distributed under the License is distributed on an "AS IS" BASIS,
13*af87fb4bSXin Li  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14*af87fb4bSXin Li  * See the License for the specific language governing permissions and
15*af87fb4bSXin Li  * limitations under the License.
16*af87fb4bSXin Li  */
17*af87fb4bSXin Li 
18*af87fb4bSXin Li // TEST PROCESSOR: LibOriginsProcessor
19*af87fb4bSXin Li // EXPECTED:
20*af87fb4bSXin Li // annotation: Anno1: KOTLIN_LIB
21*af87fb4bSXin Li // annotation: Anno2: JAVA_LIB
22*af87fb4bSXin Li // annotation: Anno3: KOTLIN
23*af87fb4bSXin Li // annotation: Anno4: JAVA
24*af87fb4bSXin Li // classifier ref: Anno1: KOTLIN_LIB
25*af87fb4bSXin Li // classifier ref: Anno1: KOTLIN_LIB
26*af87fb4bSXin Li // classifier ref: Anno2: JAVA_LIB
27*af87fb4bSXin Li // classifier ref: Anno2: KOTLIN_LIB
28*af87fb4bSXin Li // classifier ref: Anno3: KOTLIN
29*af87fb4bSXin Li // classifier ref: Anno3: KOTLIN_LIB
30*af87fb4bSXin Li // classifier ref: Anno4: JAVA
31*af87fb4bSXin Li // classifier ref: Anno4: KOTLIN_LIB
32*af87fb4bSXin Li // classifier ref: Annotation: KOTLIN_LIB
33*af87fb4bSXin Li // classifier ref: Annotation: KOTLIN_LIB
34*af87fb4bSXin Li // classifier ref: Annotation: KOTLIN_LIB
35*af87fb4bSXin Li // classifier ref: Annotation: KOTLIN_LIB
36*af87fb4bSXin Li // classifier ref: Any: JAVA_LIB
37*af87fb4bSXin Li // classifier ref: Any: JAVA_LIB
38*af87fb4bSXin Li // classifier ref: Any: JAVA_LIB
39*af87fb4bSXin Li // classifier ref: Any: KOTLIN_LIB
40*af87fb4bSXin Li // classifier ref: Any: KOTLIN_LIB
41*af87fb4bSXin Li // classifier ref: Any: KOTLIN_LIB
42*af87fb4bSXin Li // classifier ref: ArrayList<(T2..T2?)>: JAVA_LIB
43*af87fb4bSXin Li // classifier ref: Byte: JAVA_LIB
44*af87fb4bSXin Li // classifier ref: Byte: JAVA_LIB
45*af87fb4bSXin Li // classifier ref: Byte: JAVA_LIB
46*af87fb4bSXin Li // classifier ref: Int: KOTLIN_LIB
47*af87fb4bSXin Li // classifier ref: Int: KOTLIN_LIB
48*af87fb4bSXin Li // classifier ref: Int: KOTLIN_LIB
49*af87fb4bSXin Li // classifier ref: Int: KOTLIN_LIB
50*af87fb4bSXin Li // classifier ref: Int: KOTLIN_LIB
51*af87fb4bSXin Li // classifier ref: Int: KOTLIN_LIB
52*af87fb4bSXin Li // classifier ref: Int: KOTLIN_LIB
53*af87fb4bSXin Li // classifier ref: Int: KOTLIN_LIB
54*af87fb4bSXin Li // classifier ref: Int: KOTLIN_LIB
55*af87fb4bSXin Li // classifier ref: Int: KOTLIN_LIB
56*af87fb4bSXin Li // classifier ref: Int: KOTLIN_LIB
57*af87fb4bSXin Li // classifier ref: Int: KOTLIN_LIB
58*af87fb4bSXin Li // classifier ref: JavaLib: JAVA_LIB
59*af87fb4bSXin Li // classifier ref: JavaLib: JAVA_LIB
60*af87fb4bSXin Li // classifier ref: JavaLib: JAVA_LIB
61*af87fb4bSXin Li // classifier ref: JavaLib<T2>: JAVA_LIB
62*af87fb4bSXin Li // classifier ref: KotlinLibClass: KOTLIN_LIB
63*af87fb4bSXin Li // classifier ref: KotlinLibClass: KOTLIN_LIB
64*af87fb4bSXin Li // classifier ref: KotlinLibClass: KOTLIN_LIB
65*af87fb4bSXin Li // classifier ref: KotlinLibClass: KOTLIN_LIB
66*af87fb4bSXin Li // classifier ref: KotlinLibClass: KOTLIN_LIB
67*af87fb4bSXin Li // classifier ref: KotlinLibClass: KOTLIN_LIB
68*af87fb4bSXin Li // classifier ref: KotlinLibClass<T1>: KOTLIN_LIB
69*af87fb4bSXin Li // classifier ref: KotlinSrcClass: SYNTHETIC
70*af87fb4bSXin Li // classifier ref: List<Int>: KOTLIN_LIB
71*af87fb4bSXin Li // classifier ref: List<T1>: KOTLIN_LIB
72*af87fb4bSXin Li // classifier ref: List<T1>: KOTLIN_LIB
73*af87fb4bSXin Li // classifier ref: List<T1>: KOTLIN_LIB
74*af87fb4bSXin Li // classifier ref: List<T1>: KOTLIN_LIB
75*af87fb4bSXin Li // classifier ref: Long: JAVA
76*af87fb4bSXin Li // classifier ref: Long: JAVA
77*af87fb4bSXin Li // classifier ref: Long: JAVA
78*af87fb4bSXin Li // classifier ref: Object: JAVA
79*af87fb4bSXin Li // classifier ref: Set: KOTLIN
80*af87fb4bSXin Li // classifier ref: Set: KOTLIN
81*af87fb4bSXin Li // classifier ref: Set: KOTLIN
82*af87fb4bSXin Li // classifier ref: Set: KOTLIN
83*af87fb4bSXin Li // classifier ref: Set<T3>: SYNTHETIC
84*af87fb4bSXin Li // classifier ref: Short: KOTLIN
85*af87fb4bSXin Li // classifier ref: Short: KOTLIN
86*af87fb4bSXin Li // classifier ref: Short: KOTLIN
87*af87fb4bSXin Li // classifier ref: Short: KOTLIN
88*af87fb4bSXin Li // classifier ref: Short: KOTLIN
89*af87fb4bSXin Li // classifier ref: Short: KOTLIN
90*af87fb4bSXin Li // classifier ref: Short: KOTLIN
91*af87fb4bSXin Li // classifier ref: Short: KOTLIN
92*af87fb4bSXin Li // classifier ref: Short: KOTLIN
93*af87fb4bSXin Li // classifier ref: Short: SYNTHETIC
94*af87fb4bSXin Li // classifier ref: Short: SYNTHETIC
95*af87fb4bSXin Li // classifier ref: Short: SYNTHETIC
96*af87fb4bSXin Li // classifier ref: T1: KOTLIN_LIB
97*af87fb4bSXin Li // classifier ref: T1: KOTLIN_LIB
98*af87fb4bSXin Li // classifier ref: T1: KOTLIN_LIB
99*af87fb4bSXin Li // classifier ref: T1: KOTLIN_LIB
100*af87fb4bSXin Li // classifier ref: T1: KOTLIN_LIB
101*af87fb4bSXin Li // classifier ref: T1: KOTLIN_LIB
102*af87fb4bSXin Li // classifier ref: T2: JAVA_LIB
103*af87fb4bSXin Li // classifier ref: T2: JAVA_LIB
104*af87fb4bSXin Li // classifier ref: T2: JAVA_LIB
105*af87fb4bSXin Li // classifier ref: T3: KOTLIN
106*af87fb4bSXin Li // classifier ref: T3: KOTLIN
107*af87fb4bSXin Li // classifier ref: T3: KOTLIN
108*af87fb4bSXin Li // classifier ref: T3: KOTLIN
109*af87fb4bSXin Li // classifier ref: T3: SYNTHETIC
110*af87fb4bSXin Li // classifier ref: T4: JAVA
111*af87fb4bSXin Li // classifier ref: T4: JAVA
112*af87fb4bSXin Li // declaration: <init>: KOTLIN
113*af87fb4bSXin Li // declaration: foo.bar.Anno1.<init>: KOTLIN_LIB
114*af87fb4bSXin Li // declaration: foo.bar.Anno1: KOTLIN_LIB
115*af87fb4bSXin Li // declaration: foo.bar.Anno2.<init>: KOTLIN_LIB
116*af87fb4bSXin Li // declaration: foo.bar.Anno2: KOTLIN_LIB
117*af87fb4bSXin Li // declaration: foo.bar.Anno3.<init>: KOTLIN_LIB
118*af87fb4bSXin Li // declaration: foo.bar.Anno3: KOTLIN_LIB
119*af87fb4bSXin Li // declaration: foo.bar.Anno4.<init>: KOTLIN_LIB
120*af87fb4bSXin Li // declaration: foo.bar.Anno4: KOTLIN_LIB
121*af87fb4bSXin Li // declaration: foo.bar.JavaLib.<init>: JAVA_LIB
122*af87fb4bSXin Li // declaration: foo.bar.JavaLib.T2: JAVA_LIB
123*af87fb4bSXin Li // declaration: foo.bar.JavaLib.T2: JAVA_LIB
124*af87fb4bSXin Li // declaration: foo.bar.JavaLib.f1: JAVA_LIB
125*af87fb4bSXin Li // declaration: foo.bar.JavaLib.javaLibField: JAVA_LIB
126*af87fb4bSXin Li // declaration: foo.bar.JavaLib.javaLibFunction: JAVA_LIB
127*af87fb4bSXin Li // declaration: foo.bar.JavaLib: JAVA_LIB
128*af87fb4bSXin Li // declaration: foo.bar.JavaSrc.<init>: SYNTHETIC
129*af87fb4bSXin Li // declaration: foo.bar.JavaSrc.LinkedList: JAVA
130*af87fb4bSXin Li // declaration: foo.bar.JavaSrc.f2: JAVA
131*af87fb4bSXin Li // declaration: foo.bar.JavaSrc.javaSrcField: JAVA
132*af87fb4bSXin Li // declaration: foo.bar.JavaSrc.javaSrcFunction: JAVA
133*af87fb4bSXin Li // declaration: foo.bar.JavaSrc.p0: JAVA
134*af87fb4bSXin Li // declaration: foo.bar.JavaSrc: JAVA
135*af87fb4bSXin Li // declaration: foo.bar.KotlinLibClass.<init>: KOTLIN_LIB
136*af87fb4bSXin Li // declaration: foo.bar.KotlinLibClass.T1: KOTLIN_LIB
137*af87fb4bSXin Li // declaration: foo.bar.KotlinLibClass.T1: KOTLIN_LIB
138*af87fb4bSXin Li // declaration: foo.bar.KotlinLibClass.f1: KOTLIN_LIB
139*af87fb4bSXin Li // declaration: foo.bar.KotlinLibClass.f2: KOTLIN_LIB
140*af87fb4bSXin Li // declaration: foo.bar.KotlinLibClass.f3: KOTLIN_LIB
141*af87fb4bSXin Li // declaration: foo.bar.KotlinLibClass.p1: KOTLIN_LIB
142*af87fb4bSXin Li // declaration: foo.bar.KotlinLibClass.p2: KOTLIN_LIB
143*af87fb4bSXin Li // declaration: foo.bar.KotlinLibClass.p3: KOTLIN_LIB
144*af87fb4bSXin Li // declaration: foo.bar.KotlinLibClass: KOTLIN_LIB
145*af87fb4bSXin Li // declaration: foo.bar.KotlinSrcClass.T3: KOTLIN
146*af87fb4bSXin Li // declaration: foo.bar.KotlinSrcClass.g1: KOTLIN
147*af87fb4bSXin Li // declaration: foo.bar.KotlinSrcClass.g2: KOTLIN
148*af87fb4bSXin Li // declaration: foo.bar.KotlinSrcClass.g3: KOTLIN
149*af87fb4bSXin Li // declaration: foo.bar.KotlinSrcClass.q1: KOTLIN
150*af87fb4bSXin Li // declaration: foo.bar.KotlinSrcClass.q2: KOTLIN
151*af87fb4bSXin Li // declaration: foo.bar.KotlinSrcClass.q3: KOTLIN
152*af87fb4bSXin Li // declaration: foo.bar.KotlinSrcClass: KOTLIN
153*af87fb4bSXin Li // declaration: foo.bar.kotlinLibFuntion: KOTLIN_LIB
154*af87fb4bSXin Li // declaration: foo.bar.kotlinLibProperty: KOTLIN_LIB
155*af87fb4bSXin Li // declaration: foo.bar.kotlinSrcFuntion: KOTLIN
156*af87fb4bSXin Li // declaration: foo.bar.kotlinSrcProperty: KOTLIN
157*af87fb4bSXin Li // property accessor: kotlinLibProperty.getter(): KOTLIN_LIB
158*af87fb4bSXin Li // property accessor: kotlinSrcProperty.getter(): SYNTHETIC
159*af87fb4bSXin Li // property accessor: p1.getter(): KOTLIN_LIB
160*af87fb4bSXin Li // property accessor: p2.getter(): KOTLIN_LIB
161*af87fb4bSXin Li // property accessor: p3.getter(): KOTLIN_LIB
162*af87fb4bSXin Li // property accessor: q1.getter(): SYNTHETIC
163*af87fb4bSXin Li // property accessor: q2.getter(): SYNTHETIC
164*af87fb4bSXin Li // property accessor: q3.getter(): SYNTHETIC
165*af87fb4bSXin Li // reference: Anno1: KOTLIN_LIB
166*af87fb4bSXin Li // reference: Anno1: KOTLIN_LIB
167*af87fb4bSXin Li // reference: Anno2: JAVA_LIB
168*af87fb4bSXin Li // reference: Anno2: KOTLIN_LIB
169*af87fb4bSXin Li // reference: Anno3: KOTLIN
170*af87fb4bSXin Li // reference: Anno3: KOTLIN_LIB
171*af87fb4bSXin Li // reference: Anno4: JAVA
172*af87fb4bSXin Li // reference: Anno4: KOTLIN_LIB
173*af87fb4bSXin Li // reference: Annotation: KOTLIN_LIB
174*af87fb4bSXin Li // reference: Annotation: KOTLIN_LIB
175*af87fb4bSXin Li // reference: Annotation: KOTLIN_LIB
176*af87fb4bSXin Li // reference: Annotation: KOTLIN_LIB
177*af87fb4bSXin Li // reference: Any: JAVA_LIB
178*af87fb4bSXin Li // reference: Any: JAVA_LIB
179*af87fb4bSXin Li // reference: Any: JAVA_LIB
180*af87fb4bSXin Li // reference: Any: KOTLIN_LIB
181*af87fb4bSXin Li // reference: Any: KOTLIN_LIB
182*af87fb4bSXin Li // reference: Any: KOTLIN_LIB
183*af87fb4bSXin Li // reference: Any: SYNTHETIC
184*af87fb4bSXin Li // reference: Any?: SYNTHETIC
185*af87fb4bSXin Li // reference: ArrayList<(T2..T2?)>: JAVA_LIB
186*af87fb4bSXin Li // reference: Byte: JAVA_LIB
187*af87fb4bSXin Li // reference: Byte: JAVA_LIB
188*af87fb4bSXin Li // reference: Byte: JAVA_LIB
189*af87fb4bSXin Li // reference: Int: KOTLIN_LIB
190*af87fb4bSXin Li // reference: Int: KOTLIN_LIB
191*af87fb4bSXin Li // reference: Int: KOTLIN_LIB
192*af87fb4bSXin Li // reference: Int: KOTLIN_LIB
193*af87fb4bSXin Li // reference: Int: KOTLIN_LIB
194*af87fb4bSXin Li // reference: Int: KOTLIN_LIB
195*af87fb4bSXin Li // reference: Int: KOTLIN_LIB
196*af87fb4bSXin Li // reference: Int: KOTLIN_LIB
197*af87fb4bSXin Li // reference: Int: KOTLIN_LIB
198*af87fb4bSXin Li // reference: Int: KOTLIN_LIB
199*af87fb4bSXin Li // reference: Int: KOTLIN_LIB
200*af87fb4bSXin Li // reference: Int: KOTLIN_LIB
201*af87fb4bSXin Li // reference: JavaLib<T2>: JAVA_LIB
202*af87fb4bSXin Li // reference: JavaSrc: SYNTHETIC
203*af87fb4bSXin Li // reference: KotlinLibClass<T1>: KOTLIN_LIB
204*af87fb4bSXin Li // reference: KotlinSrcClass<T3>: KOTLIN
205*af87fb4bSXin Li // reference: List<Int>: KOTLIN_LIB
206*af87fb4bSXin Li // reference: List<T1>: KOTLIN_LIB
207*af87fb4bSXin Li // reference: List<T1>: KOTLIN_LIB
208*af87fb4bSXin Li // reference: List<T1>: KOTLIN_LIB
209*af87fb4bSXin Li // reference: List<T1>: KOTLIN_LIB
210*af87fb4bSXin Li // reference: Long: JAVA
211*af87fb4bSXin Li // reference: Long: JAVA
212*af87fb4bSXin Li // reference: Long: JAVA
213*af87fb4bSXin Li // reference: Object: JAVA
214*af87fb4bSXin Li // reference: Set: KOTLIN
215*af87fb4bSXin Li // reference: Set: KOTLIN
216*af87fb4bSXin Li // reference: Set: KOTLIN
217*af87fb4bSXin Li // reference: Set: KOTLIN
218*af87fb4bSXin Li // reference: Set<T3>: SYNTHETIC
219*af87fb4bSXin Li // reference: Short: KOTLIN
220*af87fb4bSXin Li // reference: Short: KOTLIN
221*af87fb4bSXin Li // reference: Short: KOTLIN
222*af87fb4bSXin Li // reference: Short: KOTLIN
223*af87fb4bSXin Li // reference: Short: KOTLIN
224*af87fb4bSXin Li // reference: Short: KOTLIN
225*af87fb4bSXin Li // reference: Short: KOTLIN
226*af87fb4bSXin Li // reference: Short: KOTLIN
227*af87fb4bSXin Li // reference: Short: KOTLIN
228*af87fb4bSXin Li // reference: Short: SYNTHETIC
229*af87fb4bSXin Li // reference: Short: SYNTHETIC
230*af87fb4bSXin Li // reference: Short: SYNTHETIC
231*af87fb4bSXin Li // reference: T1: KOTLIN_LIB
232*af87fb4bSXin Li // reference: T1: KOTLIN_LIB
233*af87fb4bSXin Li // reference: T1: KOTLIN_LIB
234*af87fb4bSXin Li // reference: T1: KOTLIN_LIB
235*af87fb4bSXin Li // reference: T1: KOTLIN_LIB
236*af87fb4bSXin Li // reference: T1: KOTLIN_LIB
237*af87fb4bSXin Li // reference: T2: JAVA_LIB
238*af87fb4bSXin Li // reference: T2: JAVA_LIB
239*af87fb4bSXin Li // reference: T2: JAVA_LIB
240*af87fb4bSXin Li // reference: T3: KOTLIN
241*af87fb4bSXin Li // reference: T3: KOTLIN
242*af87fb4bSXin Li // reference: T3: KOTLIN
243*af87fb4bSXin Li // reference: T3: KOTLIN
244*af87fb4bSXin Li // reference: T3: SYNTHETIC
245*af87fb4bSXin Li // reference: T4: JAVA
246*af87fb4bSXin Li // reference: T4: JAVA
247*af87fb4bSXin Li // type arg: INVARIANT Int: KOTLIN_LIB
248*af87fb4bSXin Li // type arg: INVARIANT Short: KOTLIN
249*af87fb4bSXin Li // type arg: INVARIANT T1: KOTLIN_LIB
250*af87fb4bSXin Li // type arg: INVARIANT T1: KOTLIN_LIB
251*af87fb4bSXin Li // type arg: INVARIANT T1: KOTLIN_LIB
252*af87fb4bSXin Li // type arg: INVARIANT T1: KOTLIN_LIB
253*af87fb4bSXin Li // type arg: INVARIANT T1: KOTLIN_LIB
254*af87fb4bSXin Li // type arg: INVARIANT T2: JAVA_LIB
255*af87fb4bSXin Li // type arg: INVARIANT T2: JAVA_LIB
256*af87fb4bSXin Li // type arg: INVARIANT T3: KOTLIN
257*af87fb4bSXin Li // type arg: INVARIANT T3: KOTLIN
258*af87fb4bSXin Li // type arg: INVARIANT T3: KOTLIN
259*af87fb4bSXin Li // type arg: INVARIANT T3: SYNTHETIC
260*af87fb4bSXin Li // value param: p0: JAVA_LIB
261*af87fb4bSXin Li // value param: p1: JAVA_LIB
262*af87fb4bSXin Li // value param: p1: KOTLIN_LIB
263*af87fb4bSXin Li // value param: p2: KOTLIN_LIB
264*af87fb4bSXin Li // value param: p4: KOTLIN_LIB
265*af87fb4bSXin Li // value param: p5: KOTLIN_LIB
266*af87fb4bSXin Li // value param: p6: KOTLIN_LIB
267*af87fb4bSXin Li // value param: q1: KOTLIN
268*af87fb4bSXin Li // value param: q2: KOTLIN
269*af87fb4bSXin Li // value param: q4: KOTLIN
270*af87fb4bSXin Li // value param: q5: KOTLIN
271*af87fb4bSXin Li // value param: q6: KOTLIN
272*af87fb4bSXin Li // END
273*af87fb4bSXin Li // MODULE: module1
274*af87fb4bSXin Li // FILE: KotlinLib.kt
275*af87fb4bSXin Li package foo.bar
276*af87fb4bSXin Li 
277*af87fb4bSXin Li val kotlinLibProperty: Int = 0
kotlinLibFuntionnull278*af87fb4bSXin Li fun kotlinLibFuntion(): Int = 0
279*af87fb4bSXin Li 
280*af87fb4bSXin Li annotation class Anno1
281*af87fb4bSXin Li annotation class Anno2
282*af87fb4bSXin Li annotation class Anno3
283*af87fb4bSXin Li annotation class Anno4
284*af87fb4bSXin Li 
285*af87fb4bSXin Li @Anno1
286*af87fb4bSXin Li class KotlinLibClass<T1>(val p1: List<T1>, val p2: Int)  {
287*af87fb4bSXin Li     val p3: Int = 0
288*af87fb4bSXin Li     fun f1(p4: T1): Int = 0
289*af87fb4bSXin Li     fun f2(p5: List<T1>): Int = 0
290*af87fb4bSXin Li     fun f3(p6: List<Int>): Int = 0
291*af87fb4bSXin Li }
292*af87fb4bSXin Li 
293*af87fb4bSXin Li // FILE: JavaLib.java
294*af87fb4bSXin Li package foo.bar;
295*af87fb4bSXin Li 
296*af87fb4bSXin Li import java.util.ArrayList;
297*af87fb4bSXin Li 
298*af87fb4bSXin Li @Anno2
299*af87fb4bSXin Li class JavaLib<T2> {
300*af87fb4bSXin Li     Byte javaLibField = 0;
301*af87fb4bSXin Li     Byte javaLibFunction() {
302*af87fb4bSXin Li         return 0;
303*af87fb4bSXin Li     }
304*af87fb4bSXin Li     Byte f1(T2 p0, ArrayList<T2> p1) {
305*af87fb4bSXin Li         return 0;
306*af87fb4bSXin Li     }
307*af87fb4bSXin Li }
308*af87fb4bSXin Li 
309*af87fb4bSXin Li // MODULE: main(module1)
310*af87fb4bSXin Li // FILE: KotlinSrc.kt
311*af87fb4bSXin Li package foo.bar
312*af87fb4bSXin Li val kotlinSrcProperty: Short = 0
kotlinSrcFuntionnull313*af87fb4bSXin Li fun kotlinSrcFuntion(): Short = 0
314*af87fb4bSXin Li 
315*af87fb4bSXin Li @Anno3
316*af87fb4bSXin Li class KotlinSrcClass<T3>(val q1: Set<T3>, val q2: Short)  {
317*af87fb4bSXin Li     val q3: Short = 0
318*af87fb4bSXin Li     fun g1(q4: T3): Short = 0
319*af87fb4bSXin Li     fun g2(q5: Set<T3>): Short = 0
320*af87fb4bSXin Li     fun g3(q6: Set<Short>): Short = 0
321*af87fb4bSXin Li }
322*af87fb4bSXin Li 
323*af87fb4bSXin Li // FILE: JavaSrc.java
324*af87fb4bSXin Li package foo.bar;
325*af87fb4bSXin Li 
326*af87fb4bSXin Li import java.util.LinkedList;
327*af87fb4bSXin Li 
328*af87fb4bSXin Li @Anno4
329*af87fb4bSXin Li class JavaSrc {
330*af87fb4bSXin Li     Long javaSrcField = 0;
331*af87fb4bSXin Li     Long javaSrcFunction() {
332*af87fb4bSXin Li         return 0;
333*af87fb4bSXin Li     }
334*af87fb4bSXin Li     Long f2<T4>(T4 p0, LinkedList<T4> p1) {
335*af87fb4bSXin Li         return 0;
336*af87fb4bSXin Li     }
337*af87fb4bSXin Li }
338*af87fb4bSXin Li 
339