Use sink.yield in FIR resolve check receivers

This commit is contained in:
Mikhail Glukhikh
2019-05-28 19:17:09 +03:00
parent e37c86b85f
commit 5e42f0c31d
@@ -115,6 +115,7 @@ internal sealed class CheckReceivers : ResolutionStage() {
typeProvider = callInfo.typeProvider, typeProvider = callInfo.typeProvider,
acceptLambdaAtoms = { candidate.postponedAtoms += it } acceptLambdaAtoms = { candidate.postponedAtoms += it }
) )
sink.yield()
} else { } else {
val argumentExtensionReceiverValue = candidate.implicitExtensionReceiverValue val argumentExtensionReceiverValue = candidate.implicitExtensionReceiverValue
if (argumentExtensionReceiverValue != null && explicitReceiverKind.shouldBeResolvedAsImplicit()) { if (argumentExtensionReceiverValue != null && explicitReceiverKind.shouldBeResolvedAsImplicit()) {
@@ -126,6 +127,7 @@ internal sealed class CheckReceivers : ResolutionStage() {
isReceiver = true, isReceiver = true,
isSafeCall = callInfo.isSafeCall isSafeCall = callInfo.isSafeCall
) )
sink.yield()
} }
} }
} }