Is a cure for the warning: [unchecked] Possible heap pollution from parameterized vararg type Foo.
Is part of the method's contract, hence why the annotation has runtime retention.
Is a promise to the caller of the method that the method will not mess up the heap using the generic varargs argument.
C. Wang, and G. Chen. ITiCSE '04: Proceedings of the 9th annual SIGCSE conference on Innovation and technology in computer science education, 36, page 132--136. New York, NY, USA, ACM Press, (September 2004)