From 988edab7a0eede68a8e61121fadc2dfc46e15715 Mon Sep 17 00:00:00 2001 From: Kirill Rakhman Date: Tue, 19 Mar 2024 13:30:14 +0100 Subject: [PATCH] [Tests] Add regression test for #KT-58575 #KT-58575 Fixed --- ...CompilerTestFE10TestdataTestGenerated.java | 6 ++ ...sticCompilerFE10TestDataTestGenerated.java | 6 ++ ...eeOldFrontendDiagnosticsTestGenerated.java | 6 ++ ...siOldFrontendDiagnosticsTestGenerated.java | 6 ++ .../tests/j+k/jkjPrivateProperty.fir.kt | 59 +++++++++++++++++++ .../tests/j+k/jkjPrivateProperty.kt | 59 +++++++++++++++++++ .../test/runners/DiagnosticTestGenerated.java | 6 ++ 7 files changed, 148 insertions(+) create mode 100644 compiler/testData/diagnostics/tests/j+k/jkjPrivateProperty.fir.kt create mode 100644 compiler/testData/diagnostics/tests/j+k/jkjPrivateProperty.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 09ce09d6f94..8470a29ed8f 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 @@ -21966,6 +21966,12 @@ public class DiagnosticCompilerTestFE10TestdataTestGenerated extends AbstractDia runTest("compiler/testData/diagnostics/tests/j+k/javaSupertypeNameDisambiguation.kt"); } + @Test + @TestMetadata("jkjPrivateProperty.kt") + public void testJkjPrivateProperty() { + runTest("compiler/testData/diagnostics/tests/j+k/jkjPrivateProperty.kt"); + } + @Test @TestMetadata("KJKInheritance.kt") public void testKJKInheritance() { 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 8e00baf7d14..eb885420f15 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 @@ -21966,6 +21966,12 @@ public class LLFirPreresolvedReversedDiagnosticCompilerFE10TestDataTestGenerated runTest("compiler/testData/diagnostics/tests/j+k/javaSupertypeNameDisambiguation.kt"); } + @Test + @TestMetadata("jkjPrivateProperty.kt") + public void testJkjPrivateProperty() { + runTest("compiler/testData/diagnostics/tests/j+k/jkjPrivateProperty.kt"); + } + @Test @TestMetadata("KJKInheritance.kt") public void testKJKInheritance() { 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 253f06564d3..01981e7c0c3 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 @@ -21960,6 +21960,12 @@ public class FirLightTreeOldFrontendDiagnosticsTestGenerated extends AbstractFir runTest("compiler/testData/diagnostics/tests/j+k/javaSupertypeNameDisambiguation.kt"); } + @Test + @TestMetadata("jkjPrivateProperty.kt") + public void testJkjPrivateProperty() { + runTest("compiler/testData/diagnostics/tests/j+k/jkjPrivateProperty.kt"); + } + @Test @TestMetadata("KJKInheritance.kt") public void testKJKInheritance() { 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 5c0437bfb83..3bb8a3686c0 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 @@ -21966,6 +21966,12 @@ public class FirPsiOldFrontendDiagnosticsTestGenerated extends AbstractFirPsiDia runTest("compiler/testData/diagnostics/tests/j+k/javaSupertypeNameDisambiguation.kt"); } + @Test + @TestMetadata("jkjPrivateProperty.kt") + public void testJkjPrivateProperty() { + runTest("compiler/testData/diagnostics/tests/j+k/jkjPrivateProperty.kt"); + } + @Test @TestMetadata("KJKInheritance.kt") public void testKJKInheritance() { diff --git a/compiler/testData/diagnostics/tests/j+k/jkjPrivateProperty.fir.kt b/compiler/testData/diagnostics/tests/j+k/jkjPrivateProperty.fir.kt new file mode 100644 index 00000000000..49d9b7be2df --- /dev/null +++ b/compiler/testData/diagnostics/tests/j+k/jkjPrivateProperty.fir.kt @@ -0,0 +1,59 @@ +// ISSUE: KT-58575 +// FILE: JavaBases.java +interface JavaImmutableBase { + String getData(); +} +interface JavaMutableBase { + String getData(); + void setData(String data); +} + +// FILE: KotlinChildren.kt +open class KotlinImmutableChild1: JavaImmutableBase { + private val data: String = "" + override fun getData(): String = "" +} +open class KotlinImmutableChild2: JavaImmutableBase { + private val data: String? = "" + override fun getData(): String = "" +} +open class KotlinImmutableChild4: JavaImmutableBase { + private val data: String? = "" + override fun getData(): String? = "" +} +open class KotlinMutableChild1: JavaMutableBase { + private var data: String = "" + override fun getData(): String = "" + override fun setData(data: String) {} +} +open class KotlinMutableChild6: JavaMutableBase { + private var data: String? = "" + override fun getData(): String = "" + override fun setData(data: String?) {} +} +open class KotlinMutableChild8: JavaMutableBase { + private var data: String? = "" + override fun getData(): String? = "" + override fun setData(data: String?) {} +} + +// FILE: JavaChildren.java +class JavaImmutableChild1 extends KotlinImmutableChild1 {} +class JavaImmutableChild2 extends KotlinImmutableChild2 {} +class JavaImmutableChild4 extends KotlinImmutableChild4 {} +class JavaMutableChild1 extends KotlinMutableChild1 {} +class JavaMutableChild6 extends KotlinMutableChild6 {} +class JavaMutableChild8 extends KotlinMutableChild8 {} + +// FILE: Main.kt +fun unresolvedReferences() { + JavaImmutableChild1().getData() + JavaImmutableChild2().getData() + JavaImmutableChild4().getData() + JavaMutableChild1().getData() + JavaMutableChild1().setData("") + JavaMutableChild6().getData() + JavaMutableChild6().setData("") + JavaMutableChild8().getData() + JavaMutableChild8().setData("") +} diff --git a/compiler/testData/diagnostics/tests/j+k/jkjPrivateProperty.kt b/compiler/testData/diagnostics/tests/j+k/jkjPrivateProperty.kt new file mode 100644 index 00000000000..c2900566c5f --- /dev/null +++ b/compiler/testData/diagnostics/tests/j+k/jkjPrivateProperty.kt @@ -0,0 +1,59 @@ +// ISSUE: KT-58575 +// FILE: JavaBases.java +interface JavaImmutableBase { + String getData(); +} +interface JavaMutableBase { + String getData(); + void setData(String data); +} + +// FILE: KotlinChildren.kt +open class KotlinImmutableChild1: JavaImmutableBase { + private val data: String = "" + override fun getData(): String = "" +} +open class KotlinImmutableChild2: JavaImmutableBase { + private val data: String? = "" + override fun getData(): String = "" +} +open class KotlinImmutableChild4: JavaImmutableBase { + private val data: String? = "" + override fun getData(): String? = "" +} +open class KotlinMutableChild1: JavaMutableBase { + private var data: String = "" + override fun getData(): String = "" + override fun setData(data: String) {} +} +open class KotlinMutableChild6: JavaMutableBase { + private var data: String? = "" + override fun getData(): String = "" + override fun setData(data: String?) {} +} +open class KotlinMutableChild8: JavaMutableBase { + private var data: String? = "" + override fun getData(): String? = "" + override fun setData(data: String?) {} +} + +// FILE: JavaChildren.java +class JavaImmutableChild1 extends KotlinImmutableChild1 {} +class JavaImmutableChild2 extends KotlinImmutableChild2 {} +class JavaImmutableChild4 extends KotlinImmutableChild4 {} +class JavaMutableChild1 extends KotlinMutableChild1 {} +class JavaMutableChild6 extends KotlinMutableChild6 {} +class JavaMutableChild8 extends KotlinMutableChild8 {} + +// FILE: Main.kt +fun unresolvedReferences() { + JavaImmutableChild1().getData() + JavaImmutableChild2().getData() + JavaImmutableChild4().getData() + JavaMutableChild1().getData() + JavaMutableChild1().setData("") + JavaMutableChild6().getData() + JavaMutableChild6().setData("") + JavaMutableChild8().getData() + JavaMutableChild8().setData("") +} 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 fefde0b662c..4f750d29e62 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 @@ -21966,6 +21966,12 @@ public class DiagnosticTestGenerated extends AbstractDiagnosticTest { runTest("compiler/testData/diagnostics/tests/j+k/javaSupertypeNameDisambiguation.kt"); } + @Test + @TestMetadata("jkjPrivateProperty.kt") + public void testJkjPrivateProperty() { + runTest("compiler/testData/diagnostics/tests/j+k/jkjPrivateProperty.kt"); + } + @Test @TestMetadata("KJKInheritance.kt") public void testKJKInheritance() {