diff --git a/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/lower/coroutines/StateMachineBuilder.kt b/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/lower/coroutines/StateMachineBuilder.kt index 038f9379aa6..b1f8ccd1503 100644 --- a/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/lower/coroutines/StateMachineBuilder.kt +++ b/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/lower/coroutines/StateMachineBuilder.kt @@ -153,8 +153,6 @@ class StateMachineBuilder( private var currentState = entryState private var currentBlock = entryState.entryBlock - private val returnableBlockMap = mutableMapOf>() - private val catchBlockStack = mutableListOf(rootExceptionTrap) private val tryStateMap = mutableMapOf() private val tryLoopStack = mutableListOf() @@ -650,13 +648,7 @@ class StateMachineBuilder( override fun visitReturn(expression: IrReturn) { expression.acceptChildrenVoid(this) val returnTarget = expression.returnTargetSymbol - if (returnTarget is IrReturnableBlockSymbol) { - val (exitState, varSymbol) = returnableBlockMap[returnTarget]!! - if (varSymbol != null) { - transformLastExpression { JsIrBuilder.buildSetVariable(varSymbol, it, it.type) } - } - maybeDoDispatch(exitState) - } else { + if (returnTarget !is IrReturnableBlockSymbol) { transformLastExpression { expression.apply { value = it } } } }