The variance-overview.pdf says that List<-E> has Object as the return type of the get method. If this is true, I'm disappointed. I'd expect the following to work quite happily:
List<-List<*>> myList = buildList();
List<*> elt1 = myList.get(0);
There's no obvious reason why Object should be a supertype of List.