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 8563dfa249f..75ac8cc053a 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 @@ -1532,6 +1532,12 @@ public class FirOldFrontendMPPDiagnosticsWithLightTreeTestGenerated extends Abst runTest("compiler/testData/diagnostics/tests/multiplatform/java/implicitJavaActualization_multipleActuals.kt"); } + @Test + @TestMetadata("implicitJavaActualization_oldLanguageVersion.kt") + public void testImplicitJavaActualization_oldLanguageVersion() throws Exception { + runTest("compiler/testData/diagnostics/tests/multiplatform/java/implicitJavaActualization_oldLanguageVersion.kt"); + } + @Test @TestMetadata("inheritedJavaMembers.kt") public void testInheritedJavaMembers() 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 84b1236ab00..ee216cb8021 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 @@ -1532,6 +1532,12 @@ public class FirOldFrontendMPPDiagnosticsWithPsiTestGenerated extends AbstractFi runTest("compiler/testData/diagnostics/tests/multiplatform/java/implicitJavaActualization_multipleActuals.kt"); } + @Test + @TestMetadata("implicitJavaActualization_oldLanguageVersion.kt") + public void testImplicitJavaActualization_oldLanguageVersion() throws Exception { + runTest("compiler/testData/diagnostics/tests/multiplatform/java/implicitJavaActualization_oldLanguageVersion.kt"); + } + @Test @TestMetadata("inheritedJavaMembers.kt") public void testInheritedJavaMembers() throws Exception { diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/checkers/ExpectedActualDeclarationChecker.kt b/compiler/frontend/src/org/jetbrains/kotlin/resolve/checkers/ExpectedActualDeclarationChecker.kt index a731009d31a..1d04342b0e5 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/checkers/ExpectedActualDeclarationChecker.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/checkers/ExpectedActualDeclarationChecker.kt @@ -124,6 +124,7 @@ class ExpectedActualDeclarationChecker( module: ModuleDescriptor, context: DeclarationCheckerContext ) { + if (!context.languageVersionSettings.supportsFeature(LanguageFeature.MultiplatformRestrictions)) return val actualMembers = actuals .filter { (compatibility, _) -> compatibility.isCompatibleOrWeaklyIncompatible } .flatMap { (_, members) -> members } diff --git a/compiler/testData/diagnostics/tests/multiplatform/java/implicitJavaActualization_oldLanguageVersion.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/java/implicitJavaActualization_oldLanguageVersion.fir.kt new file mode 100644 index 00000000000..9020feb897e --- /dev/null +++ b/compiler/testData/diagnostics/tests/multiplatform/java/implicitJavaActualization_oldLanguageVersion.fir.kt @@ -0,0 +1,15 @@ +// LANGUAGE: -MultiplatformRestrictions +// MODULE: m1-common +// FILE: common.kt + +expect class Foo() { + fun foo() +} + +// MODULE: m2-jvm()()(m1-common) +// FILE: Foo.java + +public class Foo { + public void foo() { + } +} diff --git a/compiler/testData/diagnostics/tests/multiplatform/java/implicitJavaActualization_oldLanguageVersion.kt b/compiler/testData/diagnostics/tests/multiplatform/java/implicitJavaActualization_oldLanguageVersion.kt new file mode 100644 index 00000000000..09939b21e72 --- /dev/null +++ b/compiler/testData/diagnostics/tests/multiplatform/java/implicitJavaActualization_oldLanguageVersion.kt @@ -0,0 +1,15 @@ +// LANGUAGE: -MultiplatformRestrictions +// MODULE: m1-common +// FILE: common.kt + +expect class Foo() { + fun foo() +} + +// MODULE: m2-jvm()()(m1-common) +// FILE: Foo.java + +public class Foo { + public void foo() { + } +} 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 93b68f81d4d..125d4be28c6 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 @@ -24527,6 +24527,12 @@ public class DiagnosticTestGenerated extends AbstractDiagnosticTest { runTest("compiler/testData/diagnostics/tests/multiplatform/java/implicitJavaActualization_multipleActuals.kt"); } + @Test + @TestMetadata("implicitJavaActualization_oldLanguageVersion.kt") + public void testImplicitJavaActualization_oldLanguageVersion() throws Exception { + runTest("compiler/testData/diagnostics/tests/multiplatform/java/implicitJavaActualization_oldLanguageVersion.kt"); + } + @Test @TestMetadata("inheritedJavaMembers.kt") public void testInheritedJavaMembers() throws Exception {