From 59e086aa8867e602172f72f7ee44407f137266e5 Mon Sep 17 00:00:00 2001 From: peter Date: Wed, 4 May 2016 12:55:25 +0200 Subject: [PATCH] add clarifying comments around JavaResolveUtil.getContextClass --- .../com/intellij/psi/impl/source/resolve/JavaResolveUtil.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/java/java-psi-impl/src/com/intellij/psi/impl/source/resolve/JavaResolveUtil.java b/java/java-psi-impl/src/com/intellij/psi/impl/source/resolve/JavaResolveUtil.java index fba9855a7229..83ca4fc4b781 100644 --- a/java/java-psi-impl/src/com/intellij/psi/impl/source/resolve/JavaResolveUtil.java +++ b/java/java-psi-impl/src/com/intellij/psi/impl/source/resolve/JavaResolveUtil.java @@ -38,6 +38,7 @@ public class JavaResolveUtil { PsiElement prev = element; PsiElement scope = element.getContext(); while (scope != null) { + // skip the class if coming from its extends/implements list: those references only rely on the outer context for resolve if (scope instanceof PsiClass && (prev instanceof PsiMember || prev instanceof PsiDocComment)) { return (PsiClass)scope; } @@ -115,6 +116,7 @@ public class JavaResolveUtil { if (memberClass == null) { return false; } + // if resolving supertype reference, skip its containing class with getContextClass PsiClass contextClass = member instanceof PsiClass ? getContextClass(place) : PsiTreeUtil.getContextOfType(place, PsiClass.class, false); while (contextClass != null) {