[IR] Remove superQualifier property from IrCall

This commit is contained in:
Roman Artemev
2019-10-08 18:12:48 +03:00
committed by romanart
parent ea5b529d19
commit eee594101a
7 changed files with 5 additions and 13 deletions
@@ -16,10 +16,8 @@
package org.jetbrains.kotlin.ir.expressions
import org.jetbrains.kotlin.descriptors.ClassDescriptor
import org.jetbrains.kotlin.ir.symbols.IrClassSymbol
interface IrCall : IrFunctionAccessExpression {
val superQualifier: ClassDescriptor?
val superQualifierSymbol: IrClassSymbol?
}
@@ -79,12 +79,6 @@ class IrCallImpl(
descriptor.valueParameters.size, origin, superQualifierSymbol
)
constructor(startOffset: Int, endOffset: Int, type: IrType, symbol: IrFunctionSymbol, superQualifierSymbol : IrClassSymbol? = null) :
this(startOffset, endOffset, type, symbol, symbol.descriptor, superQualifierSymbol = superQualifierSymbol)
override val superQualifier: ClassDescriptor? = superQualifierSymbol?.descriptor
override fun <R, D> accept(visitor: IrElementVisitor<R, D>, data: D): R =
visitor.visitCall(this, data)
}
@@ -377,7 +377,7 @@ fun IrFunction.isFakeOverriddenFromAny(): Boolean {
return (this as IrSimpleFunction).overriddenSymbols.all { it.owner.isFakeOverriddenFromAny() }
}
fun IrCall.isSuperToAny() = superQualifier?.let { this.symbol.owner.isFakeOverriddenFromAny() } ?: false
fun IrCall.isSuperToAny() = superQualifierSymbol?.let { this.symbol.owner.isFakeOverriddenFromAny() } ?: false
fun IrDeclaration.isEffectivelyExternal(): Boolean {