diff --git a/compiler/fir/entrypoint/src/org/jetbrains/kotlin/fir/session/FirCommonSessionFactory.kt b/compiler/fir/entrypoint/src/org/jetbrains/kotlin/fir/session/FirCommonSessionFactory.kt index e64a5fe1b1a..1f8b8030e23 100644 --- a/compiler/fir/entrypoint/src/org/jetbrains/kotlin/fir/session/FirCommonSessionFactory.kt +++ b/compiler/fir/entrypoint/src/org/jetbrains/kotlin/fir/session/FirCommonSessionFactory.kt @@ -102,11 +102,7 @@ object FirCommonSessionFactory : FirAbstractSessionFactory() { it.registerDefaultExtraComponentsForModuleBased() registerExtraComponents(it) }, - registerExtraCheckers = { - it.registerJvmCheckers() - it.registerJsCheckers() - it.registerNativeCheckers() - }, + registerExtraCheckers = {}, createKotlinScopeProvider = { FirKotlinScopeProvider { _, declaredMemberScope, _, _, _ -> declaredMemberScope } }, createProviders = { session, kotlinScopeProvider, symbolProvider, syntheticFunctionalInterfaceProvider, generatedSymbolsProvider, dependencies -> var symbolProviderForBinariesFromIncrementalCompilation: MetadataSymbolProvider? = null diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/K2Tests.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/K2Tests.kt index c1f8a0fb37c..05fa92c0d4f 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/K2Tests.kt +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/K2Tests.kt @@ -51,4 +51,15 @@ class CustomK2Tests : KGPBaseTest() { } } } + + @GradleTest + @DisplayName("HMPP compilation without JS target. KT-57376") + fun testHmppCompilationWithoutJsTarget(gradleVersion: GradleVersion) { + with(project("k2-mpp-without-js", gradleVersion)) { + val taskToExecute = ":compileIntermediateMainKotlinMetadata" + build(taskToExecute) { + assertTasksExecuted(taskToExecute) + } + } + } } diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/k2-mpp-without-js/build.gradle.kts b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/k2-mpp-without-js/build.gradle.kts new file mode 100644 index 00000000000..e01e807ccc1 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/k2-mpp-without-js/build.gradle.kts @@ -0,0 +1,44 @@ +import org.jetbrains.kotlin.gradle.dsl.KotlinVersion +import org.jetbrains.kotlin.gradle.tasks.KotlinCompilationTask + +group = "test" +version = "1.0" + +plugins { + kotlin("multiplatform") +} + +repositories { + mavenLocal() + mavenCentral() +} + +kotlin { + jvm() + linuxX64() + + sourceSets { + val commonMain by getting {} + + val intermediateMain by creating { + dependsOn(commonMain) + } + + val jvmMain by getting { + dependsOn(intermediateMain) + } + + val linuxX64Main by getting { + dependsOn(intermediateMain) + } + } +} + +tasks.withType>().configureEach { + compilerOptions { + freeCompilerArgs.add("-Xrender-internal-diagnostic-names") + with(project.providers) { + languageVersion.set(KotlinVersion.fromVersion("2.0")) + } + } +} diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/k2-mpp-without-js/src/commonMain/kotlin/kt57376.common.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/k2-mpp-without-js/src/commonMain/kotlin/kt57376.common.kt new file mode 100644 index 00000000000..1d226956653 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/k2-mpp-without-js/src/commonMain/kotlin/kt57376.common.kt @@ -0,0 +1,6 @@ +// ISSUE: KT-57376 +package kt57376 + +expect interface A { + fun invoke(cause: Throwable?) +} diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/k2-mpp-without-js/src/intermediateMain/kotlin/kt57376.intermediate.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/k2-mpp-without-js/src/intermediateMain/kotlin/kt57376.intermediate.kt new file mode 100644 index 00000000000..a75782d7756 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/k2-mpp-without-js/src/intermediateMain/kotlin/kt57376.intermediate.kt @@ -0,0 +1,6 @@ +// ISSUE: KT-57376 +package kt57376 + +actual interface A: (Throwable?) -> Unit { + actual override fun invoke(cause: Throwable?) +}