JS/Inlining: mark closure constructors as free from side effects

This commit is contained in:
Alexey Andreev
2016-05-06 11:10:42 +03:00
parent 47cb0cde01
commit c3d0fca92b
@@ -68,8 +68,8 @@ class LiteralFunctionTranslator(context: TranslationContext) : AbstractTranslato
}
fun JsFunction.withCapturedParameters(context: TranslationContext, invokingContext: TranslationContext, descriptor: MemberDescriptor): JsExpression {
val ref = invokingContext.define(descriptor, this)
val invocation = JsInvocation(ref)
val ref = invokingContext.define(descriptor, this).apply { sideEffects = false }
val invocation = JsInvocation(ref).apply { sideEffects = false }
val invocationArguments = invocation.arguments
val functionParameters = this.parameters