diff --git a/idea/idea-jvm/src/org/jetbrains/kotlin/idea/debugger/sequence/psi/KotlinPsiUtil.kt b/idea/idea-jvm/src/org/jetbrains/kotlin/idea/debugger/sequence/psi/KotlinPsiUtil.kt index 33381adc6b5..4e04dd3e9f7 100644 --- a/idea/idea-jvm/src/org/jetbrains/kotlin/idea/debugger/sequence/psi/KotlinPsiUtil.kt +++ b/idea/idea-jvm/src/org/jetbrains/kotlin/idea/debugger/sequence/psi/KotlinPsiUtil.kt @@ -9,6 +9,7 @@ import org.jetbrains.kotlin.psi.KtExpression import org.jetbrains.kotlin.renderer.DescriptorRenderer import org.jetbrains.kotlin.resolve.calls.callUtil.getResolvedCall import org.jetbrains.kotlin.resolve.descriptorUtil.fqNameSafe +import org.jetbrains.kotlin.resolve.lazy.BodyResolveMode import org.jetbrains.kotlin.resolve.scopes.receivers.ReceiverValue import org.jetbrains.kotlin.types.FlexibleType import org.jetbrains.kotlin.types.KotlinType @@ -29,12 +30,12 @@ object KotlinPsiUtil { } fun KtExpression.resolveType(): KotlinType = - this.analyze().getType(this)!! + this.analyze(BodyResolveMode.PARTIAL).getType(this)!! fun KtCallExpression.callName(): String = this.calleeExpression!!.text fun KtCallExpression.receiver(): ReceiverValue? { - val resolvedCall = getResolvedCall(analyze()) ?: return null + val resolvedCall = getResolvedCall(analyze(BodyResolveMode.PARTIAL)) ?: return null return resolvedCall.dispatchReceiver ?: resolvedCall.extensionReceiver }