From b47e0e861b0c394250805fa96c830a2a7b96cb61 Mon Sep 17 00:00:00 2001 From: Mads Ager Date: Wed, 30 Sep 2020 13:56:08 +0200 Subject: [PATCH] [PSI2IR] Use SYNTHETIC_OFFSET for delegated brigdes. This allows kotlin-native to generate code in debug mode. LLVM requires debug attributes for this code and SYNTHETIC_OFFSET makes kotlin-native generate dummy debug attributes. --- .../jetbrains/kotlin/psi2ir/generators/ClassGenerator.kt | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/compiler/ir/ir.psi2ir/src/org/jetbrains/kotlin/psi2ir/generators/ClassGenerator.kt b/compiler/ir/ir.psi2ir/src/org/jetbrains/kotlin/psi2ir/generators/ClassGenerator.kt index c64c4023ed8..3d20df30936 100644 --- a/compiler/ir/ir.psi2ir/src/org/jetbrains/kotlin/psi2ir/generators/ClassGenerator.kt +++ b/compiler/ir/ir.psi2ir/src/org/jetbrains/kotlin/psi2ir/generators/ClassGenerator.kt @@ -19,7 +19,6 @@ package org.jetbrains.kotlin.psi2ir.generators import org.jetbrains.kotlin.backend.common.CodegenUtil import org.jetbrains.kotlin.builtins.KotlinBuiltIns import org.jetbrains.kotlin.descriptors.* -import org.jetbrains.kotlin.ir.UNDEFINED_OFFSET import org.jetbrains.kotlin.ir.declarations.* import org.jetbrains.kotlin.ir.descriptors.IrImplementingDelegateDescriptorImpl import org.jetbrains.kotlin.ir.expressions.IrBlockBody @@ -30,6 +29,7 @@ import org.jetbrains.kotlin.ir.expressions.impl.IrReturnImpl import org.jetbrains.kotlin.ir.expressions.mapValueParameters import org.jetbrains.kotlin.ir.expressions.putTypeArguments import org.jetbrains.kotlin.ir.expressions.typeParametersCount +import org.jetbrains.kotlin.ir.util.SYNTHETIC_OFFSET import org.jetbrains.kotlin.ir.util.createIrClassFromDescriptor import org.jetbrains.kotlin.ir.util.declareSimpleFunctionWithOverrides import org.jetbrains.kotlin.ir.util.properties @@ -306,7 +306,7 @@ class ClassGenerator( delegateToDescriptor: FunctionDescriptor ): IrSimpleFunction = context.symbolTable.declareSimpleFunctionWithOverrides( - UNDEFINED_OFFSET, UNDEFINED_OFFSET, + SYNTHETIC_OFFSET, SYNTHETIC_OFFSET, IrDeclarationOrigin.DELEGATED_MEMBER, delegatedDescriptor ).buildWithScope { irFunction -> @@ -324,8 +324,8 @@ class ClassGenerator( delegateToDescriptor: FunctionDescriptor, irDelegatedFunction: IrSimpleFunction ): IrBlockBody { - val startOffset = UNDEFINED_OFFSET - val endOffset = UNDEFINED_OFFSET + val startOffset = SYNTHETIC_OFFSET + val endOffset = SYNTHETIC_OFFSET val irBlockBody = context.irFactory.createBlockBody(startOffset, endOffset)