Testing Groovy against JDK 8 EA builds
Remi Forax
forax at univ-mlv.fr
Wed Nov 20 14:11:11 PST 2013
On 11/20/2013 10:59 PM, David Holmes wrote:
> On 20/11/2013 6:51 PM, Jochen Theodorou wrote:
>>> The VerifyError is VM related and there are still ongoing changes as
>>> the
>>> spec settles and the implementation catches up.
>>
>> can you tell me which invoke instruction are how supposed to be able to
>> call default methods? I am sure that if Foo implements Bar and bar() is
>> a default method on Bar, that an invokevirtual Foo#bar() is supposed to
>> be ok. But what about invokespecial on Bar#bar (like a super call)?
>
> invokespecial's can be used but I'm not sure of the exact context. The
> proposed specification for this is here:
>
> http://cr.openjdk.java.net/~dlsmith/jsr335-0.7.0/J.html
>
> David
Hi Jochen, hi David,
the VM now supports invokespecial and invokestatic on interface,
invoking a default method from another class is done with invokeinterface,
invoking a default method of a super interface from a class or an
interface is
done with invokespecial, invoking a static method on an interface is
done with
invokestatic.
And with an ASM dev hat, Jochen, if you want to emit invokespecial or
invokestatic
on an interface with ASM, you need to downlod the latest version from
the trunk,
we haven't release a version with that support yet.
>
>>> The List issue is something to discuss on lambda-dev. We know there are
>>> some source incompatabilities with default methods in Java 8. This
>>> is an
>>> accepted price to pay for moving the Java libraries forward.
>>
>> it is not a source incompatibility for us, but since it is Groovy code,
>> not Java code that might be another story
>>
>> bye Jochen
>>
cheers,
Rémi
More information about the hotspot-dev
mailing list