Мы используем некоторые функции varargs, и по мере перехода на java 1.7 мы получаем странное предупреждение.
Функция добавления интерфейса ICache
public interface ICache<O> {
void add(Object source, O... objects);
}
в интерфейсе сообщается об ошибке.
ICache.java:18: warning: [unchecked] Possible heap pollution from parameterized vararg type O
void add(Object source, O... objects);
where O is a type-variable:
O extends Object declared in interface ICache
1 warning
O расширяет объект как свой общий класс кеша.
Я прочитал предупреждения xlint, и мы выполним компиляцию с помощью unchecked on, но http://docs.oracle.com/javase/7/docs/technotes/tools/windows/javac.html#xlintwarnings, по-видимому, подразумевает, что эта ошибка должна быть типом [varargs], а не unchecked тип.
Я что-то пропустил?