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 b04fee82708..a9cc3cfa34b 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 @@ -24484,6 +24484,18 @@ public class DiagnosticCompilerTestFE10TestdataTestGenerated extends AbstractDia runTest("compiler/testData/diagnostics/tests/multiplatform/kt63860_2.kt"); } + @Test + @TestMetadata("kt64045.kt") + public void testKt64045() throws Exception { + runTest("compiler/testData/diagnostics/tests/multiplatform/kt64045.kt"); + } + + @Test + @TestMetadata("kt64045_2.kt") + public void testKt64045_2() throws Exception { + runTest("compiler/testData/diagnostics/tests/multiplatform/kt64045_2.kt"); + } + @Test @TestMetadata("kt64166.kt") public void testKt64166() 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 02d6e86a9da..3cfb5a9fccc 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 @@ -24484,6 +24484,18 @@ public class LLFirPreresolvedReversedDiagnosticCompilerFE10TestDataTestGenerated runTest("compiler/testData/diagnostics/tests/multiplatform/kt63860_2.kt"); } + @Test + @TestMetadata("kt64045.kt") + public void testKt64045() throws Exception { + runTest("compiler/testData/diagnostics/tests/multiplatform/kt64045.kt"); + } + + @Test + @TestMetadata("kt64045_2.kt") + public void testKt64045_2() throws Exception { + runTest("compiler/testData/diagnostics/tests/multiplatform/kt64045_2.kt"); + } + @Test @TestMetadata("kt64166.kt") public void testKt64166() throws Exception { diff --git a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendMPPDiagnosticsWithLightTreeTestGenerated.java b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendMPPDiagnosticsWithLightTreeTestGenerated.java index 44dc31d1f6a..c2bab778944 100644 --- a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendMPPDiagnosticsWithLightTreeTestGenerated.java +++ b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendMPPDiagnosticsWithLightTreeTestGenerated.java @@ -331,6 +331,18 @@ public class FirOldFrontendMPPDiagnosticsWithLightTreeTestGenerated extends Abst runTest("compiler/testData/diagnostics/tests/multiplatform/kt63860_2.kt"); } + @Test + @TestMetadata("kt64045.kt") + public void testKt64045() throws Exception { + runTest("compiler/testData/diagnostics/tests/multiplatform/kt64045.kt"); + } + + @Test + @TestMetadata("kt64045_2.kt") + public void testKt64045_2() throws Exception { + runTest("compiler/testData/diagnostics/tests/multiplatform/kt64045_2.kt"); + } + @Test @TestMetadata("kt64166.kt") public void testKt64166() throws Exception { diff --git a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendMPPDiagnosticsWithPsiTestGenerated.java b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendMPPDiagnosticsWithPsiTestGenerated.java index 73ffd20d789..0e69b1827d8 100644 --- a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendMPPDiagnosticsWithPsiTestGenerated.java +++ b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendMPPDiagnosticsWithPsiTestGenerated.java @@ -331,6 +331,18 @@ public class FirOldFrontendMPPDiagnosticsWithPsiTestGenerated extends AbstractFi runTest("compiler/testData/diagnostics/tests/multiplatform/kt63860_2.kt"); } + @Test + @TestMetadata("kt64045.kt") + public void testKt64045() throws Exception { + runTest("compiler/testData/diagnostics/tests/multiplatform/kt64045.kt"); + } + + @Test + @TestMetadata("kt64045_2.kt") + public void testKt64045_2() throws Exception { + runTest("compiler/testData/diagnostics/tests/multiplatform/kt64045_2.kt"); + } + @Test @TestMetadata("kt64166.kt") public void testKt64166() throws Exception { diff --git a/compiler/ir/ir.actualization/src/main/kotlin/org/jetbrains/kotlin/backend/common/actualizer/IrExpectActualMatchingContext.kt b/compiler/ir/ir.actualization/src/main/kotlin/org/jetbrains/kotlin/backend/common/actualizer/IrExpectActualMatchingContext.kt index bf4336ffeae..ff6b6c06a79 100644 --- a/compiler/ir/ir.actualization/src/main/kotlin/org/jetbrains/kotlin/backend/common/actualizer/IrExpectActualMatchingContext.kt +++ b/compiler/ir/ir.actualization/src/main/kotlin/org/jetbrains/kotlin/backend/common/actualizer/IrExpectActualMatchingContext.kt @@ -481,7 +481,7 @@ internal abstract class IrExpectActualMatchingContext( var ir = asIr() if (ir.isFakeOverride && ir is IrOverridableDeclaration<*>) { - ir.resolveFakeOverride()?.let { ir = it } + ir.resolveFakeOverrideMaybeAbstract()?.let { ir = it } } return when (ir.origin) { diff --git a/compiler/testData/diagnostics/tests/multiplatform/kt64045.kt b/compiler/testData/diagnostics/tests/multiplatform/kt64045.kt new file mode 100644 index 00000000000..1efaeb9143c --- /dev/null +++ b/compiler/testData/diagnostics/tests/multiplatform/kt64045.kt @@ -0,0 +1,16 @@ +// FIR_IDENTICAL +// MODULE: m1-common +// FILE: common.kt + +expect interface Foo { + fun foo(param: String) +} + +// MODULE: m2-jvm()()(m1-common) +// FILE: Base.java +public interface I { + public void foo(String renamed) {} +} + +// FILE: jvm.kt +actual interface Foo : I diff --git a/compiler/testData/diagnostics/tests/multiplatform/kt64045_2.kt b/compiler/testData/diagnostics/tests/multiplatform/kt64045_2.kt new file mode 100644 index 00000000000..3767f975ac9 --- /dev/null +++ b/compiler/testData/diagnostics/tests/multiplatform/kt64045_2.kt @@ -0,0 +1,18 @@ +// FIR_IDENTICAL +// MODULE: m1-common +// FILE: common.kt + +expect interface Foo { + fun foo(param: String) +} + +// MODULE: m2-jvm()()(m1-common) +// FILE: Base.java +public interface I { + public void foo(String renamed) {} +} + +// FILE: jvm.kt +actual interface Foo : I { + actual override fun foo(param: String) +} 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 56c6a538497..b6ca432d9cb 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 @@ -24484,6 +24484,18 @@ public class DiagnosticTestGenerated extends AbstractDiagnosticTest { runTest("compiler/testData/diagnostics/tests/multiplatform/kt63860_2.kt"); } + @Test + @TestMetadata("kt64045.kt") + public void testKt64045() throws Exception { + runTest("compiler/testData/diagnostics/tests/multiplatform/kt64045.kt"); + } + + @Test + @TestMetadata("kt64045_2.kt") + public void testKt64045_2() throws Exception { + runTest("compiler/testData/diagnostics/tests/multiplatform/kt64045_2.kt"); + } + @Test @TestMetadata("kt64166.kt") public void testKt64166() throws Exception {