@Override
  public void visitAnnotationMethod(@NotNull PsiAnnotationMethod method) {
    PsiType returnType = method.getReturnType();
    PsiAnnotationMemberValue value = method.getDefaultValue();
    if (returnType != null && value != null) {
      add(AnnotationsHighlightUtil.checkMemberValueType(value, returnType, method));
    }

    PsiTypeElement typeElement = method.getReturnTypeElement();
    if (typeElement != null) {
      add(AnnotationsHighlightUtil.checkValidAnnotationType(returnType, typeElement));
    }

    PsiClass aClass = method.getContainingClass();
    if (typeElement != null && aClass != null) {
      add(AnnotationsHighlightUtil.checkCyclicMemberType(typeElement, aClass));
    }

    add(AnnotationsHighlightUtil.checkClashesWithSuperMethods(method));

    if (!hasErrorResults() && aClass != null) {
      add(HighlightMethodUtil.checkDuplicateMethod(aClass, method, getDuplicateMethods(aClass)));
    }
  }
@Override
  public void visitAnnotationMethod(@NotNull PsiAnnotationMethod method)