FIR: Use more refined names instead of "safe"
^KT-38444 Fixed
This commit is contained in:
+2
-2
@@ -71,7 +71,7 @@ class FirDoubleColonExpressionResolver(
|
||||
|
||||
private fun shouldTryResolveLHSAsExpression(expression: FirCallableReferenceAccess): Boolean {
|
||||
val lhs = expression.explicitReceiver ?: return false
|
||||
return lhs.canBeConsideredProperExpression() && !expression.safe
|
||||
return lhs.canBeConsideredProperExpression() && !expression.hasQuestionMarkAtLHS
|
||||
}
|
||||
|
||||
private fun shouldTryResolveLHSAsType(expression: FirCallableReferenceAccess): Boolean {
|
||||
@@ -172,7 +172,7 @@ class FirDoubleColonExpressionResolver(
|
||||
else -> ConeStarProjection
|
||||
}
|
||||
},
|
||||
isNullable = expression.safe
|
||||
isNullable = resolvedExpression.isNullableLHSForCallableReference
|
||||
)
|
||||
|
||||
return DoubleColonLHS.Type(type)
|
||||
|
||||
+2
-2
@@ -511,8 +511,8 @@ class FirExpressionsResolveTransformer(transformer: FirBodyResolveTransformer) :
|
||||
callableReferenceAccess.annotations.forEach { it.accept(this, data) }
|
||||
val explicitReceiver = callableReferenceAccess.explicitReceiver
|
||||
val transformedLHS = explicitReceiver?.transformSingle(this, ResolutionMode.ContextIndependent)?.apply {
|
||||
if (this is FirResolvedQualifier && callableReferenceAccess.safe) {
|
||||
replaceSafe(true)
|
||||
if (this is FirResolvedQualifier && callableReferenceAccess.hasQuestionMarkAtLHS) {
|
||||
replaceIsNullableLHSForCallableReference(true)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user