RFR(XS) : JDK-8013418 - assert(i == total_args_passed) in AdapterHandlerLibrary::get_adapter since 8-b87

David Holmes david.holmes at oracle.com
Mon Apr 29 23:12:13 PDT 2013


On 30/04/2013 2:05 PM, Bharadwaj Yadavalli wrote:
> Please review the changes that address the assertion failure. JDK 8
> allows static public interface methods. Such methods should not be
> considered as candidates for generation of synthetic code while parsing
> classes that implement default methods.

You mention static public, but your check is for static or private. So 
AFAICS there are actually two kinds of interface methods to be excluded 
from being considered miranda methods:

a) static interface methods; otherwise
b) private interface methods

This all seems rather incidental though - why don't we simply mark 
methods as being miranda methods when they are created?

Fix seems okay given it fixes present problem, but I worry that these 
new kinds of interface methods are going to cause other problems. :(

David
-----

PS. I'm heading off on vacation so won't be able to correspond further 
on this.

> This failure results from the addition of static public interface
> methods to java library code.
>
> Added a new test.
>
> JBS : https://jbs.oracle.com/bugs/browse/JDK-8013418
> Webrev : http://cr.openjdk.java.net/~bharadwaj/8013418/webrev/
>
> Thanks,
>
> Bharadwaj
>


More information about the hotspot-runtime-dev mailing list