[FIR] Set proper callable id for delegated members

This commit is contained in:
Dmitriy Novozhilov
2023-02-28 13:11:56 +02:00
committed by Space Team
parent 2fb79bf0b1
commit f44fcc811b
7 changed files with 53 additions and 22 deletions
@@ -20,7 +20,7 @@ FILE: superCallWithDelegation.kt
}
public open override fun foo(): R|kotlin/Unit| {
this@R|/C|.super<R|B|>.R|/A.foo|()
this@R|/C|.super<R|B|>.R|/B.foo|()
}
}
@@ -16,7 +16,7 @@ FILE: AbstractToolConfig.kt
protected final val platform: R|Platform| = this@R|/AbstractToolConfig|.R|/AbstractToolConfig.platformManager|.R|/PlatformManager.platform|(this@R|/AbstractToolConfig|.R|/AbstractToolConfig.target|)
protected get(): R|Platform|
public final val llvmHome: R|kotlin/String| = this@R|/AbstractToolConfig|.R|/AbstractToolConfig.platform|.R|/Configurables.absoluteLlvmHome|
public final val llvmHome: R|kotlin/String| = this@R|/AbstractToolConfig|.R|/AbstractToolConfig.platform|.R|/Platform.absoluteLlvmHome|
public get(): R|kotlin/String|
public abstract fun platformManager(): R|PlatformManager|
@@ -10,6 +10,7 @@ import org.jetbrains.kotlin.descriptors.Visibilities
import org.jetbrains.kotlin.fir.DelegatedWrapperData
import org.jetbrains.kotlin.fir.FirSession
import org.jetbrains.kotlin.fir.declarations.*
import org.jetbrains.kotlin.fir.declarations.utils.classId
import org.jetbrains.kotlin.fir.declarations.utils.modality
import org.jetbrains.kotlin.fir.declarations.utils.visibility
import org.jetbrains.kotlin.fir.delegatedWrapperData
@@ -23,6 +24,7 @@ import org.jetbrains.kotlin.fir.types.ConeClassLikeType
import org.jetbrains.kotlin.fir.types.ConeFlexibleType
import org.jetbrains.kotlin.fir.types.coneType
import org.jetbrains.kotlin.fir.types.isMarkedNullable
import org.jetbrains.kotlin.name.CallableId
import org.jetbrains.kotlin.name.ClassId
import org.jetbrains.kotlin.name.Name
import org.jetbrains.kotlin.name.StandardClassIds
@@ -88,9 +90,7 @@ class FirDelegatedMemberScope(
val delegatedSymbol =
FirFakeOverrideGenerator.createCopyForFirFunction(
FirNamedFunctionSymbol(
functionSymbol.callableId,
),
FirNamedFunctionSymbol(CallableId(containingClass.classId, functionSymbol.name)),
original,
derivedClassLookupTag = dispatchReceiverType.lookupTag,
session,
@@ -158,9 +158,7 @@ class FirDelegatedMemberScope(
val delegatedSymbol =
FirFakeOverrideGenerator.createCopyForFirProperty(
FirPropertySymbol(
propertySymbol.callableId
),
FirPropertySymbol(CallableId(containingClass.classId, propertySymbol.name)),
original,
derivedClassLookupTag = dispatchReceiverType.lookupTag,
session,