void (PsiMethod method, PsiVariable psiParameter) { final PsiType type = psiParameter.getType(); LOG.assertTrue(type instanceof PsiEllipsisType, "type: " + type.getCanonicalText() + "; param: " + psiParameter); final PsiType componentType = ((PsiEllipsisType)type).getComponentType(); if (JavaGenericsUtil.isReifiableType(componentType)) { return; } for (PsiReference reference : ReferencesSearch.search(psiParameter)) { final PsiElement element = reference.getElement(); if (element instanceof PsiExpression && !PsiUtil.isAccessedForReading((PsiExpression)element)) { return; } } final PsiIdentifier nameIdentifier = method.getNameIdentifier(); if (nameIdentifier != null) { //if (method.hasModifierProperty(PsiModifier.ABSTRACT)) return; //final PsiClass containingClass = method.getContainingClass(); //if (containingClass == null || containingClass.isInterface()) return; do not add registerProblem(method, nameIdentifier); } }