From ac1fb071022ec8b3b55ff4614bc439cfa8e57834 Mon Sep 17 00:00:00 2001 From: Nikolay Lunyak Date: Mon, 24 Jan 2022 12:57:13 +0300 Subject: [PATCH] [FIR JS] Add checkers.js --- analysis/analysis-api-fir/build.gradle.kts | 1 + analysis/low-level-api-fir/build.gradle.kts | 2 + .../AbstractFirIdeDiagnosticsCollector.kt | 5 +++ build.gradle.kts | 1 + compiler/cli/build.gradle.kts | 1 + compiler/fir/analysis-tests/build.gradle.kts | 1 + .../legacy-fir-tests/build.gradle.kts | 1 + compiler/fir/checkers/build.gradle.kts | 3 +- .../kotlin/fir/checkers/generator/Main.kt | 3 ++ .../diagnostics/FirJsDiagnosticsList.kt | 13 +++++++ .../fir/checkers/checkers.js/build.gradle.kts | 38 +++++++++++++++++++ .../analysis/diagnostics/js/FirJsErrors.kt | 21 ++++++++++ .../js/FirJsErrorsDefaultMessages.kt | 15 ++++++++ .../js/checkers/JsDeclarationCheckers.kt | 10 +++++ .../js/checkers/JsExpressionCheckers.kt | 10 +++++ compiler/fir/entrypoint/build.gradle.kts | 1 + .../kotlin/fir/checkers/CheckersContainers.kt | 7 ++++ .../test/frontend/fir/FirJsSessionFactory.kt | 2 + compiler/tests-common/build.gradle.kts | 1 + plugins/fir-plugin-prototype/build.gradle.kts | 1 + .../parcelize-compiler/build.gradle.kts | 1 + settings.gradle | 1 + 22 files changed, 138 insertions(+), 1 deletion(-) create mode 100644 compiler/fir/checkers/checkers-component-generator/src/org/jetbrains/kotlin/fir/checkers/generator/diagnostics/FirJsDiagnosticsList.kt create mode 100644 compiler/fir/checkers/checkers.js/build.gradle.kts create mode 100644 compiler/fir/checkers/checkers.js/gen/org/jetbrains/kotlin/fir/analysis/diagnostics/js/FirJsErrors.kt create mode 100644 compiler/fir/checkers/checkers.js/src/org/jetbrains/kotlin/fir/analysis/diagnostics/js/FirJsErrorsDefaultMessages.kt create mode 100644 compiler/fir/checkers/checkers.js/src/org/jetbrains/kotlin/fir/analysis/js/checkers/JsDeclarationCheckers.kt create mode 100644 compiler/fir/checkers/checkers.js/src/org/jetbrains/kotlin/fir/analysis/js/checkers/JsExpressionCheckers.kt diff --git a/analysis/analysis-api-fir/build.gradle.kts b/analysis/analysis-api-fir/build.gradle.kts index 73f3fdf11c9..d258c3cc95f 100644 --- a/analysis/analysis-api-fir/build.gradle.kts +++ b/analysis/analysis-api-fir/build.gradle.kts @@ -12,6 +12,7 @@ dependencies { api(project(":compiler:fir:semantics")) api(project(":compiler:fir:checkers")) api(project(":compiler:fir:checkers:checkers.jvm")) + api(project(":compiler:fir:checkers:checkers.js")) api(project(":compiler:fir:java")) api(project(":analysis:low-level-api-fir")) api(project(":analysis:analysis-api")) diff --git a/analysis/low-level-api-fir/build.gradle.kts b/analysis/low-level-api-fir/build.gradle.kts index e16fdaf7754..6cfe77934f4 100644 --- a/analysis/low-level-api-fir/build.gradle.kts +++ b/analysis/low-level-api-fir/build.gradle.kts @@ -14,9 +14,11 @@ dependencies { api(project(":compiler:fir:semantics")) api(project(":compiler:fir:checkers")) api(project(":compiler:fir:checkers:checkers.jvm")) + api(project(":compiler:fir:checkers:checkers.js")) api(project(":compiler:fir:java")) api(project(":compiler:backend.common.jvm")) api(project(":analysis:analysis-api-impl-barebone")) + api(project(":js:js.config")) testApi(project(":analysis:analysis-api-fir")) implementation(project(":compiler:frontend.common")) implementation(project(":compiler:ir.psi2ir")) diff --git a/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostics/AbstractFirIdeDiagnosticsCollector.kt b/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostics/AbstractFirIdeDiagnosticsCollector.kt index 9bcb143916d..ff86e93304d 100644 --- a/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostics/AbstractFirIdeDiagnosticsCollector.kt +++ b/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostics/AbstractFirIdeDiagnosticsCollector.kt @@ -17,10 +17,13 @@ import org.jetbrains.kotlin.fir.analysis.checkers.expression.ExpressionCheckers import org.jetbrains.kotlin.fir.analysis.checkers.type.TypeCheckers import org.jetbrains.kotlin.fir.analysis.collectors.AbstractDiagnosticCollector import org.jetbrains.kotlin.fir.analysis.collectors.components.* +import org.jetbrains.kotlin.fir.analysis.js.checkers.JsDeclarationCheckers +import org.jetbrains.kotlin.fir.analysis.js.checkers.JsExpressionCheckers import org.jetbrains.kotlin.fir.analysis.jvm.checkers.JvmDeclarationCheckers import org.jetbrains.kotlin.fir.analysis.jvm.checkers.JvmExpressionCheckers import org.jetbrains.kotlin.platform.SimplePlatform import org.jetbrains.kotlin.platform.jvm.JvmPlatform +import org.jetbrains.kotlin.platform.js.JsPlatform internal abstract class AbstractLLFirDiagnosticsCollector( session: FirSession, @@ -66,6 +69,7 @@ private object CheckersFactory { add(CommonDeclarationCheckers) when (platform) { is JvmPlatform -> add(JvmDeclarationCheckers) + is JsPlatform -> add(JsDeclarationCheckers) else -> { } } @@ -81,6 +85,7 @@ private object CheckersFactory { add(CommonExpressionCheckers) when (platform) { is JvmPlatform -> add(JvmExpressionCheckers) + is JsPlatform -> add(JsExpressionCheckers) else -> { } } diff --git a/build.gradle.kts b/build.gradle.kts index fc37320e945..e5ae000b88b 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -178,6 +178,7 @@ val firCompilerCoreModules = arrayOf( ":compiler:fir:raw-fir:psi2fir", ":compiler:fir:checkers", ":compiler:fir:checkers:checkers.jvm", + ":compiler:fir:checkers:checkers.js", ":compiler:fir:entrypoint", // TODO should not be in core modules but FIR IDE uses DependencyListForCliModule from this module ":compiler:fir:fir2ir:jvm-backend", // TODO should not be in core modules but FIR IDE uses Fir2IrSignatureComposer from this module ":compiler:fir:fir2ir" // TODO should not be in core modules but FIR IDE uses Fir2IrSignatureComposer from this module diff --git a/compiler/cli/build.gradle.kts b/compiler/cli/build.gradle.kts index d187d61725e..f462f5770db 100644 --- a/compiler/cli/build.gradle.kts +++ b/compiler/cli/build.gradle.kts @@ -31,6 +31,7 @@ dependencies { api(project(":compiler:fir:fir2ir:jvm-backend")) api(project(":compiler:fir:checkers")) api(project(":compiler:fir:checkers:checkers.jvm")) + api(project(":compiler:fir:checkers:checkers.js")) api(project(":kotlin-util-klib")) api(project(":kotlin-util-io")) diff --git a/compiler/fir/analysis-tests/build.gradle.kts b/compiler/fir/analysis-tests/build.gradle.kts index c3c8e77ac76..4fa5007f034 100644 --- a/compiler/fir/analysis-tests/build.gradle.kts +++ b/compiler/fir/analysis-tests/build.gradle.kts @@ -20,6 +20,7 @@ dependencies { testApi(project(":compiler:cli")) testApi(project(":compiler:fir:checkers")) testApi(project(":compiler:fir:checkers:checkers.jvm")) + testApi(project(":compiler:fir:checkers:checkers.js")) testApi(project(":compiler:fir:fir-serialization")) testApi(project(":compiler:fir:entrypoint")) testApi(project(":compiler:frontend")) diff --git a/compiler/fir/analysis-tests/legacy-fir-tests/build.gradle.kts b/compiler/fir/analysis-tests/legacy-fir-tests/build.gradle.kts index f0c3179e778..92cfac2a75b 100644 --- a/compiler/fir/analysis-tests/legacy-fir-tests/build.gradle.kts +++ b/compiler/fir/analysis-tests/legacy-fir-tests/build.gradle.kts @@ -19,6 +19,7 @@ dependencies { testApi(projectTests(":compiler:tests-common")) testApi(project(":compiler:fir:checkers")) testApi(project(":compiler:fir:checkers:checkers.jvm")) + testApi(project(":compiler:fir:checkers:checkers.js")) testApi(project(":compiler:fir:entrypoint")) testApi(project(":compiler:frontend")) diff --git a/compiler/fir/checkers/build.gradle.kts b/compiler/fir/checkers/build.gradle.kts index ee3cfaf1ec1..e637f5f47ad 100644 --- a/compiler/fir/checkers/build.gradle.kts +++ b/compiler/fir/checkers/build.gradle.kts @@ -35,7 +35,8 @@ val generationRoot = projectDir.resolve("gen") // Add modules for js and native checkers here val platformGenerationRoots = listOf( - "checkers.jvm" + "checkers.jvm", + "checkers.js", ).map { projectDir.resolve(it).resolve("gen") } val generateCheckersComponents by tasks.registering(NoDebugJavaExec::class) { diff --git a/compiler/fir/checkers/checkers-component-generator/src/org/jetbrains/kotlin/fir/checkers/generator/Main.kt b/compiler/fir/checkers/checkers-component-generator/src/org/jetbrains/kotlin/fir/checkers/generator/Main.kt index 8b96f34f122..3d6344bfc2a 100644 --- a/compiler/fir/checkers/checkers-component-generator/src/org/jetbrains/kotlin/fir/checkers/generator/Main.kt +++ b/compiler/fir/checkers/checkers-component-generator/src/org/jetbrains/kotlin/fir/checkers/generator/Main.kt @@ -6,6 +6,7 @@ package org.jetbrains.kotlin.fir.checkers.generator import org.jetbrains.kotlin.fir.checkers.generator.diagnostics.DIAGNOSTICS_LIST +import org.jetbrains.kotlin.fir.checkers.generator.diagnostics.JS_DIAGNOSTICS_LIST import org.jetbrains.kotlin.fir.checkers.generator.diagnostics.JVM_DIAGNOSTICS_LIST import org.jetbrains.kotlin.fir.checkers.generator.diagnostics.model.generateDiagnostics import org.jetbrains.kotlin.fir.declarations.* @@ -95,10 +96,12 @@ fun main(args: Array) { } val jvmGenerationPath = File(arguments.getOrElse(1) { "compiler/fir/checkers/checkers.jvm/gen" }) + val jsGenerationPath = File(arguments.getOrElse(2) { "compiler/fir/checkers/checkers.js/gen" }) val rawFirGenerationPath = File("compiler/fir/raw-fir/raw-fir.common/gen") generateDiagnostics(generationPath, "$basePackage.diagnostics", DIAGNOSTICS_LIST, starImportsToAdd = setOf(ErrorListDiagnosticListRenderer.BASE_PACKAGE, ErrorListDiagnosticListRenderer.DIAGNOSTICS_PACKAGE)) generateDiagnostics(jvmGenerationPath, "$basePackage.diagnostics.jvm", JVM_DIAGNOSTICS_LIST, starImportsToAdd = setOf(ErrorListDiagnosticListRenderer.BASE_PACKAGE, ErrorListDiagnosticListRenderer.DIAGNOSTICS_PACKAGE)) + generateDiagnostics(jsGenerationPath, "$basePackage.diagnostics.js", JS_DIAGNOSTICS_LIST, starImportsToAdd = setOf(ErrorListDiagnosticListRenderer.BASE_PACKAGE, ErrorListDiagnosticListRenderer.DIAGNOSTICS_PACKAGE)) generateDiagnostics(rawFirGenerationPath, "org.jetbrains.kotlin.fir.builder", SYNTAX_DIAGNOSTIC_LIST, starImportsToAdd = setOf(ErrorListDiagnosticListRenderer.DIAGNOSTICS_PACKAGE)) } diff --git a/compiler/fir/checkers/checkers-component-generator/src/org/jetbrains/kotlin/fir/checkers/generator/diagnostics/FirJsDiagnosticsList.kt b/compiler/fir/checkers/checkers-component-generator/src/org/jetbrains/kotlin/fir/checkers/generator/diagnostics/FirJsDiagnosticsList.kt new file mode 100644 index 00000000000..96fd05a648c --- /dev/null +++ b/compiler/fir/checkers/checkers-component-generator/src/org/jetbrains/kotlin/fir/checkers/generator/diagnostics/FirJsDiagnosticsList.kt @@ -0,0 +1,13 @@ +/* + * Copyright 2010-2021 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlin.fir.checkers.generator.diagnostics + +import org.jetbrains.kotlin.fir.PrivateForInline +import org.jetbrains.kotlin.fir.checkers.generator.diagnostics.model.DiagnosticList + +@Suppress("UNUSED_VARIABLE", "LocalVariableName", "ClassName", "unused") +@OptIn(PrivateForInline::class) +object JS_DIAGNOSTICS_LIST : DiagnosticList("FirJsErrors") diff --git a/compiler/fir/checkers/checkers.js/build.gradle.kts b/compiler/fir/checkers/checkers.js/build.gradle.kts new file mode 100644 index 00000000000..65f103341bb --- /dev/null +++ b/compiler/fir/checkers/checkers.js/build.gradle.kts @@ -0,0 +1,38 @@ +import org.jetbrains.kotlin.ideaExt.idea + +plugins { + kotlin("jvm") + id("jps-compatible") +} + +dependencies { + api(project(":compiler:fir:checkers")) + + /* + * We can't remove this dependency until we use + * diagnostics framework from FE 1.0 + */ + implementation(project(":compiler:frontend")) + implementation(project(":compiler:psi")) + + compileOnly(project(":kotlin-reflect-api")) + compileOnly(intellijCore()) +} + +sourceSets { + "main" { + projectDefault() + this.java.srcDir("gen") + } + "test" { none() } +} + +val compileKotlin by tasks +compileKotlin.dependsOn(":compiler:fir:checkers:generateCheckersComponents") + +if (kotlinBuildProperties.isInJpsBuildIdeaSync) { + apply(plugin = "idea") + idea { + this.module.generatedSourceDirs.add(projectDir.resolve("gen")) + } +} diff --git a/compiler/fir/checkers/checkers.js/gen/org/jetbrains/kotlin/fir/analysis/diagnostics/js/FirJsErrors.kt b/compiler/fir/checkers/checkers.js/gen/org/jetbrains/kotlin/fir/analysis/diagnostics/js/FirJsErrors.kt new file mode 100644 index 00000000000..dc6aee4071d --- /dev/null +++ b/compiler/fir/checkers/checkers.js/gen/org/jetbrains/kotlin/fir/analysis/diagnostics/js/FirJsErrors.kt @@ -0,0 +1,21 @@ +/* + * Copyright 2010-2021 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlin.fir.analysis.diagnostics.js + +import org.jetbrains.kotlin.diagnostics.* +import org.jetbrains.kotlin.diagnostics.rendering.RootDiagnosticRendererFactory +import org.jetbrains.kotlin.fir.analysis.diagnostics.* + +/* + * This file was generated automatically + * DO NOT MODIFY IT MANUALLY + */ + +object FirJsErrors { + init { + RootDiagnosticRendererFactory.registerFactory(FirJsErrorsDefaultMessages) + } +} diff --git a/compiler/fir/checkers/checkers.js/src/org/jetbrains/kotlin/fir/analysis/diagnostics/js/FirJsErrorsDefaultMessages.kt b/compiler/fir/checkers/checkers.js/src/org/jetbrains/kotlin/fir/analysis/diagnostics/js/FirJsErrorsDefaultMessages.kt new file mode 100644 index 00000000000..8312eca589b --- /dev/null +++ b/compiler/fir/checkers/checkers.js/src/org/jetbrains/kotlin/fir/analysis/diagnostics/js/FirJsErrorsDefaultMessages.kt @@ -0,0 +1,15 @@ +/* + * Copyright 2010-2021 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlin.fir.analysis.diagnostics.js + +import org.jetbrains.kotlin.diagnostics.KtDiagnosticFactoryToRendererMap +import org.jetbrains.kotlin.diagnostics.rendering.BaseDiagnosticRendererFactory + +@Suppress("unused") +object FirJsErrorsDefaultMessages : BaseDiagnosticRendererFactory() { + override val MAP = KtDiagnosticFactoryToRendererMap("FIR").also { _ -> + } +} \ No newline at end of file diff --git a/compiler/fir/checkers/checkers.js/src/org/jetbrains/kotlin/fir/analysis/js/checkers/JsDeclarationCheckers.kt b/compiler/fir/checkers/checkers.js/src/org/jetbrains/kotlin/fir/analysis/js/checkers/JsDeclarationCheckers.kt new file mode 100644 index 00000000000..d96997c7b73 --- /dev/null +++ b/compiler/fir/checkers/checkers.js/src/org/jetbrains/kotlin/fir/analysis/js/checkers/JsDeclarationCheckers.kt @@ -0,0 +1,10 @@ +/* + * Copyright 2010-2021 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlin.fir.analysis.js.checkers + +import org.jetbrains.kotlin.fir.analysis.checkers.declaration.* + +object JsDeclarationCheckers : DeclarationCheckers() diff --git a/compiler/fir/checkers/checkers.js/src/org/jetbrains/kotlin/fir/analysis/js/checkers/JsExpressionCheckers.kt b/compiler/fir/checkers/checkers.js/src/org/jetbrains/kotlin/fir/analysis/js/checkers/JsExpressionCheckers.kt new file mode 100644 index 00000000000..47bd9bd91c9 --- /dev/null +++ b/compiler/fir/checkers/checkers.js/src/org/jetbrains/kotlin/fir/analysis/js/checkers/JsExpressionCheckers.kt @@ -0,0 +1,10 @@ +/* + * Copyright 2010-2021 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlin.fir.analysis.js.checkers + +import org.jetbrains.kotlin.fir.analysis.checkers.expression.* + +object JsExpressionCheckers : ExpressionCheckers() diff --git a/compiler/fir/entrypoint/build.gradle.kts b/compiler/fir/entrypoint/build.gradle.kts index 4e51a08326a..c64ae0c24be 100644 --- a/compiler/fir/entrypoint/build.gradle.kts +++ b/compiler/fir/entrypoint/build.gradle.kts @@ -12,6 +12,7 @@ dependencies { api(project(":compiler:fir:fir2ir")) api(project(":compiler:fir:checkers")) api(project(":compiler:fir:checkers:checkers.jvm")) + api(project(":compiler:fir:checkers:checkers.js")) // TODO: do not use GeneratorExtensions in `FirAnalyzerFacade.convertToIr`, and make this an 'implementation' dependency. api(project(":compiler:ir.psi2ir")) diff --git a/compiler/fir/entrypoint/src/org/jetbrains/kotlin/fir/checkers/CheckersContainers.kt b/compiler/fir/entrypoint/src/org/jetbrains/kotlin/fir/checkers/CheckersContainers.kt index 571c168a12b..19a45329261 100644 --- a/compiler/fir/entrypoint/src/org/jetbrains/kotlin/fir/checkers/CheckersContainers.kt +++ b/compiler/fir/entrypoint/src/org/jetbrains/kotlin/fir/checkers/CheckersContainers.kt @@ -6,6 +6,8 @@ package org.jetbrains.kotlin.fir.checkers import org.jetbrains.kotlin.fir.analysis.checkers.* +import org.jetbrains.kotlin.fir.analysis.js.checkers.JsDeclarationCheckers +import org.jetbrains.kotlin.fir.analysis.js.checkers.JsExpressionCheckers import org.jetbrains.kotlin.fir.analysis.jvm.checkers.JvmDeclarationCheckers import org.jetbrains.kotlin.fir.analysis.jvm.checkers.JvmExpressionCheckers import org.jetbrains.kotlin.fir.session.FirSessionFactory @@ -26,3 +28,8 @@ fun FirSessionFactory.FirSessionConfigurator.registerJvmCheckers() { useCheckers(JvmDeclarationCheckers) useCheckers(JvmExpressionCheckers) } + +fun FirSessionFactory.FirSessionConfigurator.registerJsCheckers() { + useCheckers(JsDeclarationCheckers) + useCheckers(JsExpressionCheckers) +} diff --git a/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/frontend/fir/FirJsSessionFactory.kt b/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/frontend/fir/FirJsSessionFactory.kt index 3ae780d2bc0..ded64631b1d 100644 --- a/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/frontend/fir/FirJsSessionFactory.kt +++ b/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/frontend/fir/FirJsSessionFactory.kt @@ -11,6 +11,7 @@ import org.jetbrains.kotlin.config.LanguageVersionSettingsImpl import org.jetbrains.kotlin.fir.* import org.jetbrains.kotlin.fir.analysis.FirOverridesBackwardCompatibilityHelper import org.jetbrains.kotlin.fir.checkers.registerCommonCheckers +import org.jetbrains.kotlin.fir.checkers.registerJsCheckers import org.jetbrains.kotlin.fir.deserialization.ModuleDataProvider import org.jetbrains.kotlin.fir.extensions.FirExtensionRegistrar import org.jetbrains.kotlin.fir.extensions.FirSwitchableExtensionDeclarationsSymbolProvider @@ -112,6 +113,7 @@ object FirJsSessionFactory { FirSessionFactory.FirSessionConfigurator(this).apply { registerCommonCheckers() + registerJsCheckers() for (extensionRegistrar in extensionRegistrars) { registerExtensions(extensionRegistrar.configure()) } diff --git a/compiler/tests-common/build.gradle.kts b/compiler/tests-common/build.gradle.kts index 224e80f5df8..2b6d1976c5e 100644 --- a/compiler/tests-common/build.gradle.kts +++ b/compiler/tests-common/build.gradle.kts @@ -28,6 +28,7 @@ dependencies { testApi(project(":compiler:fir:semantics")) testApi(project(":compiler:fir:checkers")) testApi(project(":compiler:fir:checkers:checkers.jvm")) + testApi(project(":compiler:fir:checkers:checkers.js")) testApi(project(":compiler:fir:java")) testApi(project(":compiler:fir:entrypoint")) testApi(project(":compiler:ir.ir2cfg")) diff --git a/plugins/fir-plugin-prototype/build.gradle.kts b/plugins/fir-plugin-prototype/build.gradle.kts index 6648f615c67..d6f24cc5971 100644 --- a/plugins/fir-plugin-prototype/build.gradle.kts +++ b/plugins/fir-plugin-prototype/build.gradle.kts @@ -24,6 +24,7 @@ dependencies { testApi(projectTests(":compiler:test-infrastructure-utils")) testApi(project(":compiler:fir:checkers")) testApi(project(":compiler:fir:checkers:checkers.jvm")) + testApi(project(":compiler:fir:checkers:checkers.js")) testCompileOnly(project(":kotlin-reflect-api")) testRuntimeOnly(project(":kotlin-reflect")) diff --git a/plugins/parcelize/parcelize-compiler/build.gradle.kts b/plugins/parcelize/parcelize-compiler/build.gradle.kts index 5924ce044d9..80a9c5c9ac3 100644 --- a/plugins/parcelize/parcelize-compiler/build.gradle.kts +++ b/plugins/parcelize/parcelize-compiler/build.gradle.kts @@ -44,6 +44,7 @@ dependencies { // FIR dependencies testApi(project(":compiler:fir:checkers")) testApi(project(":compiler:fir:checkers:checkers.jvm")) + testApi(project(":compiler:fir:checkers:checkers.js")) testApi(project(":plugins:parcelize:parcelize-compiler:parcelize-fir")) testRuntimeOnly(project(":compiler:fir:fir-serialization")) diff --git a/settings.gradle b/settings.gradle index 3877a8b2f62..c0c36ab76c3 100644 --- a/settings.gradle +++ b/settings.gradle @@ -318,6 +318,7 @@ include ":compiler:fir", ":compiler:fir:dump", ":compiler:fir:checkers", ":compiler:fir:checkers:checkers.jvm", + ":compiler:fir:checkers:checkers.js", ":compiler:fir:checkers:checkers-component-generator", ":compiler:fir:entrypoint", ":compiler:fir:analysis-tests",