[FIR] Missing NESTED_CLASS_ACCESSED_VIA_INSTANCE_REFERENCE
^KT-59433 Fixed
This commit is contained in:
committed by
Space Team
parent
da1fa8fce4
commit
16dfc6df71
@@ -352,7 +352,7 @@ class FirCallResolver(
|
||||
referencedSymbol,
|
||||
qualifiedAccess.source,
|
||||
qualifiedAccess.typeArguments,
|
||||
diagnostic,
|
||||
diagnostic ?: extractNestedClassAccessDiagnostic(nameReference.source, qualifiedAccess.explicitReceiver, referencedSymbol),
|
||||
nonFatalDiagnostics = extractNonFatalDiagnostics(
|
||||
nameReference.source,
|
||||
qualifiedAccess.explicitReceiver,
|
||||
|
||||
@@ -21,6 +21,7 @@ import org.jetbrains.kotlin.fir.resolve.BodyResolveComponents
|
||||
import org.jetbrains.kotlin.fir.resolve.calls.getSingleVisibleClassifier
|
||||
import org.jetbrains.kotlin.fir.resolve.createCurrentScopeList
|
||||
import org.jetbrains.kotlin.fir.resolve.diagnostics.ConeDeprecated
|
||||
import org.jetbrains.kotlin.fir.resolve.diagnostics.ConeNestedClassAccessedViaInstanceReference
|
||||
import org.jetbrains.kotlin.fir.resolve.setTypeOfQualifier
|
||||
import org.jetbrains.kotlin.fir.symbols.impl.FirClassLikeSymbol
|
||||
import org.jetbrains.kotlin.name.ClassId
|
||||
@@ -184,6 +185,16 @@ private fun FqName.continueQualifierInPackage(
|
||||
}
|
||||
}
|
||||
|
||||
internal fun extractNestedClassAccessDiagnostic(
|
||||
source: KtSourceElement?,
|
||||
explicitReceiver: FirExpression?,
|
||||
symbol: FirClassLikeSymbol<*>
|
||||
): ConeDiagnostic? {
|
||||
if ((explicitReceiver as? FirResolvedQualifier)?.typeArguments?.isNotEmpty() == true)
|
||||
return ConeNestedClassAccessedViaInstanceReference(source!!, symbol)
|
||||
return null
|
||||
}
|
||||
|
||||
internal fun extractNonFatalDiagnostics(
|
||||
source: KtSourceElement?,
|
||||
explicitReceiver: FirExpression?,
|
||||
|
||||
Reference in New Issue
Block a user