mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-04-19 21:11:28 +07:00
default methods: do not warn about protected methods from Object
This commit is contained in:
@@ -406,8 +406,9 @@ public class GenericsHighlightUtil {
|
||||
if (languageLevel.isAtLeast(LanguageLevel.JDK_1_8) && aClass.isInterface() && method.hasModifierProperty(PsiModifier.DEFAULT)) {
|
||||
HierarchicalMethodSignature sig = method.getHierarchicalMethodSignature();
|
||||
for (HierarchicalMethodSignature methodSignature : sig.getSuperSignatures()) {
|
||||
final PsiClass containingClass = methodSignature.getMethod().getContainingClass();
|
||||
if (containingClass != null && CommonClassNames.JAVA_LANG_OBJECT.equals(containingClass.getQualifiedName())) {
|
||||
final PsiMethod objectMethod = methodSignature.getMethod();
|
||||
final PsiClass containingClass = objectMethod.getContainingClass();
|
||||
if (containingClass != null && CommonClassNames.JAVA_LANG_OBJECT.equals(containingClass.getQualifiedName()) && objectMethod.hasModifierProperty(PsiModifier.PUBLIC)) {
|
||||
return HighlightInfo.newHighlightInfo(HighlightInfoType.ERROR)
|
||||
.descriptionAndTooltip("Default method '" + sig.getName() + "' overrides a member of 'java.lang.Object'")
|
||||
.range(methodIdentifier)
|
||||
|
||||
@@ -2,4 +2,5 @@ interface A {
|
||||
default String <error descr="Default method 'toString' overrides a member of 'java.lang.Object'">toString</error>() {
|
||||
return "";
|
||||
}
|
||||
default void finalize() throws Throwable { }
|
||||
}
|
||||
Reference in New Issue
Block a user