FIR: Do not set overriddenSymbol for KFunction::invoke

It has been probably set by mistake since overriddenSymbol is only used for
fake overrides
This commit is contained in:
Denis Zharkov
2020-11-05 13:38:41 +03:00
parent a11b488c82
commit 78b374ec88
@@ -152,11 +152,6 @@ class FirBuiltinSymbolProvider(session: FirSession, val kotlinScopeProvider: Kot
type = ConeTypeParameterTypeImpl(it.symbol.toLookupTag(), false) type = ConeTypeParameterTypeImpl(it.symbol.toLookupTag(), false)
} }
} }
val superKind: FunctionClassKind? = when (kind) {
FunctionClassKind.KFunction -> FunctionClassKind.Function
FunctionClassKind.KSuspendFunction -> FunctionClassKind.SuspendFunction
else -> null
}
fun createSuperType( fun createSuperType(
kind: FunctionClassKind, kind: FunctionClassKind,
@@ -206,9 +201,7 @@ class FirBuiltinSymbolProvider(session: FirSession, val kotlinScopeProvider: Kot
this.name = name this.name = name
status = functionStatus status = functionStatus
symbol = FirNamedFunctionSymbol( symbol = FirNamedFunctionSymbol(
CallableId(packageFqName, relativeClassName, name), CallableId(packageFqName, relativeClassName, name)
// set overriddenSymbol for "invoke" of KFunction/KSuspendFunction
superKind?.getInvoke(arity)
) )
resolvePhase = FirResolvePhase.ANALYZED_DEPENDENCIES resolvePhase = FirResolvePhase.ANALYZED_DEPENDENCIES
valueParameters += typeArguments.dropLast(1).mapIndexed { index, typeArgument -> valueParameters += typeArguments.dropLast(1).mapIndexed { index, typeArgument ->