RFR (M): JDK-8004967 - Default method cause java.lang.VerifyError: Illegal use of nonvirtual function call

Dean Long dean.long at oracle.com
Wed Jan 16 12:50:45 PST 2013


Don't you need to change the split verifier as well?

dl

On 1/16/2013 10:35 AM, Bharadwaj Yadavalli wrote:
> Please review the change at 
> http://cr.openjdk.java.net/~bharadwaj/8004967/webrev/
>
> Default interface methods are new in Java 8. VM creates overpass 
> methods in the vtable slots of classes to invoke a default method 
> using invokespecial.
>
> Consequently, invocation of default interface methods (i.e., overpass 
> methods in the VM) via invokespecial is legal and should not be 
> flagged as illegal.
>
> In short, this change allows invocation of default methods of Java 8 
> using invokespecial.
>
> I ran JCK (vm, lang, api) tests, runThese and vm.quicklist with no new 
> failures.
>
> Thanks,
>
> Bharadwaj
>


More information about the hotspot-runtime-dev mailing list