From b77d481ac6770ea17014cc69f4d944534beb4df4 Mon Sep 17 00:00:00 2001 From: Anton Bannykh Date: Thu, 24 Jun 2021 15:54:57 +0300 Subject: [PATCH] IR: hide assert behind a flag In JS IC the symbol might be unbound at this moment --- .../jetbrains/kotlin/ir/expressions/impl/IrSetValueImpl.kt | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/expressions/impl/IrSetValueImpl.kt b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/expressions/impl/IrSetValueImpl.kt index e6f15579c51..a7b87e92b33 100644 --- a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/expressions/impl/IrSetValueImpl.kt +++ b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/expressions/impl/IrSetValueImpl.kt @@ -16,7 +16,6 @@ package org.jetbrains.kotlin.ir.expressions.impl -import org.jetbrains.kotlin.ir.declarations.IrValueParameter import org.jetbrains.kotlin.ir.expressions.IrExpression import org.jetbrains.kotlin.ir.expressions.IrSetValue import org.jetbrains.kotlin.ir.expressions.IrStatementOrigin @@ -35,7 +34,9 @@ class IrSetValueImpl( ) : IrSetValue() { init { - assert(symbol.owner.isAssignable) { "Only assignable IrValues can be set" } + if (symbol.isBound) { + assert(symbol.owner.isAssignable) { "Only assignable IrValues can be set" } + } } override fun accept(visitor: IrElementVisitor, data: D): R {