diff --git a/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirLightTreeBlackBoxCodegenTestGenerated.java b/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirLightTreeBlackBoxCodegenTestGenerated.java index f913b0e2675..6fe5fc177d0 100644 --- a/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirLightTreeBlackBoxCodegenTestGenerated.java +++ b/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirLightTreeBlackBoxCodegenTestGenerated.java @@ -18659,6 +18659,18 @@ public class FirLightTreeBlackBoxCodegenTestGenerated extends AbstractFirLightTr runTest("compiler/testData/codegen/box/fir/SuspendFunctionReference.kt"); } + @Test + @TestMetadata("syntheticPropertyThroughJava.kt") + public void testSyntheticPropertyThroughJava() throws Exception { + runTest("compiler/testData/codegen/box/fir/syntheticPropertyThroughJava.kt"); + } + + @Test + @TestMetadata("syntheticPropertyThroughJavaMultiModule.kt") + public void testSyntheticPropertyThroughJavaMultiModule() throws Exception { + runTest("compiler/testData/codegen/box/fir/syntheticPropertyThroughJavaMultiModule.kt"); + } + @Test @TestMetadata("toLong.kt") public void testToLong() throws Exception { diff --git a/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirPsiBlackBoxCodegenTestGenerated.java b/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirPsiBlackBoxCodegenTestGenerated.java index 085fd87337c..45047f16b39 100644 --- a/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirPsiBlackBoxCodegenTestGenerated.java +++ b/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirPsiBlackBoxCodegenTestGenerated.java @@ -18659,6 +18659,18 @@ public class FirPsiBlackBoxCodegenTestGenerated extends AbstractFirPsiBlackBoxCo runTest("compiler/testData/codegen/box/fir/SuspendFunctionReference.kt"); } + @Test + @TestMetadata("syntheticPropertyThroughJava.kt") + public void testSyntheticPropertyThroughJava() throws Exception { + runTest("compiler/testData/codegen/box/fir/syntheticPropertyThroughJava.kt"); + } + + @Test + @TestMetadata("syntheticPropertyThroughJavaMultiModule.kt") + public void testSyntheticPropertyThroughJavaMultiModule() throws Exception { + runTest("compiler/testData/codegen/box/fir/syntheticPropertyThroughJavaMultiModule.kt"); + } + @Test @TestMetadata("toLong.kt") public void testToLong() throws Exception { diff --git a/compiler/testData/codegen/box/fir/syntheticPropertyThroughJava.kt b/compiler/testData/codegen/box/fir/syntheticPropertyThroughJava.kt new file mode 100644 index 00000000000..6bf489e4758 --- /dev/null +++ b/compiler/testData/codegen/box/fir/syntheticPropertyThroughJava.kt @@ -0,0 +1,19 @@ +// TARGET_BACKEND: JVM_IR +// IGNORE_BACKEND_K2: JVM_IR +// ISSUE: KT-59550 + +// FILE: Intermediate.java +public class Intermediate extends Base { + public Intermediate(String foo) { + super(foo); + } +} + +// FILE: FinalAndBase.kt +abstract class Base(private val foo: String) { + fun getFoo() = foo +} + +class Final(val i: Intermediate) : Intermediate(i.foo) + +fun box(): String = Final(Intermediate("OK")).foo diff --git a/compiler/testData/codegen/box/fir/syntheticPropertyThroughJavaMultiModule.kt b/compiler/testData/codegen/box/fir/syntheticPropertyThroughJavaMultiModule.kt new file mode 100644 index 00000000000..6253740294c --- /dev/null +++ b/compiler/testData/codegen/box/fir/syntheticPropertyThroughJavaMultiModule.kt @@ -0,0 +1,22 @@ +// TARGET_BACKEND: JVM_IR +// ISSUE: KT-59550 (related) + +// MODULE: m1 +// FILE: Base.kt +abstract class Base(internal val foo: String) { + fun getFoo() = foo +} + +// MODULE: m2(m1) +// FILE: Intermediate.java +public class Intermediate extends Base { + public Intermediate(String foo) { + super(foo); + } +} + +// FILE: FinalAndBase.kt + +class Final(val i: Intermediate) : Intermediate(i.foo) + +fun box(): String = Final(Intermediate("OK")).foo diff --git a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenTestGenerated.java b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenTestGenerated.java index 585f43d219d..92188d857f0 100644 --- a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenTestGenerated.java +++ b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenTestGenerated.java @@ -18659,6 +18659,18 @@ public class IrBlackBoxCodegenTestGenerated extends AbstractIrBlackBoxCodegenTes runTest("compiler/testData/codegen/box/fir/SuspendFunctionReference.kt"); } + @Test + @TestMetadata("syntheticPropertyThroughJava.kt") + public void testSyntheticPropertyThroughJava() throws Exception { + runTest("compiler/testData/codegen/box/fir/syntheticPropertyThroughJava.kt"); + } + + @Test + @TestMetadata("syntheticPropertyThroughJavaMultiModule.kt") + public void testSyntheticPropertyThroughJavaMultiModule() throws Exception { + runTest("compiler/testData/codegen/box/fir/syntheticPropertyThroughJavaMultiModule.kt"); + } + @Test @TestMetadata("toLong.kt") public void testToLong() throws Exception { diff --git a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenWithIrInlinerTestGenerated.java b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenWithIrInlinerTestGenerated.java index 5b3f28a803d..1ba803ac766 100644 --- a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenWithIrInlinerTestGenerated.java +++ b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenWithIrInlinerTestGenerated.java @@ -18659,6 +18659,18 @@ public class IrBlackBoxCodegenWithIrInlinerTestGenerated extends AbstractIrBlack runTest("compiler/testData/codegen/box/fir/SuspendFunctionReference.kt"); } + @Test + @TestMetadata("syntheticPropertyThroughJava.kt") + public void testSyntheticPropertyThroughJava() throws Exception { + runTest("compiler/testData/codegen/box/fir/syntheticPropertyThroughJava.kt"); + } + + @Test + @TestMetadata("syntheticPropertyThroughJavaMultiModule.kt") + public void testSyntheticPropertyThroughJavaMultiModule() throws Exception { + runTest("compiler/testData/codegen/box/fir/syntheticPropertyThroughJavaMultiModule.kt"); + } + @Test @TestMetadata("toLong.kt") public void testToLong() throws Exception {