mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-18 09:34:34 +07:00
do not suggest to remove qualifier if fix would produce illegal forward ref (IDEA-87640)
This commit is contained in:
+6
-3
@@ -191,12 +191,15 @@ public class UnnecessarilyQualifiedStaticUsageInspection
|
||||
final PsiMember member = (PsiMember)target;
|
||||
final PsiClass memberClass;
|
||||
if (target instanceof PsiField) {
|
||||
final PsiVariable variable =
|
||||
resolveHelper.resolveReferencedVariable(referenceName,
|
||||
referenceElement);
|
||||
final PsiVariable variable = resolveHelper.resolveReferencedVariable(referenceName, referenceElement);
|
||||
if (variable == null || !variable.equals(member)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
//illegal forward ref
|
||||
if (referenceElement.getTextRange().getStartOffset() < variable.getTextRange().getEndOffset()) {
|
||||
return false;
|
||||
}
|
||||
final PsiMember memberVariable = (PsiMember)variable;
|
||||
memberClass = memberVariable.getContainingClass();
|
||||
}
|
||||
|
||||
+5
@@ -80,4 +80,9 @@ class InnerClassTest {
|
||||
System.out.println(InnerClassTest.foo); // (2)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
class ForwardRefTest {
|
||||
private static final String FOO = ForwardRefTest.BAR;
|
||||
private static final String BAR = "BAR";
|
||||
}
|
||||
Reference in New Issue
Block a user