Test cases related to JSR 292
forum at x9c.fr
forum at x9c.fr
Sat Apr 23 02:18:36 PDT 2011
Le 22 avr. 2011 à 16:42, Rémi Forax a écrit :
>
>>> This is a possibility, hoping that the entry ticket to the ASM API is not to high.
>>>
>>> While developing the code to read/write a JDK7 class file, I noticed what I think
>>> is a typo on the "http://download.java.net/jdk7/docs/api/java/lang/invoke/package-summary.html"
>>> page. The line:
>>> u1 reference_kind; // 1..8 (one of REF_invokeVirtual, etc.)
>>> should probably be:
>>> u1 reference_kind; // 1..9 (one of REF_invokeVirtual, etc.)
>>> unless interface methods are explicitly forbidden. In the latter case, what is
>>> the motive?
>> Sorry for the noise, but I have another question regarding the aforementioned URL
>> that I use as a specification for JSR 292. It is not clear which elements can embed
>> a "BootstrapMethods" attribute, possible candidates being, at first sight:
>> - a "Code" attribute;
>> - a method;
>> - a class.
>>
>> My first move would be to regard this attribute as reserved to a "Code" attribute,
>> but it seems that data sharing would be increased by putting it a the class level.
>
> The BootstrapMethods attribute is a class attribute.
> And you're right that this is not written anywhere :(
> We should fix that too.
Thanks for the clarification. This is what I figured out from an ancient hg commit,
but my intuition was conflicting with this fact...
Can you elaborate on the rationale behind this EG choice?
The only advantage I can think of is data sharing, but it seems more or less
done by the constant pool. I would have placed "BootstrapMethods" at the same
level as "LineNumberTable" or "StackMapTable", based on some kind of locality
property.
Xavier
More information about the mlvm-dev
mailing list