diff --git a/java/java-impl/src/com/intellij/psi/impl/search/MethodTextOccurrenceProcessor.java b/java/java-impl/src/com/intellij/psi/impl/search/MethodTextOccurrenceProcessor.java index e4608e1523cb..6f287c6c8643 100644 --- a/java/java-impl/src/com/intellij/psi/impl/search/MethodTextOccurrenceProcessor.java +++ b/java/java-impl/src/com/intellij/psi/impl/search/MethodTextOccurrenceProcessor.java @@ -58,7 +58,7 @@ public final class MethodTextOccurrenceProcessor extends RequestResultProcessor continue; } - if (ref instanceof ResolvingHint && !((ResolvingHint)ref).canResolveTo(method)) { + if (ref instanceof ResolvingHint && !((ResolvingHint)ref).canResolveTo(PsiMethod.class)) { return true; } if (ref.isReferenceTo(method)) { diff --git a/java/java-impl/src/com/intellij/util/xml/DeprecatedClassUsageInspection.java b/java/java-impl/src/com/intellij/util/xml/DeprecatedClassUsageInspection.java index e32784471d5e..dc7385e0fd53 100644 --- a/java/java-impl/src/com/intellij/util/xml/DeprecatedClassUsageInspection.java +++ b/java/java-impl/src/com/intellij/util/xml/DeprecatedClassUsageInspection.java @@ -19,11 +19,7 @@ import com.intellij.codeInspection.LocalInspectionToolSession; import com.intellij.codeInspection.ProblemsHolder; import com.intellij.codeInspection.XmlSuppressableInspectionTool; import com.intellij.codeInspection.deprecation.DeprecationInspection; -import com.intellij.psi.PsiElement; -import com.intellij.psi.PsiElementVisitor; -import com.intellij.psi.PsiReference; -import com.intellij.psi.XmlElementVisitor; -import com.intellij.psi.impl.source.resolve.reference.impl.providers.JavaClassReference; +import com.intellij.psi.*; import com.intellij.psi.xml.XmlAttribute; import com.intellij.psi.xml.XmlAttributeValue; import com.intellij.psi.xml.XmlTag; @@ -64,7 +60,7 @@ public class DeprecatedClassUsageInspection extends XmlSuppressableInspectionToo private static void checkReferences(PsiElement psiElement, ProblemsHolder holder) { PsiReference[] references = psiElement.getReferences(); PsiReference last = ArrayUtil.getLastElement(references); - if (last instanceof JavaClassReference) { + if (last != null && (!(last instanceof ResolvingHint) || ((ResolvingHint)last).canResolveTo(PsiDocCommentOwner.class))) { PsiElement resolve = last.resolve(); DeprecationInspection.checkDeprecated(resolve, psiElement, last.getRangeInElement(), holder); } diff --git a/platform/lang-impl/src/com/intellij/psi/ResolvingHint.java b/platform/lang-impl/src/com/intellij/psi/ResolvingHint.java index e2550c6acbf1..4eb98d3c6bc3 100644 --- a/platform/lang-impl/src/com/intellij/psi/ResolvingHint.java +++ b/platform/lang-impl/src/com/intellij/psi/ResolvingHint.java @@ -22,5 +22,5 @@ package com.intellij.psi; */ public interface ResolvingHint { - boolean canResolveTo(PsiElement element); + boolean canResolveTo(Class elementClass); }