From feb6fd0e0d2be7b954283a921679d71aaba1cae6 Mon Sep 17 00:00:00 2001 From: Kirill Rakhman Date: Tue, 31 Jan 2023 10:02:41 +0100 Subject: [PATCH] Revert "[FIR2IR] Temporary fix of createIrEnumEntry" This reverts commit c9a8f433fb112a0dd96841aa590dc360c4748ef6. KT-54079 --- .../jetbrains/kotlin/fir/backend/Fir2IrClassifierStorage.kt | 5 ----- .../ir.tree/src/org/jetbrains/kotlin/ir/util/SymbolTable.kt | 4 ---- 2 files changed, 9 deletions(-) diff --git a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrClassifierStorage.kt b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrClassifierStorage.kt index e3d3821dca7..592ce93ff97 100644 --- a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrClassifierStorage.kt +++ b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrClassifierStorage.kt @@ -535,11 +535,6 @@ class Fir2IrClassifierStorage( ): IrEnumEntry { return enumEntry.convertWithOffsets { startOffset, endOffset -> val signature = signatureComposer.composeSignature(enumEntry, forceTopLevelPrivate = forceTopLevelPrivate) - if (signature != null) { - // Compilation of kotlinx-serialization-protobuf fails with "already bound" exception if this check is removed - // TODO: get rid of this check - symbolTable.referenceEnumEntryIfAny(signature)?.let { if (it.isBound) return@convertWithOffsets it.owner } - } val result = declareIrEnumEntry(signature) { symbol -> val origin = enumEntry.computeIrOrigin(predefinedOrigin) irFactory.createEnumEntry( diff --git a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/util/SymbolTable.kt b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/util/SymbolTable.kt index 5d0f66e01ef..3d41b2b844b 100644 --- a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/util/SymbolTable.kt +++ b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/util/SymbolTable.kt @@ -664,10 +664,6 @@ open class SymbolTable( else IrEnumEntrySymbolImpl() } - fun referenceEnumEntryIfAny(sig: IdSignature): IrEnumEntrySymbol? { - return enumEntrySymbolTable.get(sig) - } - val unboundEnumEntries: Set get() = enumEntrySymbolTable.unboundSymbols private fun createFieldSymbol(descriptor: PropertyDescriptor, signature: IdSignature?): IrFieldSymbol =