FIR: Rework receivers processing in resolution

- Put extensionReceiver to candidate even if it's explicit (for sake of clarity)
- Split CheckReceiver (dispatch part should only check nullability)
This commit is contained in:
Denis Zharkov
2020-11-15 13:10:54 +03:00
parent e2099a0307
commit f97cc0b62d
40 changed files with 194 additions and 213 deletions
@@ -68,7 +68,11 @@ class SingleCandidateResolver(
resolutionParameters.callableSymbol,
explicitReceiverKind = explicitReceiverKind,
dispatchReceiverValue = dispatchReceiverValue,
implicitExtensionReceiverValue = implicitExtensionReceiverValue,
extensionReceiverValue =
if (explicitReceiverKind.isExtensionReceiver)
callInfo.explicitReceiver?.let { ExpressionReceiverValue(it) }
else
implicitExtensionReceiverValue,
scope = null,
)