From 8aa9d12709f997df07d9e08d75e6540476b702b3 Mon Sep 17 00:00:00 2001 From: Mikhail Glukhikh Date: Mon, 16 Sep 2024 11:26:00 +0200 Subject: [PATCH] K1/K2: add test for KT-71210 and similar cases --- ...CompilerTestFE10TestdataTestGenerated.java | 6 +++ ...sticCompilerFE10TestDataTestGenerated.java | 6 +++ ...eeOldFrontendDiagnosticsTestGenerated.java | 6 +++ ...ithLatestLanguageVersionTestGenerated.java | 6 +++ ...siOldFrontendDiagnosticsTestGenerated.java | 6 +++ .../inference/genericInvokeInCompanion.fir.kt | 37 +++++++++++++++++++ .../inference/genericInvokeInCompanion.kt | 37 +++++++++++++++++++ .../test/runners/DiagnosticTestGenerated.java | 6 +++ 8 files changed, 110 insertions(+) create mode 100644 compiler/testData/diagnostics/tests/inference/genericInvokeInCompanion.fir.kt create mode 100644 compiler/testData/diagnostics/tests/inference/genericInvokeInCompanion.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 f55e7e3dd3326..b828d8f8a6205 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 @@ -16700,6 +16700,12 @@ public void testGenericCallInThrow() { runTest("compiler/testData/diagnostics/tests/inference/genericCallInThrow.kt"); } + @Test + @TestMetadata("genericInvokeInCompanion.kt") + public void testGenericInvokeInCompanion() { + runTest("compiler/testData/diagnostics/tests/inference/genericInvokeInCompanion.kt"); + } + @Test @TestMetadata("genericOnJavaWildcardBoundedByRaw.kt") public void testGenericOnJavaWildcardBoundedByRaw() { 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 84c0680043dd3..a9d2a07eb3613 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 @@ -16700,6 +16700,12 @@ public void testGenericCallInThrow() { runTest("compiler/testData/diagnostics/tests/inference/genericCallInThrow.kt"); } + @Test + @TestMetadata("genericInvokeInCompanion.kt") + public void testGenericInvokeInCompanion() { + runTest("compiler/testData/diagnostics/tests/inference/genericInvokeInCompanion.kt"); + } + @Test @TestMetadata("genericOnJavaWildcardBoundedByRaw.kt") public void testGenericOnJavaWildcardBoundedByRaw() { 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 7247540a54ec6..052cfd3699c91 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 @@ -16694,6 +16694,12 @@ public void testGenericCallInThrow() { runTest("compiler/testData/diagnostics/tests/inference/genericCallInThrow.kt"); } + @Test + @TestMetadata("genericInvokeInCompanion.kt") + public void testGenericInvokeInCompanion() { + runTest("compiler/testData/diagnostics/tests/inference/genericInvokeInCompanion.kt"); + } + @Test @TestMetadata("genericOnJavaWildcardBoundedByRaw.kt") public void testGenericOnJavaWildcardBoundedByRaw() { diff --git a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirLightTreeOldFrontendDiagnosticsWithLatestLanguageVersionTestGenerated.java b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirLightTreeOldFrontendDiagnosticsWithLatestLanguageVersionTestGenerated.java index cfe9315c9c092..e6ddae6f919e0 100644 --- a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirLightTreeOldFrontendDiagnosticsWithLatestLanguageVersionTestGenerated.java +++ b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirLightTreeOldFrontendDiagnosticsWithLatestLanguageVersionTestGenerated.java @@ -16694,6 +16694,12 @@ public void testGenericCallInThrow() { runTest("compiler/testData/diagnostics/tests/inference/genericCallInThrow.kt"); } + @Test + @TestMetadata("genericInvokeInCompanion.kt") + public void testGenericInvokeInCompanion() { + runTest("compiler/testData/diagnostics/tests/inference/genericInvokeInCompanion.kt"); + } + @Test @TestMetadata("genericOnJavaWildcardBoundedByRaw.kt") public void testGenericOnJavaWildcardBoundedByRaw() { 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 c78a629f9c89c..03874cf695bd5 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 @@ -16700,6 +16700,12 @@ public void testGenericCallInThrow() { runTest("compiler/testData/diagnostics/tests/inference/genericCallInThrow.kt"); } + @Test + @TestMetadata("genericInvokeInCompanion.kt") + public void testGenericInvokeInCompanion() { + runTest("compiler/testData/diagnostics/tests/inference/genericInvokeInCompanion.kt"); + } + @Test @TestMetadata("genericOnJavaWildcardBoundedByRaw.kt") public void testGenericOnJavaWildcardBoundedByRaw() { diff --git a/compiler/testData/diagnostics/tests/inference/genericInvokeInCompanion.fir.kt b/compiler/testData/diagnostics/tests/inference/genericInvokeInCompanion.fir.kt new file mode 100644 index 0000000000000..ef709c75d299f --- /dev/null +++ b/compiler/testData/diagnostics/tests/inference/genericInvokeInCompanion.fir.kt @@ -0,0 +1,37 @@ +// ISSUE: KT-71210 + +class C { + companion object { + operator fun invoke(name: String) = C() + } +} + +fun main() { + C.Companion.invoke("") + C.Companion.invoke("") + C.Companion.invoke("") + + C.invoke("") + C.invoke("") + C.invoke("") + + C.Companion.invoke("") + C.Companion.invoke("") + C.Companion.invoke("") + + C.invoke("") + C.invoke("") + C.invoke("") + + C("") + C("") + C("") + + C.Companion.invoke("") + C.Companion.invoke("") + C.Companion.invoke("") + + C.invoke("") + C.invoke("") + C.invoke("") +} diff --git a/compiler/testData/diagnostics/tests/inference/genericInvokeInCompanion.kt b/compiler/testData/diagnostics/tests/inference/genericInvokeInCompanion.kt new file mode 100644 index 0000000000000..d412fdf1e4854 --- /dev/null +++ b/compiler/testData/diagnostics/tests/inference/genericInvokeInCompanion.kt @@ -0,0 +1,37 @@ +// ISSUE: KT-71210 + +class C { + companion object { + operator fun invoke(name: String) = C() + } +} + +fun main() { + C.Companion.invoke("") + C.Companion.invoke("") + C.Companion.invoke("") + + C.invoke("") + C.invoke("") + C.invoke("") + + C.Companion.invoke("") + C.Companion.invoke("") + C.Companion.invoke("") + + C.invoke("") + C.invoke("") + C.invoke("") + + C("") + C("") + C("") + + C.Companion.invoke("") + C.Companion.invoke("") + C.Companion.invoke("") + + C.invoke("") + C.invoke("") + C.invoke("") +} 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 9eb98014f7110..c85a5ca243b62 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 @@ -16700,6 +16700,12 @@ public void testGenericCallInThrow() { runTest("compiler/testData/diagnostics/tests/inference/genericCallInThrow.kt"); } + @Test + @TestMetadata("genericInvokeInCompanion.kt") + public void testGenericInvokeInCompanion() { + runTest("compiler/testData/diagnostics/tests/inference/genericInvokeInCompanion.kt"); + } + @Test @TestMetadata("genericOnJavaWildcardBoundedByRaw.kt") public void testGenericOnJavaWildcardBoundedByRaw() {