From 2ee5d6760b286e0cdcf581e971ccdcba80d6d2c4 Mon Sep 17 00:00:00 2001 From: Alexander Udalov Date: Fri, 10 Jul 2020 21:21:19 +0200 Subject: [PATCH] IR: introduce IrFactory This is needed to refactor IrPersistingElementBase-based implementations into another module, to use it in JS IR. (cherry picked from commit 4d0802a0512a8fb4c0bd1319952dc4ca2ff0bd9c) --- .../jetbrains/kotlin/backend/konan/KonanBackendContext.kt | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/KonanBackendContext.kt b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/KonanBackendContext.kt index 5ffd4df44cd..56c000f2e2f 100644 --- a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/KonanBackendContext.kt +++ b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/KonanBackendContext.kt @@ -12,6 +12,7 @@ import org.jetbrains.kotlin.backend.konan.descriptors.KonanSharedVariablesManage import org.jetbrains.kotlin.backend.konan.descriptors.findPackage import org.jetbrains.kotlin.backend.konan.descriptors.kotlinNativeInternal import org.jetbrains.kotlin.backend.konan.ir.KonanIr +import org.jetbrains.kotlin.builtins.konan.KonanBuiltIns import org.jetbrains.kotlin.cli.common.CLIConfigurationKeys import org.jetbrains.kotlin.cli.common.messages.CompilerMessageLocation import org.jetbrains.kotlin.cli.common.messages.CompilerMessageSeverity @@ -20,11 +21,12 @@ import org.jetbrains.kotlin.descriptors.ClassDescriptor import org.jetbrains.kotlin.descriptors.FunctionDescriptor import org.jetbrains.kotlin.incremental.components.NoLookupLocation import org.jetbrains.kotlin.ir.IrElement -import org.jetbrains.kotlin.ir.declarations.IrFile -import org.jetbrains.kotlin.builtins.konan.KonanBuiltIns import org.jetbrains.kotlin.ir.builders.IrBuilderWithScope import org.jetbrains.kotlin.ir.declarations.IrClass import org.jetbrains.kotlin.ir.declarations.IrDeclaration +import org.jetbrains.kotlin.ir.declarations.IrFactory +import org.jetbrains.kotlin.ir.declarations.IrFile +import org.jetbrains.kotlin.ir.declarations.impl.IrFactoryImpl import org.jetbrains.kotlin.ir.symbols.IrFunctionSymbol import org.jetbrains.kotlin.ir.symbols.IrSimpleFunctionSymbol import org.jetbrains.kotlin.name.Name @@ -66,6 +68,8 @@ internal abstract class KonanBackendContext(val config: KonanConfig) : CommonBac override val mapping: Mapping = DefaultMapping() override val extractedLocalClasses: MutableSet = mutableSetOf() + + override val irFactory: IrFactory = IrFactoryImpl } internal fun IrElement.getCompilerMessageLocation(containingFile: IrFile): CompilerMessageLocation? =