recursive lambda as a local variable
peter.levart at gmail.com
Fri Sep 13 01:21:37 PDT 2013
On 09/12/2013 05:17 PM, Brian Goetz wrote:
>> - The part left of the '::' can be an arbitrarily long expression that will
>> be evaluated immediately, while the method invocation itself will be
>> deferred until the corresponding SAM method is invoked. Thus, 'null' might
>> by bound now and detected much later.
> This is just a compiler bug; if the part to the left evaluates to null,
> it should throw NPE immediately (see jsr335-15.28.2-30-A2: If the result
> of evaluation of the subexpression is null, then a NullPointerException
> is thrown.)
> Thanks for reporting this. I will file a bug.
This could be checked in lambda metafactory generated constructor,
right? It doesn't have to be compiler generated code.
More information about the lambda-dev