[FIR] Add test for qualified access to base class member case
This commit is contained in:
@@ -0,0 +1,25 @@
|
||||
// FILE: JavaClass.java
|
||||
|
||||
public class JavaClass {
|
||||
public static void bar() {}
|
||||
}
|
||||
|
||||
// FILE: Test.kt
|
||||
|
||||
open class AA : JavaClass() {
|
||||
object C
|
||||
}
|
||||
|
||||
class BB : AA() {
|
||||
object D
|
||||
}
|
||||
|
||||
fun test() {
|
||||
val bbd = BB.D
|
||||
val aac = AA.C
|
||||
JavaClass.bar()
|
||||
|
||||
val errC = BB.<!UNRESOLVED_REFERENCE!>C<!>
|
||||
val errBarViaBB = BB.bar()
|
||||
val errBarViaAA = AA.bar()
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
FILE: Test.kt
|
||||
public open class AA : R|JavaClass| {
|
||||
public constructor(): R|AA| {
|
||||
super<R|JavaClass|>()
|
||||
}
|
||||
|
||||
public final object C : R|kotlin/Any| {
|
||||
private constructor(): R|AA.C| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
public final class BB : R|AA| {
|
||||
public constructor(): R|BB| {
|
||||
super<R|AA|>()
|
||||
}
|
||||
|
||||
public final object D : R|kotlin/Any| {
|
||||
private constructor(): R|BB.D| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
public final fun test(): R|kotlin/Unit| {
|
||||
lval bbd: R|BB.D| = Q|BB.D|
|
||||
lval aac: R|AA.C| = Q|AA.C|
|
||||
Q|JavaClass|.R|/JavaClass.bar|()
|
||||
lval errC: <ERROR TYPE REF: Unresolved name: C> = Q|BB|.<Unresolved name: C>#
|
||||
lval errBarViaBB: R|kotlin/Unit| = Q|BB|.R|/JavaClass.bar|()
|
||||
lval errBarViaAA: R|kotlin/Unit| = Q|AA|.R|/JavaClass.bar|()
|
||||
}
|
||||
+5
@@ -419,6 +419,11 @@ public class FirDiagnosticsTestGenerated extends AbstractFirDiagnosticsTest {
|
||||
runTest("compiler/fir/resolve/testData/resolve/expresssions/annotations.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("baseQualifier.kt")
|
||||
public void testBaseQualifier() throws Exception {
|
||||
runTest("compiler/fir/resolve/testData/resolve/expresssions/baseQualifier.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("checkArguments.kt")
|
||||
public void testCheckArguments() throws Exception {
|
||||
runTest("compiler/fir/resolve/testData/resolve/expresssions/checkArguments.kt");
|
||||
|
||||
Generated
+5
@@ -419,6 +419,11 @@ public class FirDiagnosticsWithLightTreeTestGenerated extends AbstractFirDiagnos
|
||||
runTest("compiler/fir/resolve/testData/resolve/expresssions/annotations.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("baseQualifier.kt")
|
||||
public void testBaseQualifier() throws Exception {
|
||||
runTest("compiler/fir/resolve/testData/resolve/expresssions/baseQualifier.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("checkArguments.kt")
|
||||
public void testCheckArguments() throws Exception {
|
||||
runTest("compiler/fir/resolve/testData/resolve/expresssions/checkArguments.kt");
|
||||
|
||||
Reference in New Issue
Block a user