FIR2IR: set dispatch receiver for companion member reference
#KT-42132 fixed
This commit is contained in:
committed by
Mikhail Glukhikh
parent
01d852c006
commit
3151fc8577
@@ -6,7 +6,9 @@
|
||||
package org.jetbrains.kotlin.fir.symbols.impl
|
||||
|
||||
import org.jetbrains.kotlin.fir.declarations.FirCallableDeclaration
|
||||
import org.jetbrains.kotlin.fir.declarations.FirFunction
|
||||
import org.jetbrains.kotlin.fir.declarations.FirMemberDeclaration
|
||||
import org.jetbrains.kotlin.fir.declarations.FirProperty
|
||||
import org.jetbrains.kotlin.fir.symbols.AbstractFirBasedSymbol
|
||||
import org.jetbrains.kotlin.fir.symbols.CallableId
|
||||
|
||||
@@ -21,6 +23,13 @@ abstract class FirCallableSymbol<D : FirCallableDeclaration<D>> : AbstractFirBas
|
||||
|
||||
val FirCallableSymbol<*>.isStatic: Boolean get() = (fir as? FirMemberDeclaration)?.status?.isStatic == true
|
||||
|
||||
val FirCallableSymbol<*>.isExtension: Boolean
|
||||
get() = when (fir) {
|
||||
is FirFunction -> fir.receiverTypeRef != null
|
||||
is FirProperty -> fir.receiverTypeRef != null
|
||||
else -> false
|
||||
}
|
||||
|
||||
inline fun <reified E : FirCallableSymbol<*>> E.unwrapSubstitutionOverrides(): E {
|
||||
var current = this
|
||||
while (current.overriddenSymbol != null) {
|
||||
|
||||
Reference in New Issue
Block a user