Problem with lambda expression in initialization block

Brian Goetz brian.goetz at oracle.com
Sun Sep 16 07:51:20 PDT 2012


> So AbstractValidatingLambdaMetafactory.validateMetafactoryArgs should be
> changed to allow
> lambda that are constructed with a super call.

No, if your theory is correct (and we've seen this bug elsewhere), its a 
VM bug introduced in the new 292 implementation.

We use the MethodHandle-cracking API DanH spoke about at JVMLS.  If 
MethodHandleInfo reports that a MH is of kind REF_special, then it had 
better be invokable with invokespecial.  If the check in AVLMF were to 
pass this through (we tried it), the invoke would fail.

Its a straight bug in the new MethodHandleInfo.


More information about the lambda-dev mailing list