From 4306215b18059d0b5b1c90a2d5caaee053c884a9 Mon Sep 17 00:00:00 2001 From: Konstantin Anisimov Date: Fri, 3 Feb 2017 19:19:00 +0700 Subject: [PATCH] Merge --- .../jetbrains/kotlin/backend/konan/lower/FunctionInlining.kt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/lower/FunctionInlining.kt b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/lower/FunctionInlining.kt index 0de52cfcc00..83cbd1f2ab0 100644 --- a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/lower/FunctionInlining.kt +++ b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/lower/FunctionInlining.kt @@ -80,7 +80,7 @@ internal class FunctionInlining(val context: Context): IrElementTransformerVoid( fun inlineFunction(irCall: IrCall): IrBlock { val functionDescriptor = irCall.descriptor as FunctionDescriptor - val functionDeclaration = context.ir.moduleIndex.functions[functionDescriptor] // Get FunctionDeclaration by FunctionDescriptor. + val functionDeclaration = context.ir.originalModuleIndex.functions[functionDescriptor] // Get FunctionDeclaration by FunctionDescriptor. val copyFuncDeclaration = functionDeclaration!!.accept(DeepCopyIrTree(), null) as IrFunction // Create copy of the function. val startOffset = copyFuncDeclaration.startOffset @@ -113,7 +113,7 @@ internal class FunctionInlining(val context: Context): IrElementTransformerVoid( val functionDescriptor = expression.descriptor as FunctionDescriptor if (!functionDescriptor.isInline) return super.visitCall(expression) // Function is not to be inlined - do nothing. - val functionDeclaration = context.ir.moduleIndex.functions[functionDescriptor] // Get FunctionDeclaration by FunctionDescriptor. + val functionDeclaration = context.ir.originalModuleIndex.functions[functionDescriptor] // Get FunctionDeclaration by FunctionDescriptor. if (functionDeclaration == null) return super.visitCall(expression) // Function is declared in another module. return inlineFunction(expression) // Return newly created IrBlock instead of IrCall. }