[IR] Check pureness in inlining lowering after transformation

This commit is contained in:
Ilya Goncharov
2021-03-19 12:12:28 +03:00
parent 8ac8dbdab8
commit f85ad41674
@@ -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 {