mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-04-19 21:11:28 +07:00
valid static method reference on class's inheritor (IDEA-187974)
This commit is contained in:
@@ -1420,7 +1420,10 @@ public class HighlightVisitorImpl extends JavaElementVisitor implements Highligh
|
||||
}
|
||||
|
||||
if (!myHolder.hasErrorResults() && method instanceof PsiMethod && ((PsiMethod)method).hasModifierProperty(PsiModifier.STATIC)) {
|
||||
myHolder.add(HighlightMethodUtil.checkStaticInterfaceCallQualifier(expression, result, expression.getTextRange(), ((PsiMethod)method).getContainingClass()));
|
||||
PsiClass containingClass = ((PsiMethod)method).getContainingClass();
|
||||
if (containingClass != null && containingClass.isInterface()) {
|
||||
myHolder.add(HighlightMethodUtil.checkStaticInterfaceCallQualifier(expression, result, expression.getTextRange(), containingClass));
|
||||
}
|
||||
}
|
||||
|
||||
if (!myHolder.hasErrorResults()) {
|
||||
|
||||
@@ -9,3 +9,13 @@ class A implements I {
|
||||
System.out.println(r);
|
||||
}
|
||||
}
|
||||
|
||||
class B {
|
||||
static void foo() {}
|
||||
}
|
||||
|
||||
class C extends B {
|
||||
{
|
||||
Runnable r = C::foo;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user