diff --git a/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/lower/inline/FunctionInlining.kt b/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/lower/inline/FunctionInlining.kt index 19608239f3d..53e69482d6c 100644 --- a/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/lower/inline/FunctionInlining.kt +++ b/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/lower/inline/FunctionInlining.kt @@ -546,11 +546,11 @@ class FunctionInlining( return@forEach } - val argumentExtracted = !argument.argumentExpression.isPure(false) - // Arguments may reference the previous ones - substitute them. val variableInitializer = argument.argumentExpression.transform(substitutor, data = null) + val argumentExtracted = !argument.argumentExpression.isPure(false, context = context) + if (!argumentExtracted) { substituteMap[argument.parameter] = variableInitializer } else {