From 7bad4583a4042f3dfff3b911468bf9b540ace92d Mon Sep 17 00:00:00 2001 From: Anna Kozlova Date: Mon, 1 Feb 2016 18:06:50 +0300 Subject: [PATCH] overload resolution: ensure validity of isApplicable call if there is exactly one potentially applicable method --- .../src/com/intellij/psi/infos/MethodCandidateInfo.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/java/java-psi-api/src/com/intellij/psi/infos/MethodCandidateInfo.java b/java/java-psi-api/src/com/intellij/psi/infos/MethodCandidateInfo.java index 7cde939bf327..5a896d6d1245 100644 --- a/java/java-psi-api/src/com/intellij/psi/infos/MethodCandidateInfo.java +++ b/java/java-psi-api/src/com/intellij/psi/infos/MethodCandidateInfo.java @@ -125,6 +125,11 @@ public class MethodCandidateInfo extends CandidateInfo{ final PsiMethod method = getElement(); if (isToInferApplicability()) { + if (!isOverloadCheck()) { + //ensure applicability check is performed + getSubstitutor(false); + } + //already performed checks, so if inference failed, error message should be saved if (myInferenceError != null || !isPotentiallyCompatible()) { return ApplicabilityLevel.NOT_APPLICABLE;