Вы должны поместить аннотацию в декларацию, а не только в присвоение. Это компилирует:
@SuppressWarnings("unchecked")
List<Object> list = (List<Object>) new Object();
См. Javadocs для SuppressWarnings
, в котором цели указаны как
@Target(value={TYPE,FIELD,METHOD,PARAMETER,CONSTRUCTOR,LOCAL_VARIABLE})
И если вы посмотрите вверх LOCAL_VARIABLE
, он говорит:
Объявление локальной переменной
(Нет цели для произвольных операторов, поэтому никакие аннотации не могли бы пойти туда и все же позволить ее компилировать.)