Find why this generated copy method cannot compile.
Java
import java.util.List;
public class GeneratedCopy {
static <T> void copy(
List<? extends T> destination,
List<? super T> source) {
destination.add(source.getFirst());
}
}