forbid private/protected class modifiers inside anonymous classes (IDEA-64188)

This commit is contained in:
anna
2011-01-20 18:51:34 +01:00
parent b4f660521a
commit db47e5ccd8
2 changed files with 12 additions and 0 deletions
@@ -767,6 +767,10 @@ public class HighlightUtil {
if (aClass.isEnum()) {
isAllowed &= !(PsiModifier.FINAL.equals(modifier) || PsiModifier.ABSTRACT.equals(modifier));
}
if (aClass.getContainingClass() instanceof PsiAnonymousClass) {
isAllowed &= !(PsiModifier.PRIVATE.equals(modifier) || PsiModifier.PROTECTED.equals(modifier));
}
}
}
else if (modifierOwner instanceof PsiMethod) {
@@ -102,5 +102,13 @@ public class a {
public void run() {}
};
}
void withanonymous() {
new Object() {
<error descr="Modifier 'private' not allowed here">private</error> class RT {}
private void method() {}
private int myI;
};
}
}