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

Karen Kinnear karen.kinnear at oracle.com
Tue Apr 30 05:05:08 PDT 2013


Bharadwaj,

I just double-checked and when I add support for private instance methods in interfaces for
lambda, this line will need to create miranda entries for the private methods, so it will need
to just weed out the static ones. Your call - whether you just check for static here, or check for
both and I change it soon.

Thank you for the test case. Did you run it through jtreg? I don't know how jtreg deals with
printed output as distinct from returning an int for instance and checking that the value is
correct.

thanks so much,
Karen

On Apr 30, 2013, at 2:12 AM, David Holmes wrote:

> 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