IR: pass also unsubstituted member to external conditions
In the future version of JavaIncompatibilityRulesOverridabilityCondition for IR, we need to compute the original JVM signature of a declaration. In descriptors, it's possible simply by using `original`.
This commit is contained in:
committed by
Space Team
parent
e15894e98e
commit
39327a37cb
+3
-2
@@ -9,6 +9,7 @@ import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.ir.IrElement
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
import org.jetbrains.kotlin.ir.overrides.IrOverrideChecker
|
||||
import org.jetbrains.kotlin.ir.overrides.MemberWithOriginal
|
||||
import org.jetbrains.kotlin.ir.symbols.IrClassSymbol
|
||||
import org.jetbrains.kotlin.ir.symbols.IrPropertySymbol
|
||||
import org.jetbrains.kotlin.ir.symbols.IrSymbol
|
||||
@@ -91,8 +92,8 @@ internal class ActualFakeOverridesAdder(
|
||||
val override = klass.declarations.firstOrNull {
|
||||
it is IrOverridableMember &&
|
||||
overrideChecker.isOverridableBy(
|
||||
superMember = memberFromSupertype,
|
||||
subMember = it,
|
||||
superMember = MemberWithOriginal(memberFromSupertype),
|
||||
subMember = MemberWithOriginal(it),
|
||||
checkIsInlineFlag = false,
|
||||
).result == OverridingUtil.OverrideCompatibilityInfo.Result.OVERRIDABLE
|
||||
} as? IrOverridableDeclaration<IrSymbol>
|
||||
|
||||
Reference in New Issue
Block a user