IR: minor, add toString to MemberWithOriginal and FakeOverride

To make it easier to debug.
This commit is contained in:
Alexander Udalov
2024-01-26 14:36:06 +01:00
committed by Space Team
parent eb6f30dcd4
commit 9e2c7ce1e1
2 changed files with 6 additions and 1 deletions
@@ -35,7 +35,9 @@ class IrFakeOverrideBuilder(
) { ) {
private val overrideChecker = IrOverrideChecker(typeSystem, externalOverridabilityConditions) private val overrideChecker = IrOverrideChecker(typeSystem, externalOverridabilityConditions)
internal data class FakeOverride(val override: IrOverridableMember, val original: IrOverridableMember) internal data class FakeOverride(val override: IrOverridableMember, val original: IrOverridableMember) {
override fun toString(): String = override.render()
}
private var IrOverridableMember.overriddenSymbols: List<IrSymbol> private var IrOverridableMember.overriddenSymbols: List<IrSymbol>
get() = when (this) { get() = when (this) {
@@ -12,6 +12,7 @@ import org.jetbrains.kotlin.ir.overrides.IrExternalOverridabilityCondition.Resul
import org.jetbrains.kotlin.ir.types.IrTypeSystemContext import org.jetbrains.kotlin.ir.types.IrTypeSystemContext
import org.jetbrains.kotlin.ir.types.IrTypeSystemContextWithAdditionalAxioms import org.jetbrains.kotlin.ir.types.IrTypeSystemContextWithAdditionalAxioms
import org.jetbrains.kotlin.ir.types.createIrTypeCheckerState import org.jetbrains.kotlin.ir.types.createIrTypeCheckerState
import org.jetbrains.kotlin.ir.util.render
import org.jetbrains.kotlin.resolve.OverridingUtil.OverrideCompatibilityInfo import org.jetbrains.kotlin.resolve.OverridingUtil.OverrideCompatibilityInfo
import org.jetbrains.kotlin.resolve.OverridingUtil.OverrideCompatibilityInfo.* import org.jetbrains.kotlin.resolve.OverridingUtil.OverrideCompatibilityInfo.*
import org.jetbrains.kotlin.types.AbstractTypeChecker import org.jetbrains.kotlin.types.AbstractTypeChecker
@@ -25,6 +26,8 @@ class MemberWithOriginal(val member: IrOverridableMember, original: IrOverridabl
internal constructor(fakeOverride: IrFakeOverrideBuilder.FakeOverride) : this(fakeOverride.override, fakeOverride.original) internal constructor(fakeOverride: IrFakeOverrideBuilder.FakeOverride) : this(fakeOverride.override, fakeOverride.original)
val original: IrOverridableMember = original ?: member val original: IrOverridableMember = original ?: member
override fun toString(): String = member.render()
} }
class IrOverrideChecker( class IrOverrideChecker(