From 69a633993583594416f6fef5d94d7dd7fe39cded Mon Sep 17 00:00:00 2001 From: "Denis.Zharkov" Date: Tue, 6 Jun 2023 17:48:01 +0200 Subject: [PATCH] K2: Add test for obsolete KT-51793 ^KT-51793 Fixed --- ...CompilerTestFE10TestdataTestGenerated.java | 12 ++++++++ ...sticCompilerFE10TestDataTestGenerated.java | 12 ++++++++ ...eeOldFrontendDiagnosticsTestGenerated.java | 12 ++++++++ ...siOldFrontendDiagnosticsTestGenerated.java | 12 ++++++++ .../tests/resolve/invoke/kt51793.kt | 18 +++++++++++ .../tests/resolve/invoke/kt51793Complex.kt | 30 +++++++++++++++++++ .../test/runners/DiagnosticTestGenerated.java | 12 ++++++++ 7 files changed, 108 insertions(+) create mode 100644 compiler/testData/diagnostics/tests/resolve/invoke/kt51793.kt create mode 100644 compiler/testData/diagnostics/tests/resolve/invoke/kt51793Complex.kt diff --git a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/DiagnosticCompilerTestFE10TestdataTestGenerated.java b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/DiagnosticCompilerTestFE10TestdataTestGenerated.java index c3292a06f27..c6a71654104 100644 --- a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/DiagnosticCompilerTestFE10TestdataTestGenerated.java +++ b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/DiagnosticCompilerTestFE10TestdataTestGenerated.java @@ -27407,6 +27407,18 @@ public class DiagnosticCompilerTestFE10TestdataTestGenerated extends AbstractDia runTest("compiler/testData/diagnostics/tests/resolve/invoke/kt4321InvokeOnEnum.kt"); } + @Test + @TestMetadata("kt51793.kt") + public void testKt51793() throws Exception { + runTest("compiler/testData/diagnostics/tests/resolve/invoke/kt51793.kt"); + } + + @Test + @TestMetadata("kt51793Complex.kt") + public void testKt51793Complex() throws Exception { + runTest("compiler/testData/diagnostics/tests/resolve/invoke/kt51793Complex.kt"); + } + @Test @TestMetadata("kt9517.kt") public void testKt9517() throws Exception { diff --git a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirPreresolvedReversedDiagnosticCompilerFE10TestDataTestGenerated.java b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirPreresolvedReversedDiagnosticCompilerFE10TestDataTestGenerated.java index 47d6deb8fe1..97ba54812e5 100644 --- a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirPreresolvedReversedDiagnosticCompilerFE10TestDataTestGenerated.java +++ b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirPreresolvedReversedDiagnosticCompilerFE10TestDataTestGenerated.java @@ -27407,6 +27407,18 @@ public class LLFirPreresolvedReversedDiagnosticCompilerFE10TestDataTestGenerated runTest("compiler/testData/diagnostics/tests/resolve/invoke/kt4321InvokeOnEnum.kt"); } + @Test + @TestMetadata("kt51793.kt") + public void testKt51793() throws Exception { + runTest("compiler/testData/diagnostics/tests/resolve/invoke/kt51793.kt"); + } + + @Test + @TestMetadata("kt51793Complex.kt") + public void testKt51793Complex() throws Exception { + runTest("compiler/testData/diagnostics/tests/resolve/invoke/kt51793Complex.kt"); + } + @Test @TestMetadata("kt9517.kt") public void testKt9517() throws Exception { diff --git a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirLightTreeOldFrontendDiagnosticsTestGenerated.java b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirLightTreeOldFrontendDiagnosticsTestGenerated.java index d8225972809..f152c029f9e 100644 --- a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirLightTreeOldFrontendDiagnosticsTestGenerated.java +++ b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirLightTreeOldFrontendDiagnosticsTestGenerated.java @@ -27407,6 +27407,18 @@ public class FirLightTreeOldFrontendDiagnosticsTestGenerated extends AbstractFir runTest("compiler/testData/diagnostics/tests/resolve/invoke/kt4321InvokeOnEnum.kt"); } + @Test + @TestMetadata("kt51793.kt") + public void testKt51793() throws Exception { + runTest("compiler/testData/diagnostics/tests/resolve/invoke/kt51793.kt"); + } + + @Test + @TestMetadata("kt51793Complex.kt") + public void testKt51793Complex() throws Exception { + runTest("compiler/testData/diagnostics/tests/resolve/invoke/kt51793Complex.kt"); + } + @Test @TestMetadata("kt9517.kt") public void testKt9517() throws Exception { diff --git a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirPsiOldFrontendDiagnosticsTestGenerated.java b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirPsiOldFrontendDiagnosticsTestGenerated.java index a51ebd33dd5..fda2ba13dde 100644 --- a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirPsiOldFrontendDiagnosticsTestGenerated.java +++ b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirPsiOldFrontendDiagnosticsTestGenerated.java @@ -27419,6 +27419,18 @@ public class FirPsiOldFrontendDiagnosticsTestGenerated extends AbstractFirPsiDia runTest("compiler/testData/diagnostics/tests/resolve/invoke/kt4321InvokeOnEnum.kt"); } + @Test + @TestMetadata("kt51793.kt") + public void testKt51793() throws Exception { + runTest("compiler/testData/diagnostics/tests/resolve/invoke/kt51793.kt"); + } + + @Test + @TestMetadata("kt51793Complex.kt") + public void testKt51793Complex() throws Exception { + runTest("compiler/testData/diagnostics/tests/resolve/invoke/kt51793Complex.kt"); + } + @Test @TestMetadata("kt9517.kt") public void testKt9517() throws Exception { diff --git a/compiler/testData/diagnostics/tests/resolve/invoke/kt51793.kt b/compiler/testData/diagnostics/tests/resolve/invoke/kt51793.kt new file mode 100644 index 00000000000..fe61d86ca2f --- /dev/null +++ b/compiler/testData/diagnostics/tests/resolve/invoke/kt51793.kt @@ -0,0 +1,18 @@ +// FIR_IDENTICAL +// ISSUE: KT-51793 +interface Key + +interface Builder { + operator fun Key.invoke() +} + +interface A : Builder +interface B : Builder + +val A.k: Key get() = TODO() + +fun A.main() { + fun B.bar() { + k() + } +} \ No newline at end of file diff --git a/compiler/testData/diagnostics/tests/resolve/invoke/kt51793Complex.kt b/compiler/testData/diagnostics/tests/resolve/invoke/kt51793Complex.kt new file mode 100644 index 00000000000..e8c9844bb6b --- /dev/null +++ b/compiler/testData/diagnostics/tests/resolve/invoke/kt51793Complex.kt @@ -0,0 +1,30 @@ +// FIR_IDENTICAL +// ISSUE: KT-51793 + +interface Key1 +interface Key2 + +interface A1 { + operator fun Key2.invoke(): String = "" +} +interface A2 { + operator fun Key1.invoke(): Int = 1 +} + +val A1.k: Key1 get() = object : Key1 {} +val A2.k: Key2 get() = object : Key2 {} + +fun with1(a: A1.() -> Unit) { + a(object : A1 {}) +} +fun with2(a: A2.() -> Unit) { + a(object : A2 {}) +} + +fun main() { + with1 { + with2 { + k() + } + } +} \ No newline at end of file diff --git a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/DiagnosticTestGenerated.java b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/DiagnosticTestGenerated.java index c9ad8b5f603..d6052b52f10 100644 --- a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/DiagnosticTestGenerated.java +++ b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/DiagnosticTestGenerated.java @@ -28233,6 +28233,18 @@ public class DiagnosticTestGenerated extends AbstractDiagnosticTest { runTest("compiler/testData/diagnostics/tests/resolve/invoke/kt4321InvokeOnEnum.kt"); } + @Test + @TestMetadata("kt51793.kt") + public void testKt51793() throws Exception { + runTest("compiler/testData/diagnostics/tests/resolve/invoke/kt51793.kt"); + } + + @Test + @TestMetadata("kt51793Complex.kt") + public void testKt51793Complex() throws Exception { + runTest("compiler/testData/diagnostics/tests/resolve/invoke/kt51793Complex.kt"); + } + @Test @TestMetadata("kt9517.kt") public void testKt9517() throws Exception {