From e92cb49b24280193f9e67277178cacaffe8df505 Mon Sep 17 00:00:00 2001 From: Mikhail Glukhikh Date: Thu, 27 Apr 2023 16:30:19 +0200 Subject: [PATCH] K2: fix SymbolTable accessing in getIrClassSymbolForNotFoundClass Related to KT-57049 --- .../kotlin/fir/backend/Fir2IrClassifierStorage.kt | 7 ++----- 1 file changed, 2 insertions(+), 5 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 de69e979f6b..6169db26cec 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 @@ -624,17 +624,14 @@ class Fir2IrClassifierStorage( val parentClass = parentId?.let { getIrClassSymbolForNotFoundClass(it.toLookupTag()) } val irParent = parentClass?.owner ?: declarationStorage.getIrExternalPackageFragment(classId.packageFqName) - val symbol = Fir2IrClassSymbol(signature) - symbolTable.declareClass(signature, { symbol }) { + return symbolTable.referenceClass(signature, { Fir2IrClassSymbol(signature) }) { irFactory.createClass( - UNDEFINED_OFFSET, UNDEFINED_OFFSET, IrDeclarationOrigin.IR_EXTERNAL_DECLARATION_STUB, symbol, classId.shortClassName, + UNDEFINED_OFFSET, UNDEFINED_OFFSET, IrDeclarationOrigin.IR_EXTERNAL_DECLARATION_STUB, it, classId.shortClassName, ClassKind.CLASS, DescriptorVisibilities.DEFAULT_VISIBILITY, Modality.FINAL, ).apply { parent = irParent } } - - return symbol } fun getIrTypeParameterSymbol(