RFR(XS): JDK-8040018 Remove bad assert in ClassFileParser.cpp
lois.foltan at oracle.com
Thu Apr 17 21:34:27 UTC 2014
Just a follow up. After looking at this more today, I actually think my
ASM test case isn't working as intended. I think you are better off
going with the original .jcod/test.jar file for testing. As I mentioned
below, the code change looks good.
On 4/16/2014 7:46 PM, Lois Foltan wrote:
> Hi Harold,
> Overall I think the change to classFileParser.cpp looks good. My only
> comments are about the test case, ClassFileParserBug.java. I
> personally find the readability of the .jcod file cumbersome. I have
> attached a ASM file, TestBadBootstrapMethodsAttr.java, in case you
> would prefer a straight java file. It needs to be cleaned up before
> it can be checked into the test system, but it does demonstrate the
> issue. Also, is it possible to have the test case live in
> test/runtime/verifier instead of a new directory?
> If you feel that the .jcod file and test.jar file better exercise this
> class format issue, then by all means you have my review to go forward.
> On 4/16/2014 1:49 PM, harold seigel wrote:
>> Please review this small change to fix bug JDK-8040018 for JDK-9. The
>> fix removes the assert because it can be triggered by a class file
>> containing an incorrect attribute_length value for the
>> BoostrapMethods attribute, not just by a JVM inconsistency. Removing
>> the assert lets the following guarantee_property() call catch the
>> problem and throw a java.lang.ClassFormatError exception.
>> The fix was tested with JPRT, JCK lang, JCK vm, hotspot jtreg, and
>> nsk quick tests. The new test was tested on Linux and Windows.
>> Open webrev at: http://cr.openjdk.java.net/~hseigel/bug_8040018/
>> Bug: https://bugs.openjdk.java.net/browse/JDK-8040018
>> Thanks! Harold
More information about the hotspot-runtime-dev