diff --git a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/util/SymbolTable.kt b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/util/SymbolTable.kt index ee8a85c55a3..8025c9d9333 100644 --- a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/util/SymbolTable.kt +++ b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/util/SymbolTable.kt @@ -220,7 +220,10 @@ open class SymbolTable( protected inline fun createOwnerSafe(symbol: S, createOwner: (S) -> B): B { val owner = createOwner(symbol) - assert(symbol.isBound && symbol.owner === owner) + require(symbol.isBound) + require(symbol.owner === owner) { + "Attempt to rebind an IR symbol or to re-create its owner: old owner ${symbol.owner.render()}, new owner ${owner.render()}" + } return owner } }