FIR resolve (minor): provide source element for resolved qualifier
This commit is contained in:
@@ -185,7 +185,7 @@ class FirCallResolver(
|
||||
if (qualifiedAccess.explicitReceiver == null &&
|
||||
(reducedCandidates.size <= 1 && result.currentApplicability < CandidateApplicability.SYNTHETIC_RESOLVED)
|
||||
) {
|
||||
qualifiedResolver.tryResolveAsQualifier()?.let { return it }
|
||||
qualifiedResolver.tryResolveAsQualifier(qualifiedAccess.source)?.let { return it }
|
||||
}
|
||||
|
||||
val referencedSymbol = when (nameReference) {
|
||||
|
||||
@@ -43,7 +43,7 @@ class FirQualifiedNameResolver(components: BodyResolveComponents) : BodyResolveC
|
||||
null
|
||||
}
|
||||
|
||||
fun tryResolveAsQualifier(): FirResolvedQualifier? {
|
||||
fun tryResolveAsQualifier(source: FirSourceElement?): FirResolvedQualifier? {
|
||||
val symbolProvider = session.firSymbolProvider
|
||||
var qualifierParts = qualifierStack.asReversed().map { it.asString() }
|
||||
var resolved: PackageOrClass?
|
||||
@@ -59,7 +59,7 @@ class FirQualifiedNameResolver(components: BodyResolveComponents) : BodyResolveC
|
||||
if (resolved != null) {
|
||||
qualifierPartsToDrop = qualifierParts.size - 1
|
||||
return FirResolvedQualifierImpl(
|
||||
null /* TODO */,
|
||||
source,
|
||||
resolved.packageFqName,
|
||||
resolved.relativeClassFqName
|
||||
).apply { resultType = typeForQualifier(this) }
|
||||
|
||||
Reference in New Issue
Block a user