class A<T> {} class Bbbb<T> extends A<T> {} public class C { void m(A<String> a) { if (a instanceof Bbbb<?><caret>) { } } }