diff --git a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/llvm/IrToBitcode.kt b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/llvm/IrToBitcode.kt index 9a697b47245..fb0ff55d942 100644 --- a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/llvm/IrToBitcode.kt +++ b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/llvm/IrToBitcode.kt @@ -1940,8 +1940,15 @@ internal class CodeGeneratorVisitor(val context: Context, val lifetimes: Map? = null + + private fun IrFunction.scope(): DIScopeOpaqueRef? = if (startOffset != UNDEFINED_OFFSET) ( + if (irFunctionSavedScope != null && this == irFunctionSavedScope!!.first) + irFunctionSavedScope!!.second + else + this.scope(startLine()).also { irFunctionSavedScope = Pair(this, it) } + ) else null private val IrFunction.isReifiedInline:Boolean get() = isInline && typeParameters.any { it.isReified }