From a92c53daecb662903f36dff1d925ee192566028c Mon Sep 17 00:00:00 2001 From: Igor Chevdar Date: Tue, 28 Feb 2023 13:04:21 +0200 Subject: [PATCH] [K/N][IR] Do not save local inline functions before closure building #KT-56965 Fixed --- .../jetbrains/kotlin/backend/konan/driver/phases/Lowerings.kt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/driver/phases/Lowerings.kt b/kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/driver/phases/Lowerings.kt index 81cad1ca320..28e5c7d4ae5 100644 --- a/kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/driver/phases/Lowerings.kt +++ b/kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/driver/phases/Lowerings.kt @@ -33,6 +33,7 @@ import org.jetbrains.kotlin.backend.konan.lower.RedundantCoercionsCleaner import org.jetbrains.kotlin.backend.konan.lower.ReturnsInsertionLowering import org.jetbrains.kotlin.backend.konan.lower.UnboxInlineLowering import org.jetbrains.kotlin.backend.konan.optimizations.KonanBCEForLoopBodyTransformer +import org.jetbrains.kotlin.ir.util.isLocal import org.jetbrains.kotlin.ir.IrElement import org.jetbrains.kotlin.ir.declarations.IrFunction import org.jetbrains.kotlin.ir.visitors.IrElementVisitorVoid @@ -112,7 +113,7 @@ private val extractLocalClassesFromInlineBodies = createFileLoweringPhase( } override fun visitFunction(declaration: IrFunction) { - if (declaration.isInline) + if (declaration.isInline && !declaration.isLocal) context.inlineFunctionsSupport.saveNonLoweredInlineFunction(declaration) declaration.acceptChildrenVoid(this) }