From f2e3c91f797cfbc11cb2b87b3f1904156e74389d Mon Sep 17 00:00:00 2001 From: Igor Chevdar Date: Fri, 9 Feb 2018 11:44:39 +0300 Subject: [PATCH] Fixed bug with arguments cloning in inliner There is no need to clone call arguments --- .../kotlin/backend/konan/lower/FunctionInlining.kt | 7 ++----- 1 file changed, 2 insertions(+), 5 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 ae661d57d81..987fc10c45c 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 @@ -27,8 +27,6 @@ import org.jetbrains.kotlin.backend.konan.descriptors.needsInlining import org.jetbrains.kotlin.backend.konan.descriptors.propertyIfAccessor import org.jetbrains.kotlin.backend.konan.descriptors.resolveFakeOverride import org.jetbrains.kotlin.backend.konan.ir.DeserializerDriver -import org.jetbrains.kotlin.builtins.isFunctionType -import org.jetbrains.kotlin.builtins.isSuspendFunctionType import org.jetbrains.kotlin.descriptors.DeclarationDescriptor import org.jetbrains.kotlin.descriptors.ParameterDescriptor import org.jetbrains.kotlin.descriptors.ValueDescriptor @@ -331,6 +329,7 @@ private class Inliner(val globalSubstituteMap: MutableMap original_argument_expression. val evaluationStatements = mutableListOf() // List of evaluation statements. + val substitutor = ParameterSubstitutor() parameterToArgumentOld.forEach { val parameterDescriptor = it.parameterDescriptor @@ -340,9 +339,7 @@ private class Inliner(val globalSubstituteMap: MutableMap