diff --git a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrConverter.kt b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrConverter.kt index 58134b80893..a07d8e84ec4 100644 --- a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrConverter.kt +++ b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrConverter.kt @@ -293,8 +293,7 @@ class Fir2IrConverter( generateTypicalIrProviderList(irModuleFragment.descriptor, irBuiltIns, symbolTable, extensions = generatorExtensions) val externalDependenciesGenerator = ExternalDependenciesGenerator( symbolTable, - irProviders, - languageVersionSettings + irProviders ) // Necessary call to generate built-in IR classes externalDependenciesGenerator.generateUnboundSymbolsAsDependencies() 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 8d705660543..ccc1d64bf62 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 @@ -10,7 +10,6 @@ import org.jetbrains.kotlin.analyzer.AbstractAnalyzerWithCompilerReport import org.jetbrains.kotlin.backend.common.phaser.PhaseConfig import org.jetbrains.kotlin.backend.common.phaser.invokeToplevel import org.jetbrains.kotlin.config.CompilerConfiguration -import org.jetbrains.kotlin.config.languageVersionSettings import org.jetbrains.kotlin.ir.backend.js.lower.generateTests import org.jetbrains.kotlin.ir.backend.js.lower.moveBodilessDeclarationsToSeparatePlace import org.jetbrains.kotlin.ir.backend.js.transformers.irToJs.IrModuleToJsTransformer @@ -80,7 +79,7 @@ fun compile( // Load declarations referenced during `context` initialization val irProviders = listOf(deserializer) - ExternalDependenciesGenerator(symbolTable, irProviders, configuration.languageVersionSettings).generateUnboundSymbolsAsDependencies() + ExternalDependenciesGenerator(symbolTable, irProviders).generateUnboundSymbolsAsDependencies() deserializer.postProcess() symbolTable.noUnboundLeft("Unbound symbols at the end of linker") diff --git a/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/JvmIrCodegenFactory.kt b/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/JvmIrCodegenFactory.kt index 862507de227..bde434f4369 100644 --- a/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/JvmIrCodegenFactory.kt +++ b/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/JvmIrCodegenFactory.kt @@ -171,7 +171,7 @@ class JvmIrCodegenFactory(private val phaseConfig: PhaseConfig) : CodegenFactory symbolTable, phaseConfig, extensions, backendExtension ) /* JvmBackendContext creates new unbound symbols, have to resolve them. */ - ExternalDependenciesGenerator(symbolTable, irProviders, state.languageVersionSettings).generateUnboundSymbolsAsDependencies() + ExternalDependenciesGenerator(symbolTable, irProviders).generateUnboundSymbolsAsDependencies() state.mapInlineClass = { descriptor -> context.typeMapper.mapType(context.referenceClass(descriptor).defaultType) diff --git a/compiler/ir/backend.wasm/src/org/jetbrains/kotlin/backend/wasm/compiler.kt b/compiler/ir/backend.wasm/src/org/jetbrains/kotlin/backend/wasm/compiler.kt index 7425e543b85..b2f62da625c 100644 --- a/compiler/ir/backend.wasm/src/org/jetbrains/kotlin/backend/wasm/compiler.kt +++ b/compiler/ir/backend.wasm/src/org/jetbrains/kotlin/backend/wasm/compiler.kt @@ -13,7 +13,6 @@ import org.jetbrains.kotlin.backend.wasm.ir2wasm.WasmCompiledModuleFragment import org.jetbrains.kotlin.backend.wasm.ir2wasm.WasmModuleFragmentGenerator import org.jetbrains.kotlin.backend.wasm.ir2wasm.generateStringLiteralsSupport import org.jetbrains.kotlin.config.CompilerConfiguration -import org.jetbrains.kotlin.config.languageVersionSettings import org.jetbrains.kotlin.ir.backend.js.MainModule import org.jetbrains.kotlin.ir.backend.js.loadIr import org.jetbrains.kotlin.ir.declarations.impl.IrFactoryImpl @@ -56,7 +55,7 @@ fun compileWasm( // Load declarations referenced during `context` initialization allModules.forEach { val irProviders = generateTypicalIrProviderList(it.descriptor, irBuiltIns, symbolTable, deserializer) - ExternalDependenciesGenerator(symbolTable, irProviders, configuration.languageVersionSettings) + ExternalDependenciesGenerator(symbolTable, irProviders) .generateUnboundSymbolsAsDependencies() } @@ -67,7 +66,7 @@ fun compileWasm( // Create stubs val irProviders = generateTypicalIrProviderList(moduleDescriptor, irBuiltIns, symbolTable, deserializer) - ExternalDependenciesGenerator(symbolTable, irProviders, configuration.languageVersionSettings).generateUnboundSymbolsAsDependencies() + ExternalDependenciesGenerator(symbolTable, irProviders).generateUnboundSymbolsAsDependencies() moduleFragment.patchDeclarationParents() wasmPhases.invokeToplevel(phaseConfig, context, moduleFragment) diff --git a/compiler/ir/ir.psi2ir/src/org/jetbrains/kotlin/psi2ir/generators/ModuleGenerator.kt b/compiler/ir/ir.psi2ir/src/org/jetbrains/kotlin/psi2ir/generators/ModuleGenerator.kt index cd44ab7cf33..945a934e548 100644 --- a/compiler/ir/ir.psi2ir/src/org/jetbrains/kotlin/psi2ir/generators/ModuleGenerator.kt +++ b/compiler/ir/ir.psi2ir/src/org/jetbrains/kotlin/psi2ir/generators/ModuleGenerator.kt @@ -60,12 +60,12 @@ class ModuleGenerator( irModule.descriptor, context.irBuiltIns, context.symbolTable, deserializer, extensions ) - ExternalDependenciesGenerator(context.symbolTable, fullIrProvidersList, context.languageVersionSettings) + ExternalDependenciesGenerator(context.symbolTable, fullIrProvidersList) .generateUnboundSymbolsAsDependencies() } fun generateUnboundSymbolsAsDependencies(irProviders: List) { - ExternalDependenciesGenerator(context.symbolTable, irProviders, context.languageVersionSettings) + ExternalDependenciesGenerator(context.symbolTable, irProviders) .generateUnboundSymbolsAsDependencies() } diff --git a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/util/ExternalDependenciesGenerator.kt b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/util/ExternalDependenciesGenerator.kt index c5e686b1dd5..3511affde97 100644 --- a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/util/ExternalDependenciesGenerator.kt +++ b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/util/ExternalDependenciesGenerator.kt @@ -16,7 +16,6 @@ package org.jetbrains.kotlin.ir.util -import org.jetbrains.kotlin.config.LanguageVersionSettings import org.jetbrains.kotlin.descriptors.ModuleDescriptor import org.jetbrains.kotlin.ir.declarations.IrDeclaration import org.jetbrains.kotlin.ir.descriptors.IrBuiltIns @@ -27,8 +26,7 @@ import org.jetbrains.kotlin.utils.addToStdlib.firstNotNullResult class ExternalDependenciesGenerator( val symbolTable: SymbolTable, - private val irProviders: List, - private val languageVersionSettings: LanguageVersionSettings + private val irProviders: List ) { fun generateUnboundSymbolsAsDependencies() { // There should be at most one DeclarationStubGenerator (none in closed world?) diff --git a/compiler/ir/serialization.js/src/org/jetbrains/kotlin/ir/backend/js/klib.kt b/compiler/ir/serialization.js/src/org/jetbrains/kotlin/ir/backend/js/klib.kt index 314c5b1a144..1b69f9be89a 100644 --- a/compiler/ir/serialization.js/src/org/jetbrains/kotlin/ir/backend/js/klib.kt +++ b/compiler/ir/serialization.js/src/org/jetbrains/kotlin/ir/backend/js/klib.kt @@ -289,7 +289,7 @@ fun loadIr( val moduleFragment = deserializedModuleFragments.last() irLinker.init(null, emptyList()) - ExternalDependenciesGenerator(symbolTable, listOf(irLinker), configuration.languageVersionSettings).generateUnboundSymbolsAsDependencies() + ExternalDependenciesGenerator(symbolTable, listOf(irLinker)).generateUnboundSymbolsAsDependencies() irLinker.postProcess() return IrModuleInfo(moduleFragment, deserializedModuleFragments, irBuiltIns, symbolTable, irLinker) diff --git a/js/js.tests/test/org/jetbrains/kotlin/benchmarks/GenerateIrRuntime.kt b/js/js.tests/test/org/jetbrains/kotlin/benchmarks/GenerateIrRuntime.kt index 9756a8f1c4a..d3683821783 100644 --- a/js/js.tests/test/org/jetbrains/kotlin/benchmarks/GenerateIrRuntime.kt +++ b/js/js.tests/test/org/jetbrains/kotlin/benchmarks/GenerateIrRuntime.kt @@ -529,7 +529,7 @@ class GenerateIrRuntime { val moduleFragment = jsLinker.deserializeFullModule(moduleDescriptor, moduleDescriptor.kotlinLibrary) jsLinker.init(null, emptyList()) // Create stubs - ExternalDependenciesGenerator(symbolTable, listOf(jsLinker), languageVersionSettings) + ExternalDependenciesGenerator(symbolTable, listOf(jsLinker)) .generateUnboundSymbolsAsDependencies() jsLinker.postProcess() @@ -560,7 +560,7 @@ class GenerateIrRuntime { // Create stubs jsLinker.init(null, emptyList()) // Create stubs - ExternalDependenciesGenerator(symbolTable, listOf(jsLinker), languageVersionSettings) + ExternalDependenciesGenerator(symbolTable, listOf(jsLinker)) .generateUnboundSymbolsAsDependencies() jsLinker.postProcess() @@ -574,7 +574,7 @@ class GenerateIrRuntime { private fun doBackEnd(module: IrModuleFragment, symbolTable: SymbolTable, irBuiltIns: IrBuiltIns, jsLinker: JsIrLinker): CompilerResult { val context = JsIrBackendContext(module.descriptor, irBuiltIns, symbolTable, module, emptySet(), configuration) - ExternalDependenciesGenerator(symbolTable, listOf(jsLinker), languageVersionSettings).generateUnboundSymbolsAsDependencies() + ExternalDependenciesGenerator(symbolTable, listOf(jsLinker)).generateUnboundSymbolsAsDependencies() jsPhases.invokeToplevel(phaseConfig, context, listOf(module)) diff --git a/plugins/scripting/scripting-compiler/src/org/jetbrains/kotlin/scripting/repl/js/JsCoreScriptingCompiler.kt b/plugins/scripting/scripting-compiler/src/org/jetbrains/kotlin/scripting/repl/js/JsCoreScriptingCompiler.kt index 6407fca3ef7..2e606576383 100644 --- a/plugins/scripting/scripting-compiler/src/org/jetbrains/kotlin/scripting/repl/js/JsCoreScriptingCompiler.kt +++ b/plugins/scripting/scripting-compiler/src/org/jetbrains/kotlin/scripting/repl/js/JsCoreScriptingCompiler.kt @@ -84,8 +84,7 @@ class JsCoreScriptingCompiler( irModuleFragment.descriptor, psi2irContext.irBuiltIns, psi2irContext.symbolTable - ), - environment.configuration.languageVersionSettings + ) ).generateUnboundSymbolsAsDependencies() environment.configuration.put(JSConfigurationKeys.MODULE_KIND, ModuleKind.PLAIN) diff --git a/plugins/scripting/scripting-compiler/src/org/jetbrains/kotlin/scripting/repl/js/JsScriptDependencyCompiler.kt b/plugins/scripting/scripting-compiler/src/org/jetbrains/kotlin/scripting/repl/js/JsScriptDependencyCompiler.kt index 7e11703b8c1..8244f5d5a2f 100644 --- a/plugins/scripting/scripting-compiler/src/org/jetbrains/kotlin/scripting/repl/js/JsScriptDependencyCompiler.kt +++ b/plugins/scripting/scripting-compiler/src/org/jetbrains/kotlin/scripting/repl/js/JsScriptDependencyCompiler.kt @@ -8,7 +8,6 @@ package org.jetbrains.kotlin.scripting.repl.js import org.jetbrains.kotlin.builtins.KotlinBuiltIns import org.jetbrains.kotlin.config.CompilerConfiguration import org.jetbrains.kotlin.config.LanguageVersionSettingsImpl -import org.jetbrains.kotlin.config.languageVersionSettings import org.jetbrains.kotlin.descriptors.ModuleDescriptor import org.jetbrains.kotlin.descriptors.PackageFragmentProvider import org.jetbrains.kotlin.descriptors.impl.ModuleDescriptorImpl @@ -18,7 +17,6 @@ import org.jetbrains.kotlin.ir.backend.js.emptyLoggingContext import org.jetbrains.kotlin.ir.backend.js.generateJsCode import org.jetbrains.kotlin.ir.backend.js.lower.serialization.ir.JsIrLinker import org.jetbrains.kotlin.ir.backend.js.utils.NameTables -import org.jetbrains.kotlin.ir.declarations.impl.IrModuleFragmentImpl import org.jetbrains.kotlin.ir.descriptors.IrBuiltIns import org.jetbrains.kotlin.ir.descriptors.IrFunctionFactory import org.jetbrains.kotlin.ir.util.* @@ -58,7 +56,7 @@ class JsScriptDependencyCompiler( jsLinker.init(null, emptyList()) - ExternalDependenciesGenerator(symbolTable, irProviders, configuration.languageVersionSettings) + ExternalDependenciesGenerator(symbolTable, irProviders) .generateUnboundSymbolsAsDependencies() moduleFragment.patchDeclarationParents() @@ -72,7 +70,7 @@ class JsScriptDependencyCompiler( true ) - ExternalDependenciesGenerator(symbolTable, irProviders, configuration.languageVersionSettings) + ExternalDependenciesGenerator(symbolTable, irProviders) .generateUnboundSymbolsAsDependencies() moduleFragment.patchDeclarationParents() jsLinker.postProcess()