good code red: illegal generic type in instanceof fixed

This commit is contained in:
anna
2012-05-03 10:11:23 +02:00
parent 072b7f32ab
commit 20a7302fcd
2 changed files with 14 additions and 2 deletions
@@ -988,7 +988,7 @@ public class GenericsHighlightUtil {
if (resolved instanceof PsiClass) {
final PsiClass containingClass = ((PsiClass)resolved).getContainingClass();
if (containingClass != null && ref.getQualifier() == null && containingClass.getTypeParameters().length > 0) {
if (containingClass != null && ref.getQualifier() == null && containingClass.getTypeParameters().length > 0 && !((PsiClass)resolved).hasModifierProperty(PsiModifier.STATIC)) {
return HighlightInfo.createHighlightInfo(HighlightInfoType.ERROR, typeElement, JavaErrorMessages.message("illegal.generic.type.for.instanceof"));
}
}
@@ -24,4 +24,16 @@ class A1 {
private class B1 {
}
}
}
class BreakpointTree<TP> {
void foo(Node node) {
if (node instanceof BNode<?>) {
}
}
static class BNode<B extends XBreakpoint<?>> extends Node{}
}
class Node {}
class XBreakpoint<SR>{}