diff --git a/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/compiler.kt b/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/compiler.kt index 29d3d813296..c4e9db111a8 100644 --- a/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/compiler.kt +++ b/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/compiler.kt @@ -49,10 +49,11 @@ fun compile( files: List, configuration: CompilerConfiguration, export: FqName? = null, - dependencies: List = listOf() + dependencies: List = listOf(), + irDependencyModules: List = listOf() ): Result { val analysisResult = - TopDownAnalyzerFacadeForJS.analyzeFiles(files, project, configuration, dependencies.mapNotNull { it.moduleDescriptor as? ModuleDescriptorImpl }, emptyList()) + TopDownAnalyzerFacadeForJS.analyzeFiles(files, project, configuration, dependencies.mapNotNull { it as? ModuleDescriptorImpl }, emptyList()) ProgressIndicatorAndCompilationCanceledStatus.checkCanceled() @@ -61,8 +62,6 @@ fun compile( val psi2IrTranslator = Psi2IrTranslator(configuration.languageVersionSettings) val psi2IrContext = psi2IrTranslator.createGeneratorContext(analysisResult.moduleDescriptor, analysisResult.bindingContext) - val irDependencyModules = dependencies.map { it.moduleFragment.deepCopyWithSymbols() } - irDependencyModules.forEach { psi2IrContext.symbolTable.loadModule(it)} val moduleFragment = psi2IrTranslator.generateModuleFragment(psi2IrContext, files) diff --git a/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/lower/ArrayInlineConstructorLowering.kt b/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/lower/ArrayInlineConstructorLowering.kt index ff068377856..d1d32802a38 100644 --- a/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/lower/ArrayInlineConstructorLowering.kt +++ b/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/lower/ArrayInlineConstructorLowering.kt @@ -6,15 +6,13 @@ package org.jetbrains.kotlin.ir.backend.js.lower import org.jetbrains.kotlin.backend.common.FileLoweringPass -import org.jetbrains.kotlin.builtins.PrimitiveType -import org.jetbrains.kotlin.ir.UNDEFINED_OFFSET import org.jetbrains.kotlin.ir.backend.js.JsIrBackendContext +import org.jetbrains.kotlin.ir.backend.js.ir.irCall import org.jetbrains.kotlin.ir.declarations.IrConstructor import org.jetbrains.kotlin.ir.declarations.IrFile import org.jetbrains.kotlin.ir.expressions.IrCall import org.jetbrains.kotlin.ir.expressions.IrExpression import org.jetbrains.kotlin.ir.expressions.impl.IrCallImpl -import org.jetbrains.kotlin.ir.expressions.impl.IrConstImpl import org.jetbrains.kotlin.ir.symbols.IrClassSymbol import org.jetbrains.kotlin.ir.visitors.IrElementTransformerVoid import org.jetbrains.kotlin.ir.visitors.transformChildrenVoid diff --git a/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/lower/SecondaryCtorLowering.kt b/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/lower/SecondaryCtorLowering.kt index e76ee0098c1..4a5f952d3b7 100644 --- a/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/lower/SecondaryCtorLowering.kt +++ b/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/lower/SecondaryCtorLowering.kt @@ -37,22 +37,31 @@ class SecondaryCtorLowering(val context: JsIrBackendContext) { fun getConstructorProcessorLowering() = object : DeclarationContainerLoweringPass { override fun lower(irDeclarationContainer: IrDeclarationContainer) { - irDeclarationContainer.declarations.transformFlat { - if (it is IrClass) { - listOf(it) + lowerClass(it) - } else null - } + irDeclarationContainer.declarations.filterIsInstance().forEach { lowerClass(it) } } }::runOnFilePostfix fun getConstructorRedirectorLowering() = object : DeclarationContainerLoweringPass { override fun lower(irDeclarationContainer: IrDeclarationContainer) { + if (irDeclarationContainer is IrClass) { + updateConstructorDeclarations(irDeclarationContainer) + } for (it in irDeclarationContainer.declarations) { it.accept(CallsiteRedirectionTransformer(), null) } } }::runOnFilePostfix + private fun updateConstructorDeclarations(irClass: IrClass) { + irClass.declarations.transformFlat { + if (it is IrConstructor) { + oldCtorToNewMap[it.symbol]?.let { (newInit, newCreate) -> + listOf(newInit.owner, newCreate.owner) + } + } else null + } + } + private fun lowerClass(irClass: IrClass): List { val className = irClass.name.asString() val oldConstructors = mutableListOf() @@ -91,8 +100,6 @@ class SecondaryCtorLowering(val context: JsIrBackendContext) { } } - irClass.declarations.removeAll(oldConstructors) - return newConstructors } diff --git a/compiler/testData/codegen/box/coroutines/featureIntersection/callableReference/bound/emptyLHS.kt b/compiler/testData/codegen/box/coroutines/featureIntersection/callableReference/bound/emptyLHS.kt index 249dd1f7d41..dd7794f1212 100644 --- a/compiler/testData/codegen/box/coroutines/featureIntersection/callableReference/bound/emptyLHS.kt +++ b/compiler/testData/codegen/box/coroutines/featureIntersection/callableReference/bound/emptyLHS.kt @@ -1,7 +1,7 @@ // !LANGUAGE: +ReleaseCoroutines // !API_VERSION: 1.3 // IGNORE_BACKEND: NATIVE -// IGNORE_BACKEND: JS, JS_IR +// IGNORE_BACKEND: JS // IGNORE_BACKEND: JVM_IR // WITH_RUNTIME diff --git a/compiler/testData/codegen/box/coroutines/multiModule/inlineCrossModule.kt b/compiler/testData/codegen/box/coroutines/multiModule/inlineCrossModule.kt index fdf9d5f29d6..64bc19d703b 100644 --- a/compiler/testData/codegen/box/coroutines/multiModule/inlineCrossModule.kt +++ b/compiler/testData/codegen/box/coroutines/multiModule/inlineCrossModule.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // IGNORE_BACKEND: JVM_IR // IGNORE_BACKEND: NATIVE // WITH_COROUTINES diff --git a/compiler/testData/codegen/box/coroutines/multiModule/inlineFunctionWithOptionalParam.kt b/compiler/testData/codegen/box/coroutines/multiModule/inlineFunctionWithOptionalParam.kt index 684cb02d4d7..7fbf56e31b9 100644 --- a/compiler/testData/codegen/box/coroutines/multiModule/inlineFunctionWithOptionalParam.kt +++ b/compiler/testData/codegen/box/coroutines/multiModule/inlineFunctionWithOptionalParam.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // IGNORE_BACKEND: JVM_IR // MODULE: lib // FILE: lib.kt diff --git a/compiler/testData/codegen/box/coroutines/multiModule/inlineMultiModule.kt b/compiler/testData/codegen/box/coroutines/multiModule/inlineMultiModule.kt index 94346b79709..46bc07f3640 100644 --- a/compiler/testData/codegen/box/coroutines/multiModule/inlineMultiModule.kt +++ b/compiler/testData/codegen/box/coroutines/multiModule/inlineMultiModule.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // IGNORE_BACKEND: JVM_IR // WITH_COROUTINES // WITH_RUNTIME diff --git a/compiler/testData/codegen/box/coroutines/multiModule/inlineMultiModuleOverride.kt b/compiler/testData/codegen/box/coroutines/multiModule/inlineMultiModuleOverride.kt index c21a70899b0..f1bb2a3bffc 100644 --- a/compiler/testData/codegen/box/coroutines/multiModule/inlineMultiModuleOverride.kt +++ b/compiler/testData/codegen/box/coroutines/multiModule/inlineMultiModuleOverride.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // IGNORE_BACKEND: JVM_IR // WITH_COROUTINES // WITH_RUNTIME diff --git a/compiler/testData/codegen/box/coroutines/multiModule/inlineMultiModuleWithController.kt b/compiler/testData/codegen/box/coroutines/multiModule/inlineMultiModuleWithController.kt index 8ebdfa68f2e..ed47bcba09c 100644 --- a/compiler/testData/codegen/box/coroutines/multiModule/inlineMultiModuleWithController.kt +++ b/compiler/testData/codegen/box/coroutines/multiModule/inlineMultiModuleWithController.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // IGNORE_BACKEND: JVM_IR // WITH_COROUTINES // WITH_RUNTIME diff --git a/compiler/testData/codegen/box/coroutines/multiModule/inlineMultiModuleWithInnerInlining.kt b/compiler/testData/codegen/box/coroutines/multiModule/inlineMultiModuleWithInnerInlining.kt index 389ea371c4f..d68080eac82 100644 --- a/compiler/testData/codegen/box/coroutines/multiModule/inlineMultiModuleWithInnerInlining.kt +++ b/compiler/testData/codegen/box/coroutines/multiModule/inlineMultiModuleWithInnerInlining.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // IGNORE_BACKEND: JVM_IR // IGNORE_BACKEND: NATIVE // WITH_COROUTINES diff --git a/compiler/testData/codegen/box/coroutines/multiModule/inlineTailCall.kt b/compiler/testData/codegen/box/coroutines/multiModule/inlineTailCall.kt index bd15b1c371a..c24383990be 100644 --- a/compiler/testData/codegen/box/coroutines/multiModule/inlineTailCall.kt +++ b/compiler/testData/codegen/box/coroutines/multiModule/inlineTailCall.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // IGNORE_BACKEND: JVM_IR // IGNORE_BACKEND: NATIVE // WITH_RUNTIME diff --git a/compiler/testData/codegen/box/coroutines/multiModule/simple.kt b/compiler/testData/codegen/box/coroutines/multiModule/simple.kt index e6df97e04af..efd7abb0b5e 100644 --- a/compiler/testData/codegen/box/coroutines/multiModule/simple.kt +++ b/compiler/testData/codegen/box/coroutines/multiModule/simple.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // IGNORE_BACKEND: JVM_IR // WITH_RUNTIME // WITH_COROUTINES diff --git a/compiler/testData/codegen/box/inlineClasses/unboxValueFromPlatformType.kt b/compiler/testData/codegen/box/inlineClasses/unboxValueFromPlatformType.kt index cc7661b339e..1c388d4b29c 100644 --- a/compiler/testData/codegen/box/inlineClasses/unboxValueFromPlatformType.kt +++ b/compiler/testData/codegen/box/inlineClasses/unboxValueFromPlatformType.kt @@ -1,5 +1,5 @@ // WITH_RUNTIME -// IGNORE_BACKEND: JVM_IR, JS_IR, NATIVE +// IGNORE_BACKEND: JVM_IR, NATIVE inline class SnekDirection(val direction: Int) { companion object { diff --git a/compiler/testData/codegen/box/publishedApi/simple.kt b/compiler/testData/codegen/box/publishedApi/simple.kt index ddfba9a1454..4ad78979fd4 100644 --- a/compiler/testData/codegen/box/publishedApi/simple.kt +++ b/compiler/testData/codegen/box/publishedApi/simple.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // MODULE: lib // FILE: lib.kt class A { diff --git a/compiler/testData/codegen/box/publishedApi/topLevel.kt b/compiler/testData/codegen/box/publishedApi/topLevel.kt index 325f24e8590..e2a33400e7d 100644 --- a/compiler/testData/codegen/box/publishedApi/topLevel.kt +++ b/compiler/testData/codegen/box/publishedApi/topLevel.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // MODULE: lib // FILE: lib.kt @PublishedApi diff --git a/compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/nonLocalReturnFromCatchBlock.kt b/compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/nonLocalReturnFromCatchBlock.kt index 5ccb05f70e8..c46314a6f41 100644 --- a/compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/nonLocalReturnFromCatchBlock.kt +++ b/compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/nonLocalReturnFromCatchBlock.kt @@ -1,5 +1,4 @@ // IGNORE_BACKEND: JVM_IR -// IGNORE_BACKEND: JS_IR // MODULE: lib // FILE: lib.kt diff --git a/compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/nonLocalReturnToCatchBlock.kt b/compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/nonLocalReturnToCatchBlock.kt index a62515523e3..319213c08c8 100644 --- a/compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/nonLocalReturnToCatchBlock.kt +++ b/compiler/testData/codegen/boxInline/nonLocalReturns/tryFinally/nonLocalReturnToCatchBlock.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // MODULE: lib // FILE: lib.kt diff --git a/js/js.tests/test/org/jetbrains/kotlin/js/test/BasicBoxTest.kt b/js/js.tests/test/org/jetbrains/kotlin/js/test/BasicBoxTest.kt index d8056f6907d..95c709d70dc 100644 --- a/js/js.tests/test/org/jetbrains/kotlin/js/test/BasicBoxTest.kt +++ b/js/js.tests/test/org/jetbrains/kotlin/js/test/BasicBoxTest.kt @@ -94,7 +94,7 @@ abstract class BasicBoxTest( doTest(filePath, "OK", MainCallParameters.noCall(), coroutinesPackage) } - fun doTest(filePath: String, expectedResult: String, mainCallParameters: MainCallParameters, coroutinesPackage: String = "") { + open fun doTest(filePath: String, expectedResult: String, mainCallParameters: MainCallParameters, coroutinesPackage: String = "") { val file = File(filePath) val outputDir = getOutputDir(file) var fileContent = KotlinTestUtils.doLoadFile(file) diff --git a/js/js.tests/test/org/jetbrains/kotlin/js/test/BasicIrBoxTest.kt b/js/js.tests/test/org/jetbrains/kotlin/js/test/BasicIrBoxTest.kt index a8397c84885..ed8f7f9f959 100644 --- a/js/js.tests/test/org/jetbrains/kotlin/js/test/BasicIrBoxTest.kt +++ b/js/js.tests/test/org/jetbrains/kotlin/js/test/BasicIrBoxTest.kt @@ -8,6 +8,7 @@ package org.jetbrains.kotlin.js.test import org.jetbrains.kotlin.config.* import org.jetbrains.kotlin.ir.backend.js.Result import org.jetbrains.kotlin.ir.backend.js.compile +import org.jetbrains.kotlin.js.config.JSConfigurationKeys import org.jetbrains.kotlin.js.config.JsConfig import org.jetbrains.kotlin.js.facade.MainCallParameters import org.jetbrains.kotlin.js.facade.TranslationUnit @@ -116,6 +117,13 @@ abstract class BasicIrBoxTest( override var skipMinification = true + private val compilationCache = mutableMapOf() + + override fun doTest(filePath: String, expectedResult: String, mainCallParameters: MainCallParameters, coroutinesPackage: String) { + compilationCache.clear() + super.doTest(filePath, expectedResult, mainCallParameters, coroutinesPackage) + } + override fun translateFiles( units: List, outputFile: File, @@ -153,12 +161,19 @@ abstract class BasicIrBoxTest( runtimeFile.write(runtimeResult!!.generatedCode) } + val dependencyPaths = config.configuration[JSConfigurationKeys.LIBRARIES]!! + val dependencies = listOf(runtimeResult!!.moduleDescriptor) + dependencyPaths.mapNotNull { compilationCache[it]?.moduleDescriptor } + val irDependencies = listOf(runtimeResult!!.moduleFragment) + compilationCache.values.map { it.moduleFragment } + val result = compile( config.project, filesToCompile, config.configuration, FqName((testPackage?.let { "$it." } ?: "") + testFunction), - listOf(runtimeResult!!)) + dependencies, + irDependencies) + + compilationCache[outputFile.absolutePath.let { it.substring(0, it.length - 2)} + "meta.js"] = result outputFile.write(result.generatedCode) } diff --git a/js/js.translator/testData/box/coroutines/localVarOptimization.kt b/js/js.translator/testData/box/coroutines/localVarOptimization.kt index 19babaa4423..6522a89af8e 100644 --- a/js/js.translator/testData/box/coroutines/localVarOptimization.kt +++ b/js/js.translator/testData/box/coroutines/localVarOptimization.kt @@ -4,7 +4,6 @@ // PROPERTY_WRITE_COUNT: name=local$o count=2 // Unmute when JS_IR supports release coroutines -// IGNORE_BACKEND: JS_IR import kotlin.coroutines.* diff --git a/js/js.translator/testData/box/coroutines/nativeExceptions.kt b/js/js.translator/testData/box/coroutines/nativeExceptions.kt index af549c23947..5ba96338a7b 100644 --- a/js/js.translator/testData/box/coroutines/nativeExceptions.kt +++ b/js/js.translator/testData/box/coroutines/nativeExceptions.kt @@ -1,7 +1,6 @@ // EXPECTED_REACHABLE_NODES: 1250 // Unmute when JS_IR supports release coroutines -// IGNORE_BACKEND: JS_IR import kotlin.coroutines.* import kotlin.coroutines.intrinsics.* diff --git a/js/js.translator/testData/box/crossModuleRef/callableObjectRef.kt b/js/js.translator/testData/box/crossModuleRef/callableObjectRef.kt index 7df88150e81..142b18883d4 100644 --- a/js/js.translator/testData/box/crossModuleRef/callableObjectRef.kt +++ b/js/js.translator/testData/box/crossModuleRef/callableObjectRef.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1289 // MODULE: lib // FILE: lib.kt diff --git a/js/js.translator/testData/box/crossModuleRef/constructor.kt b/js/js.translator/testData/box/crossModuleRef/constructor.kt index c938acf0cc3..ab7c8f9ff7c 100644 --- a/js/js.translator/testData/box/crossModuleRef/constructor.kt +++ b/js/js.translator/testData/box/crossModuleRef/constructor.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1291 // MODULE: lib // FILE: lib.kt diff --git a/js/js.translator/testData/box/crossModuleRef/inheritance.kt b/js/js.translator/testData/box/crossModuleRef/inheritance.kt index 49f85dd9beb..c9aded70847 100644 --- a/js/js.translator/testData/box/crossModuleRef/inheritance.kt +++ b/js/js.translator/testData/box/crossModuleRef/inheritance.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1292 // MODULE: lib // FILE: lib.kt diff --git a/js/js.translator/testData/box/crossModuleRef/inlineModule.kt b/js/js.translator/testData/box/crossModuleRef/inlineModule.kt index 43254c0cbf2..f7f797d8b1b 100644 --- a/js/js.translator/testData/box/crossModuleRef/inlineModule.kt +++ b/js/js.translator/testData/box/crossModuleRef/inlineModule.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1283 // MODULE: lib1 // FILE: lib1.kt diff --git a/js/js.translator/testData/box/crossModuleRef/inlineModuleNonIndentifier.kt b/js/js.translator/testData/box/crossModuleRef/inlineModuleNonIndentifier.kt index 714a1568739..9991db7fa25 100644 --- a/js/js.translator/testData/box/crossModuleRef/inlineModuleNonIndentifier.kt +++ b/js/js.translator/testData/box/crossModuleRef/inlineModuleNonIndentifier.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1283 // MODULE: 1 // FILE: lib1.kt diff --git a/js/js.translator/testData/box/crossModuleRef/lambda.kt b/js/js.translator/testData/box/crossModuleRef/lambda.kt index 9a06d5dae53..0c1e728f6cb 100644 --- a/js/js.translator/testData/box/crossModuleRef/lambda.kt +++ b/js/js.translator/testData/box/crossModuleRef/lambda.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1283 // MODULE: lib // FILE: lib.kt diff --git a/js/js.translator/testData/box/crossModuleRef/object.kt b/js/js.translator/testData/box/crossModuleRef/object.kt index b053d924433..e000a6e8171 100644 --- a/js/js.translator/testData/box/crossModuleRef/object.kt +++ b/js/js.translator/testData/box/crossModuleRef/object.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1289 // MODULE: lib // FILE: lib.kt diff --git a/js/js.translator/testData/box/crossModuleRef/objectIsObject.kt b/js/js.translator/testData/box/crossModuleRef/objectIsObject.kt index 117f5850304..14febffe96e 100644 --- a/js/js.translator/testData/box/crossModuleRef/objectIsObject.kt +++ b/js/js.translator/testData/box/crossModuleRef/objectIsObject.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1284 // MODULE: lib // FILE: lib.kt diff --git a/js/js.translator/testData/box/crossModuleRef/topLevelMutableProperty.kt b/js/js.translator/testData/box/crossModuleRef/topLevelMutableProperty.kt index e897b40bef0..98d23073665 100644 --- a/js/js.translator/testData/box/crossModuleRef/topLevelMutableProperty.kt +++ b/js/js.translator/testData/box/crossModuleRef/topLevelMutableProperty.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1286 // MODULE: lib // FILE: lib.kt diff --git a/js/js.translator/testData/box/extensionProperty/externalExtensionProperty.kt b/js/js.translator/testData/box/extensionProperty/externalExtensionProperty.kt index c21135ae0bf..175e1e0b3ab 100644 --- a/js/js.translator/testData/box/extensionProperty/externalExtensionProperty.kt +++ b/js/js.translator/testData/box/extensionProperty/externalExtensionProperty.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1285 // MODULE: lib // FILE: lib.kt diff --git a/js/js.translator/testData/box/inline/faultyRedundantCallElimination.kt b/js/js.translator/testData/box/inline/faultyRedundantCallElimination.kt index 8c38f9ce01d..2ad2dc65594 100644 --- a/js/js.translator/testData/box/inline/faultyRedundantCallElimination.kt +++ b/js/js.translator/testData/box/inline/faultyRedundantCallElimination.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1189 // MODULE: lib diff --git a/js/js.translator/testData/box/inline/inlineChainCrossModule.kt b/js/js.translator/testData/box/inline/inlineChainCrossModule.kt index c4843b78adb..3d037e0a08a 100644 --- a/js/js.translator/testData/box/inline/inlineChainCrossModule.kt +++ b/js/js.translator/testData/box/inline/inlineChainCrossModule.kt @@ -1,5 +1,4 @@ // EXPECTED_REACHABLE_NODES: 1192 -// IGNORE_BACKEND: JS_IR // MODULE: lib // FILE: lib.kt diff --git a/js/js.translator/testData/box/inline/kt26466.kt b/js/js.translator/testData/box/inline/kt26466.kt index f4a39513ac7..e2ae91e1159 100644 --- a/js/js.translator/testData/box/inline/kt26466.kt +++ b/js/js.translator/testData/box/inline/kt26466.kt @@ -1,5 +1,4 @@ // EXPECTED_REACHABLE_NODES: 1269 -// IGNORE_BACKEND: JS_IR // MODULE: lib // FILE: lib.kt diff --git a/js/js.translator/testData/box/inlineMultiModule/anotherModuleValInClosure.kt b/js/js.translator/testData/box/inlineMultiModule/anotherModuleValInClosure.kt index e235eb0048b..eaf6caed8c6 100644 --- a/js/js.translator/testData/box/inlineMultiModule/anotherModuleValInClosure.kt +++ b/js/js.translator/testData/box/inlineMultiModule/anotherModuleValInClosure.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1286 // MODULE: lib // FILE: lib.kt diff --git a/js/js.translator/testData/box/inlineMultiModule/callFunction.kt b/js/js.translator/testData/box/inlineMultiModule/callFunction.kt index dc8650f607a..bd50b432bd7 100644 --- a/js/js.translator/testData/box/inlineMultiModule/callFunction.kt +++ b/js/js.translator/testData/box/inlineMultiModule/callFunction.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1285 // MODULE: lib // FILE: lib.kt diff --git a/js/js.translator/testData/box/inlineMultiModule/callableReference.kt b/js/js.translator/testData/box/inlineMultiModule/callableReference.kt index 685a4e9f9ba..879ff5794c1 100644 --- a/js/js.translator/testData/box/inlineMultiModule/callableReference.kt +++ b/js/js.translator/testData/box/inlineMultiModule/callableReference.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1283 // MODULE: lib // FILE: lib.kt diff --git a/js/js.translator/testData/box/inlineMultiModule/calledByFqName.kt b/js/js.translator/testData/box/inlineMultiModule/calledByFqName.kt index 14a3ff36de6..89d1352829d 100644 --- a/js/js.translator/testData/box/inlineMultiModule/calledByFqName.kt +++ b/js/js.translator/testData/box/inlineMultiModule/calledByFqName.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1283 // MODULE: lib // FILE: lib.kt diff --git a/js/js.translator/testData/box/inlineMultiModule/extensionLambda.kt b/js/js.translator/testData/box/inlineMultiModule/extensionLambda.kt index 8cf74f64a63..27e2f60e998 100644 --- a/js/js.translator/testData/box/inlineMultiModule/extensionLambda.kt +++ b/js/js.translator/testData/box/inlineMultiModule/extensionLambda.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1285 // MODULE: lib // FILE: lib.kt diff --git a/js/js.translator/testData/box/inlineMultiModule/externalInlineCallDecomposed.kt b/js/js.translator/testData/box/inlineMultiModule/externalInlineCallDecomposed.kt index 3ad6a0c0c0d..bd62d3ea7a3 100644 --- a/js/js.translator/testData/box/inlineMultiModule/externalInlineCallDecomposed.kt +++ b/js/js.translator/testData/box/inlineMultiModule/externalInlineCallDecomposed.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1294 // MODULE: lib // FILE: lib.kt diff --git a/js/js.translator/testData/box/inlineMultiModule/externalInlineNewDecomposed.kt b/js/js.translator/testData/box/inlineMultiModule/externalInlineNewDecomposed.kt index 128802ab063..926ac1d4037 100644 --- a/js/js.translator/testData/box/inlineMultiModule/externalInlineNewDecomposed.kt +++ b/js/js.translator/testData/box/inlineMultiModule/externalInlineNewDecomposed.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 5901 // MODULE: lib // FILE: lib.kt diff --git a/js/js.translator/testData/box/inlineMultiModule/fakeFunctionInAnotherModule.kt b/js/js.translator/testData/box/inlineMultiModule/fakeFunctionInAnotherModule.kt index a97abf3ae99..0aacf4d30a2 100644 --- a/js/js.translator/testData/box/inlineMultiModule/fakeFunctionInAnotherModule.kt +++ b/js/js.translator/testData/box/inlineMultiModule/fakeFunctionInAnotherModule.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1282 // MODULE: lib // FILE: lib1.kt diff --git a/js/js.translator/testData/box/inlineMultiModule/importObjectInstance.kt b/js/js.translator/testData/box/inlineMultiModule/importObjectInstance.kt index a112bca06c8..ccb877d5c55 100644 --- a/js/js.translator/testData/box/inlineMultiModule/importObjectInstance.kt +++ b/js/js.translator/testData/box/inlineMultiModule/importObjectInstance.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1289 // MODULE: lib // FILE: lib.kt diff --git a/js/js.translator/testData/box/inlineMultiModule/importStdLib.kt b/js/js.translator/testData/box/inlineMultiModule/importStdLib.kt index 522277321f5..d86106823e7 100644 --- a/js/js.translator/testData/box/inlineMultiModule/importStdLib.kt +++ b/js/js.translator/testData/box/inlineMultiModule/importStdLib.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1229 // MODULE: lib // FILE: lib.kt diff --git a/js/js.translator/testData/box/inlineMultiModule/inlineInInlineWithLambdaMultiModule.kt b/js/js.translator/testData/box/inlineMultiModule/inlineInInlineWithLambdaMultiModule.kt index 2334780ac75..d994b766b5b 100644 --- a/js/js.translator/testData/box/inlineMultiModule/inlineInInlineWithLambdaMultiModule.kt +++ b/js/js.translator/testData/box/inlineMultiModule/inlineInInlineWithLambdaMultiModule.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1286 // MODULE: lib // FILE: lib.kt diff --git a/js/js.translator/testData/box/inlineMultiModule/keywordAsMemberName.kt b/js/js.translator/testData/box/inlineMultiModule/keywordAsMemberName.kt index 21ac56a175a..1472cc684fe 100644 --- a/js/js.translator/testData/box/inlineMultiModule/keywordAsMemberName.kt +++ b/js/js.translator/testData/box/inlineMultiModule/keywordAsMemberName.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1288 // MODULE: lib // FILE: lib.kt diff --git a/js/js.translator/testData/box/inlineMultiModule/kt16144.kt b/js/js.translator/testData/box/inlineMultiModule/kt16144.kt index a28c34d305d..1aaf4f973c1 100644 --- a/js/js.translator/testData/box/inlineMultiModule/kt16144.kt +++ b/js/js.translator/testData/box/inlineMultiModule/kt16144.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1304 // MODULE: m3 // FILE: m3.kt diff --git a/js/js.translator/testData/box/inlineMultiModule/kt16160.kt b/js/js.translator/testData/box/inlineMultiModule/kt16160.kt index 2cfbd74cdcc..18ebf172472 100644 --- a/js/js.translator/testData/box/inlineMultiModule/kt16160.kt +++ b/js/js.translator/testData/box/inlineMultiModule/kt16160.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1300 // MODULE: main(module2) // FILE: main.kt diff --git a/js/js.translator/testData/box/inlineMultiModule/lambda.kt b/js/js.translator/testData/box/inlineMultiModule/lambda.kt index 76530cf8935..0980f6c8a32 100644 --- a/js/js.translator/testData/box/inlineMultiModule/lambda.kt +++ b/js/js.translator/testData/box/inlineMultiModule/lambda.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1283 // MODULE: lib // FILE: lib.kt diff --git a/js/js.translator/testData/box/inlineMultiModule/lambdaWithClosure.kt b/js/js.translator/testData/box/inlineMultiModule/lambdaWithClosure.kt index 30e4d52ef6f..8dc6caec0ce 100644 --- a/js/js.translator/testData/box/inlineMultiModule/lambdaWithClosure.kt +++ b/js/js.translator/testData/box/inlineMultiModule/lambdaWithClosure.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1283 // MODULE: lib // FILE: lib.kt diff --git a/js/js.translator/testData/box/inlineMultiModule/localNameClash.kt b/js/js.translator/testData/box/inlineMultiModule/localNameClash.kt index 73d540effe6..b4691d2edc4 100644 --- a/js/js.translator/testData/box/inlineMultiModule/localNameClash.kt +++ b/js/js.translator/testData/box/inlineMultiModule/localNameClash.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1283 // MODULE: lib // FILE: lib.kt diff --git a/js/js.translator/testData/box/inlineMultiModule/localObjectLiteralWithInheritance.kt b/js/js.translator/testData/box/inlineMultiModule/localObjectLiteralWithInheritance.kt index 9d4dc494bfa..02df10a193b 100644 --- a/js/js.translator/testData/box/inlineMultiModule/localObjectLiteralWithInheritance.kt +++ b/js/js.translator/testData/box/inlineMultiModule/localObjectLiteralWithInheritance.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1302 // MODULE: lib // FILE: lib.kt diff --git a/js/js.translator/testData/box/inlineMultiModule/method.kt b/js/js.translator/testData/box/inlineMultiModule/method.kt index 769519bcbfb..d6b9db71409 100644 --- a/js/js.translator/testData/box/inlineMultiModule/method.kt +++ b/js/js.translator/testData/box/inlineMultiModule/method.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1291 // MODULE: lib // FILE: lib.kt diff --git a/js/js.translator/testData/box/inlineMultiModule/operators.kt b/js/js.translator/testData/box/inlineMultiModule/operators.kt index 79dcc7e41ed..b8d3fa3cb64 100644 --- a/js/js.translator/testData/box/inlineMultiModule/operators.kt +++ b/js/js.translator/testData/box/inlineMultiModule/operators.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1284 // MODULE: lib // FILE: lib.kt diff --git a/js/js.translator/testData/box/inlineMultiModule/parameterWithDefaultValue.kt b/js/js.translator/testData/box/inlineMultiModule/parameterWithDefaultValue.kt index 9467c0b2096..837b1b75a66 100644 --- a/js/js.translator/testData/box/inlineMultiModule/parameterWithDefaultValue.kt +++ b/js/js.translator/testData/box/inlineMultiModule/parameterWithDefaultValue.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1282 // MODULE: lib // FILE: lib.kt diff --git a/js/js.translator/testData/box/inlineMultiModule/property.kt b/js/js.translator/testData/box/inlineMultiModule/property.kt index 560a71f45b0..c603579b640 100644 --- a/js/js.translator/testData/box/inlineMultiModule/property.kt +++ b/js/js.translator/testData/box/inlineMultiModule/property.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1319 // MODULE: lib // FILE: lib.kt diff --git a/js/js.translator/testData/box/inlineMultiModule/reexportDuringInline.kt b/js/js.translator/testData/box/inlineMultiModule/reexportDuringInline.kt index efbb56a57bd..3703ef19621 100644 --- a/js/js.translator/testData/box/inlineMultiModule/reexportDuringInline.kt +++ b/js/js.translator/testData/box/inlineMultiModule/reexportDuringInline.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1283 // MODULE: lib1 // FILE: lib1.kt diff --git a/js/js.translator/testData/box/inlineMultiModule/simple.kt b/js/js.translator/testData/box/inlineMultiModule/simple.kt index a3682e67798..ff930596452 100644 --- a/js/js.translator/testData/box/inlineMultiModule/simple.kt +++ b/js/js.translator/testData/box/inlineMultiModule/simple.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1283 // MODULE: lib // FILE: lib.kt diff --git a/js/js.translator/testData/box/inlineMultiModule/topLevelNestedInline.kt b/js/js.translator/testData/box/inlineMultiModule/topLevelNestedInline.kt index 22821734bb3..589d1943678 100644 --- a/js/js.translator/testData/box/inlineMultiModule/topLevelNestedInline.kt +++ b/js/js.translator/testData/box/inlineMultiModule/topLevelNestedInline.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1281 // MODULE: lib // FILE: lib1.kt diff --git a/js/js.translator/testData/box/inlineMultiModule/typealiases.kt b/js/js.translator/testData/box/inlineMultiModule/typealiases.kt index 9c41a4b39fb..309961517eb 100644 --- a/js/js.translator/testData/box/inlineMultiModule/typealiases.kt +++ b/js/js.translator/testData/box/inlineMultiModule/typealiases.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1286 // MODULE: lib // FILE: lib.kt diff --git a/js/js.translator/testData/box/inlineSizeReduction/inlineImportCleanup.kt b/js/js.translator/testData/box/inlineSizeReduction/inlineImportCleanup.kt index c794e46d7a2..3c577630d5d 100644 --- a/js/js.translator/testData/box/inlineSizeReduction/inlineImportCleanup.kt +++ b/js/js.translator/testData/box/inlineSizeReduction/inlineImportCleanup.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1280 // MODULE: lib // FILE: lib.kt diff --git a/js/js.translator/testData/box/inlineSizeReduction/multiModuleDefaultArgsCleanup.kt b/js/js.translator/testData/box/inlineSizeReduction/multiModuleDefaultArgsCleanup.kt index b59ac1c41f9..4a3ac014af4 100644 --- a/js/js.translator/testData/box/inlineSizeReduction/multiModuleDefaultArgsCleanup.kt +++ b/js/js.translator/testData/box/inlineSizeReduction/multiModuleDefaultArgsCleanup.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1281 // MODULE: lib // FILE: lib.kt diff --git a/js/js.translator/testData/box/multiModule/localClassMetadata.kt b/js/js.translator/testData/box/multiModule/localClassMetadata.kt index 09a37428a2b..c8ffd1fbf02 100644 --- a/js/js.translator/testData/box/multiModule/localClassMetadata.kt +++ b/js/js.translator/testData/box/multiModule/localClassMetadata.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1319 // MODULE: lib // FILE: lib.kt diff --git a/js/js.translator/testData/box/multiModule/moduleAndVariableNameClash.kt b/js/js.translator/testData/box/multiModule/moduleAndVariableNameClash.kt index 750c3e1cd59..79b1f888299 100644 --- a/js/js.translator/testData/box/multiModule/moduleAndVariableNameClash.kt +++ b/js/js.translator/testData/box/multiModule/moduleAndVariableNameClash.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1283 // MODULE: main(module1) // FILE: main.kt diff --git a/js/js.translator/testData/box/multiModule/samePackageNames.kt b/js/js.translator/testData/box/multiModule/samePackageNames.kt index 66352486a36..91aa1e4d7f2 100644 --- a/js/js.translator/testData/box/multiModule/samePackageNames.kt +++ b/js/js.translator/testData/box/multiModule/samePackageNames.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1304 // MODULE: lib1 // FILE: lib1.kt diff --git a/js/js.translator/testData/box/multiModule/useElementsFromDefaultPackageInAnotherModule.kt b/js/js.translator/testData/box/multiModule/useElementsFromDefaultPackageInAnotherModule.kt index 4667255fe2d..2e76f458af3 100644 --- a/js/js.translator/testData/box/multiModule/useElementsFromDefaultPackageInAnotherModule.kt +++ b/js/js.translator/testData/box/multiModule/useElementsFromDefaultPackageInAnotherModule.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1285 // MODULE: main(module1) // FILE: main.kt diff --git a/js/js.translator/testData/box/multiModuleWrappers/plain/inlineFromModuleWithNonIdentifierName.kt b/js/js.translator/testData/box/multiModuleWrappers/plain/inlineFromModuleWithNonIdentifierName.kt index a1009e8e493..e031bc897f0 100644 --- a/js/js.translator/testData/box/multiModuleWrappers/plain/inlineFromModuleWithNonIdentifierName.kt +++ b/js/js.translator/testData/box/multiModuleWrappers/plain/inlineFromModuleWithNonIdentifierName.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1282 // MODULE: #my-libr@ry // FILE: bar.kt diff --git a/js/js.translator/testData/box/multiModuleWrappers/plain/moduleWithNonIdentifierName.kt b/js/js.translator/testData/box/multiModuleWrappers/plain/moduleWithNonIdentifierName.kt index 9fe41614043..9f670a28228 100644 --- a/js/js.translator/testData/box/multiModuleWrappers/plain/moduleWithNonIdentifierName.kt +++ b/js/js.translator/testData/box/multiModuleWrappers/plain/moduleWithNonIdentifierName.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1283 // MODULE: module-1 // FILE: bar.kt diff --git a/js/js.translator/testData/box/multiModuleWrappers/plain/simple.kt b/js/js.translator/testData/box/multiModuleWrappers/plain/simple.kt index 2e3557641a1..0ec3afa23f1 100644 --- a/js/js.translator/testData/box/multiModuleWrappers/plain/simple.kt +++ b/js/js.translator/testData/box/multiModuleWrappers/plain/simple.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1283 // MODULE: module1 // FILE: bar.kt diff --git a/js/js.translator/testData/box/nameClashes/localFunctionInLambda.kt b/js/js.translator/testData/box/nameClashes/localFunctionInLambda.kt index 731347ec010..da1f8493c2f 100644 --- a/js/js.translator/testData/box/nameClashes/localFunctionInLambda.kt +++ b/js/js.translator/testData/box/nameClashes/localFunctionInLambda.kt @@ -1,4 +1,3 @@ -// IGNORE_BACKEND: JS_IR // EXPECTED_REACHABLE_NODES: 1287 // MODULE: lib // FILE: lib.kt