From 338281e05fe4f96cd7a927af71e84d15e95021da Mon Sep 17 00:00:00 2001 From: Mikhail Glukhikh Date: Fri, 27 Dec 2019 13:14:15 +0300 Subject: [PATCH] [FIR TEST]: add test for KT-35730 --- .../expresssions/objectOverrideCallViaImport.kt | 12 ++++++++++++ .../expresssions/objectOverrideCallViaImport.txt | 15 +++++++++++++++ .../kotlin/fir/FirDiagnosticsTestGenerated.java | 5 +++++ .../FirDiagnosticsWithLightTreeTestGenerated.java | 5 +++++ 4 files changed, 37 insertions(+) create mode 100644 compiler/fir/resolve/testData/resolve/expresssions/objectOverrideCallViaImport.kt create mode 100644 compiler/fir/resolve/testData/resolve/expresssions/objectOverrideCallViaImport.txt diff --git a/compiler/fir/resolve/testData/resolve/expresssions/objectOverrideCallViaImport.kt b/compiler/fir/resolve/testData/resolve/expresssions/objectOverrideCallViaImport.kt new file mode 100644 index 00000000000..9462e12290d --- /dev/null +++ b/compiler/fir/resolve/testData/resolve/expresssions/objectOverrideCallViaImport.kt @@ -0,0 +1,12 @@ +import Derived.foo + +interface Base { + fun foo() {} +} + +object Derived : Base + +fun test() { + // See KT-35730 + foo() // Derived.foo is more correct here +} \ No newline at end of file diff --git a/compiler/fir/resolve/testData/resolve/expresssions/objectOverrideCallViaImport.txt b/compiler/fir/resolve/testData/resolve/expresssions/objectOverrideCallViaImport.txt new file mode 100644 index 00000000000..d5451cbd95d --- /dev/null +++ b/compiler/fir/resolve/testData/resolve/expresssions/objectOverrideCallViaImport.txt @@ -0,0 +1,15 @@ +FILE: objectOverrideCallViaImport.kt + public abstract interface Base : R|kotlin/Any| { + public open fun foo(): R|kotlin/Unit| { + } + + } + public final object Derived : R|Base| { + private constructor(): R|Derived| { + super() + } + + } + public final fun test(): R|kotlin/Unit| { + R|/Base.foo|() + } diff --git a/compiler/fir/resolve/tests/org/jetbrains/kotlin/fir/FirDiagnosticsTestGenerated.java b/compiler/fir/resolve/tests/org/jetbrains/kotlin/fir/FirDiagnosticsTestGenerated.java index 6f983854fa1..f7a8825a13f 100644 --- a/compiler/fir/resolve/tests/org/jetbrains/kotlin/fir/FirDiagnosticsTestGenerated.java +++ b/compiler/fir/resolve/tests/org/jetbrains/kotlin/fir/FirDiagnosticsTestGenerated.java @@ -539,6 +539,11 @@ public class FirDiagnosticsTestGenerated extends AbstractFirDiagnosticsTest { runTest("compiler/fir/resolve/testData/resolve/expresssions/nestedVisibility.kt"); } + @TestMetadata("objectOverrideCallViaImport.kt") + public void testObjectOverrideCallViaImport() throws Exception { + runTest("compiler/fir/resolve/testData/resolve/expresssions/objectOverrideCallViaImport.kt"); + } + @TestMetadata("objectVsProperty.kt") public void testObjectVsProperty() throws Exception { runTest("compiler/fir/resolve/testData/resolve/expresssions/objectVsProperty.kt"); diff --git a/compiler/fir/resolve/tests/org/jetbrains/kotlin/fir/FirDiagnosticsWithLightTreeTestGenerated.java b/compiler/fir/resolve/tests/org/jetbrains/kotlin/fir/FirDiagnosticsWithLightTreeTestGenerated.java index 6e460523d1d..da271c7eae6 100644 --- a/compiler/fir/resolve/tests/org/jetbrains/kotlin/fir/FirDiagnosticsWithLightTreeTestGenerated.java +++ b/compiler/fir/resolve/tests/org/jetbrains/kotlin/fir/FirDiagnosticsWithLightTreeTestGenerated.java @@ -539,6 +539,11 @@ public class FirDiagnosticsWithLightTreeTestGenerated extends AbstractFirDiagnos runTest("compiler/fir/resolve/testData/resolve/expresssions/nestedVisibility.kt"); } + @TestMetadata("objectOverrideCallViaImport.kt") + public void testObjectOverrideCallViaImport() throws Exception { + runTest("compiler/fir/resolve/testData/resolve/expresssions/objectOverrideCallViaImport.kt"); + } + @TestMetadata("objectVsProperty.kt") public void testObjectVsProperty() throws Exception { runTest("compiler/fir/resolve/testData/resolve/expresssions/objectVsProperty.kt");