void (@NotNull UElement sourceNode, @NotNull PsiJvmMember target, @Nullable PsiClass accessObjectType) { if (target.hasModifier(JvmModifier.PACKAGE_LOCAL)) { checkPackageLocalAccess(sourceNode, target, "package-private"); } else if (target.hasModifier(JvmModifier.PROTECTED) && !canAccessProtectedMember(sourceNode, target, accessObjectType)) { checkPackageLocalAccess(sourceNode, target, "protected and used not through a subclass here"); } }