array and diamond (original) (raw)

Rémi Forax forax at univ-mlv.fr
Sun Dec 11 15:21:23 UTC 2011


On 12/10/2011 12:38 PM, maurizio cimadamore wrote:

On 09-Dec-11 10:56 PM, Rémi Forax wrote:

Is there a reason why the diamond syntax can't be used with an array ?

List<?>[] list = new List<>[12]; Because the current inference rules would end up inferring: List<?>[] list = new List[12]; If you special-cased diamond on arrays so that it is inferred as: List[] list = new List[12]; Then it would be safe.

but in that case List[] list = new List[12]; is not equivalent to static List[] foo() { ... } ... List<?>[] list = foo(); because as you said, Object will be inferred.

Is there another case where diamond inference behave differently from method inference ?

Maurizio

Rémi



More information about the core-libs-dev mailing list