Reports all methods with variable arity, which can be annotated as @SafeVarargs. The @SafeVarargs annotation suppresses unchecked warnings about parameterized array creation at call sites.

Example:


  public class Foo<T> {
    private List<T> list = new ArrayList<>();

    public final void safeVarargs(T... elements) {
      Collections.addAll(list, elements);
    }
  }

After the quick-fix is applied:


  public class Foo<T> {
    private List<T> list = new ArrayList<>();

    @SafeVarargs
    public final void safeVarargs(T... elements) {
      Collections.addAll(list, elements);
    }
  }

This annotation is not supported under Java 1.6 or earlier JVMs.