From ac9e8f667d9aff6d7e105267482f8ec1c8d45436 Mon Sep 17 00:00:00 2001 From: Mikhail Glukhikh Date: Fri, 7 May 2021 14:13:49 +0300 Subject: [PATCH] Simplify code in Fir2IrConversionScope.returnTarget --- .../fir/backend/Fir2IrConversionScope.kt | 23 +++++++++---------- 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrConversionScope.kt b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrConversionScope.kt index b679005a6d2..50df0019ea9 100644 --- a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrConversionScope.kt +++ b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrConversionScope.kt @@ -95,21 +95,20 @@ class Fir2IrConversionScope { } fun returnTarget(expression: FirReturnExpression, declarationStorage: Fir2IrDeclarationStorage): IrFunction { - val firTarget = expression.target.labeledElement - val irTarget = (firTarget as? FirFunction)?.let { - when (it) { - is FirConstructor -> declarationStorage.getCachedIrConstructor(it) - is FirPropertyAccessor -> { - for ((property, firProperty) in propertyStack.asReversed()) { - if (firProperty?.getter === firTarget) { - return@let property.getter - } else if (firProperty?.setter === firTarget) { - return@let property.setter - } + val irTarget = when (val firTarget = expression.target.labeledElement) { + is FirConstructor -> declarationStorage.getCachedIrConstructor(firTarget) + is FirPropertyAccessor -> { + var answer: IrFunction? = null + for ((property, firProperty) in propertyStack.asReversed()) { + if (firProperty?.getter === firTarget) { + answer = property.getter + } else if (firProperty?.setter === firTarget) { + answer = property.setter } } - else -> declarationStorage.getCachedIrFunction(it) + answer } + else -> declarationStorage.getCachedIrFunction(firTarget) } for (potentialTarget in functionStack.asReversed()) { if (potentialTarget == irTarget) {