From 83edc7fa7310357a71cf58864e67b35eb504fb3a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Steven=20Sch=C3=A4fer?= Date: Thu, 9 Jan 2020 13:51:02 +0100 Subject: [PATCH] IR: Remove unused argument from DeclarationFactor.getFieldForEnumEntry --- .../jetbrains/kotlin/backend/common/ir/DeclarationFactory.kt | 2 +- .../jetbrains/kotlin/ir/backend/js/JsDeclarationFactory.kt | 2 +- .../kotlin/backend/jvm/descriptors/JvmDeclarationFactory.kt | 2 +- .../jetbrains/kotlin/backend/jvm/lower/EnumClassLowering.kt | 4 +--- .../kotlin/backend/jvm/lower/SingletonReferencesLowering.kt | 2 +- 5 files changed, 5 insertions(+), 7 deletions(-) diff --git a/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/ir/DeclarationFactory.kt b/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/ir/DeclarationFactory.kt index 9a2da3d17ac..9ce12f42c17 100644 --- a/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/ir/DeclarationFactory.kt +++ b/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/ir/DeclarationFactory.kt @@ -11,7 +11,7 @@ import org.jetbrains.kotlin.ir.types.IrType interface DeclarationFactory { object FIELD_FOR_OUTER_THIS : IrDeclarationOriginImpl("FIELD_FOR_OUTER_THIS", isSynthetic = true) - fun getFieldForEnumEntry(enumEntry: IrEnumEntry, entryType: IrType): IrField + fun getFieldForEnumEntry(enumEntry: IrEnumEntry): IrField fun getOuterThisField(innerClass: IrClass): IrField fun getInnerClassConstructorWithOuterThisParameter(innerClassConstructor: IrConstructor): IrConstructor fun getFieldForObjectInstance(singleton: IrClass): IrField diff --git a/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/JsDeclarationFactory.kt b/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/JsDeclarationFactory.kt index ac36ee72804..4a625045aae 100644 --- a/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/JsDeclarationFactory.kt +++ b/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/JsDeclarationFactory.kt @@ -32,7 +32,7 @@ class JsDeclarationFactory : DeclarationFactory { private val outerThisFieldSymbols = HashMap() private val innerClassConstructors = HashMap() - override fun getFieldForEnumEntry(enumEntry: IrEnumEntry, entryType: IrType): IrField = TODO() + override fun getFieldForEnumEntry(enumEntry: IrEnumEntry): IrField = TODO() override fun getOuterThisField(innerClass: IrClass): IrField = if (!innerClass.isInner) throw AssertionError("Class is not inner: ${innerClass.dump()}") diff --git a/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/descriptors/JvmDeclarationFactory.kt b/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/descriptors/JvmDeclarationFactory.kt index fecd8035365..6e5b5c29406 100644 --- a/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/descriptors/JvmDeclarationFactory.kt +++ b/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/descriptors/JvmDeclarationFactory.kt @@ -46,7 +46,7 @@ class JvmDeclarationFactory( private val defaultImplsClasses = HashMap() private val defaultImplsRedirections = HashMap() - override fun getFieldForEnumEntry(enumEntry: IrEnumEntry, entryType: IrType): IrField = + override fun getFieldForEnumEntry(enumEntry: IrEnumEntry): IrField = singletonFieldDeclarations.getOrPut(enumEntry) { buildField { setSourceRange(enumEntry) diff --git a/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/lower/EnumClassLowering.kt b/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/lower/EnumClassLowering.kt index 582cbb4537e..8a6faa75dc5 100644 --- a/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/lower/EnumClassLowering.kt +++ b/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/lower/EnumClassLowering.kt @@ -222,9 +222,7 @@ private class EnumClassLowering(val context: JvmBackendContext) : ClassLoweringP } private fun createFieldForEnumEntry(enumEntry: IrEnumEntry): IrField = - context.declarationFactory.getFieldForEnumEntry( - enumEntry, (enumEntry.correspondingClass ?: enumEntry.parentAsClass).defaultType - ).also { + context.declarationFactory.getFieldForEnumEntry(enumEntry).also { it.initializer = IrExpressionBodyImpl( enumEntry.initializerExpression!!.patchDeclarationParents(it) ) diff --git a/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/lower/SingletonReferencesLowering.kt b/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/lower/SingletonReferencesLowering.kt index 67db8a14151..e8d34574ddd 100644 --- a/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/lower/SingletonReferencesLowering.kt +++ b/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/lower/SingletonReferencesLowering.kt @@ -46,7 +46,7 @@ private class SingletonReferencesLowering(val context: JvmBackendContext) : File // must be replaced with `SomeEnumEntry.this`. IrGetValueImpl(expression.startOffset, expression.endOffset, expression.type, appropriateThis.symbol) } else { - val entrySymbol = context.declarationFactory.getFieldForEnumEntry(expression.symbol.owner, expression.type) + val entrySymbol = context.declarationFactory.getFieldForEnumEntry(expression.symbol.owner) IrGetFieldImpl(expression.startOffset, expression.endOffset, entrySymbol.symbol, expression.type) } }