void (@NotNull PsiTypeElement typeElement) { super.visitTypeElement(typeElement); final PsiElement lastChild = typeElement.getLastChild(); if (!(lastChild instanceof PsiTypeElement)) { return; } final PsiType type = typeElement.getType(); if (!(type instanceof PsiWildcardType wildcardType)) { return; } if (!wildcardType.isExtends()) { return; } final PsiTypeElement extendsBound = (PsiTypeElement)typeElement.getLastChild(); if ((ignoreAnnotatedObject && extendsBound.getAnnotations().length > 0) || !TypeUtils.isJavaLangObject(extendsBound.getType())) { return; } final PsiElement firstChild = typeElement.getFirstChild(); if (firstChild == null) { return; } registerError(firstChild, Integer.valueOf(2)); }