diff --git a/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/extensions/IrGenerationExtension.kt b/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/extensions/IrGenerationExtension.kt index 5c8714f7928..08dfbd38009 100644 --- a/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/extensions/IrGenerationExtension.kt +++ b/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/extensions/IrGenerationExtension.kt @@ -25,7 +25,7 @@ class IrPluginContext( val symbolTable: SymbolTable, val typeTranslator: TypeTranslator, override val irBuiltIns: IrBuiltIns, - val symbols: BuiltinSymbolsBase = BuiltinSymbolsBase(irBuiltIns.builtIns, symbolTable) + val symbols: BuiltinSymbolsBase = BuiltinSymbolsBase(irBuiltIns, irBuiltIns.builtIns, symbolTable) ) : IrGeneratorContext() interface IrGenerationExtension : IrExtensionGenerator { diff --git a/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/ir/Ir.kt b/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/ir/Ir.kt index e6e78ecae2e..39147c79165 100644 --- a/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/ir/Ir.kt +++ b/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/ir/Ir.kt @@ -48,7 +48,7 @@ abstract class Ir(val context: T, val irModule: Ir /** * Symbols for builtins that are available without any context and are not specific to any backend */ -open class BuiltinSymbolsBase(protected val builtIns: KotlinBuiltIns, private val symbolTable: SymbolTable) { +open class BuiltinSymbolsBase(protected val irBuiltIns: IrBuiltIns, private val builtIns: KotlinBuiltIns, private val symbolTable: SymbolTable) { protected fun builtInsPackage(vararg packageNameSegments: String) = builtIns.builtInsModule.getPackage(FqName.fromSegments(listOf(*packageNameSegments))).memberScope @@ -232,7 +232,7 @@ open class BuiltinSymbolsBase(protected val builtIns: KotlinBuiltIns, private va // Some symbols below are used in kotlin-native, so they can't be private @Suppress("MemberVisibilityCanBePrivate", "PropertyName") abstract class Symbols(val context: T, symbolTable: SymbolTable) : - BuiltinSymbolsBase(context.builtIns, symbolTable) { + BuiltinSymbolsBase(context.irBuiltIns, context.builtIns, symbolTable) { abstract val ThrowNullPointerException: IrFunctionSymbol abstract val ThrowNoWhenBranchMatchedException: IrFunctionSymbol abstract val ThrowTypeCastException: IrFunctionSymbol diff --git a/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/JvmSymbols.kt b/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/JvmSymbols.kt index 7205f85e2bf..0b4abc9cad9 100644 --- a/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/JvmSymbols.kt +++ b/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/JvmSymbols.kt @@ -50,8 +50,6 @@ class JvmSymbols( private val kotlinReflectPackage: IrPackageFragment = createPackage(FqName("kotlin.reflect")) private val javaLangPackage: IrPackageFragment = createPackage(FqName("java.lang")) - private val irBuiltIns = context.irBuiltIns - private val generateOptimizedCallableReferenceSuperClasses = context.state.generateOptimizedCallableReferenceSuperClasses private val nullPointerExceptionClass: IrClassSymbol =