Local Variable Type Inference - prototype
Maurizio Cimadamore
maurizio.cimadamore at oracle.com
Thu Mar 10 23:39:16 UTC 2016
On 10/03/16 22:13, Remi Forax wrote:
> The issue is that the inferred type is something like:
> Number & Comparable<? extends Number & Comparable<?> & Serailizable> & Serializable
> because
> Integer implements Comparable<Integer> and
> Double implements Comparable<Double>
>
> so types like Number or Comparable<?> are valid substitute of T with no obvious most specific types, here
Right - and intersection types are the only kind (together with union
types - which are kind of treated as intersections by Java language)
which are not supported by LVTI. The problem with intersection types is
that in the general case, when you have a type like C & I1 & I2 ... &
In, how do you pick the 'best' type?
Maurizio
More information about the platform-jep-discuss
mailing list