Introducing new interfaces that have no methods is clearly source-
    and binary compatible, so I am not particularly compelled by "some
    very brittle and badly written code might break."  So far, no one
has proposed any examples that would make us reconsider that.

??;
you are forgetting inference, this code will fail to compile
  class A {}
  class B {}
  var list = List.of(new A(), new B());
  List<Object> list2 = list:


Good catch.  There is precedent for leaving certain interfaces out of inference, though; I suspect we will want to do this for these interfaces too.

Reply via email to