FIR: fix receiver not being substituted

This commit is contained in:
Simon Ogorodnik
2019-04-17 15:51:22 +03:00
committed by Mikhail Glukhikh
parent 77efe8b857
commit 3d73c28d1e
@@ -93,8 +93,9 @@ internal sealed class CheckReceivers : ResolutionStage() {
if (receiverParameterValue != null) { if (receiverParameterValue != null) {
if (explicitReceiverExpression != null && explicitReceiverKind.shouldBeResolvedAsExplicit()) { if (explicitReceiverExpression != null && explicitReceiverKind.shouldBeResolvedAsExplicit()) {
resolveArgumentExpression( resolveArgumentExpression(
candidate.csBuilder, explicitReceiverExpression, receiverParameterValue.type, candidate.csBuilder, explicitReceiverExpression,
sink, isReceiver = true, typeProvider = callInfo.typeProvider candidate.substitutor.substituteOrSelf(receiverParameterValue.type),
sink, isReceiver = true, typeProvider = callInfo.typeProvider, acceptLambdaAtoms = { candidate.postponedAtoms += it }
) )
} }
} }