This assert in ClassFileParser::parse_classfile_bootstrap_methods_attribute() should be removed because it can be triggered by invalid bytecodes, not just by a JVM inconsistency.
assert(operand_fill_index == operands->length(), "exact fill");
If, for example, the class file contains an incorrect num_boostrap_arguments value for the Bootstrap_methods attribute then the assertion will trigger.
The assert should be removed, enabling ClassFormatError exception to be thrown instead.
The problem can be reproduced with the attached LambdaMath.class file when run against a fast-debug hotspot build.
assert(operand_fill_index == operands->length(), "exact fill");
If, for example, the class file contains an incorrect num_boostrap_arguments value for the Bootstrap_methods attribute then the assertion will trigger.
The assert should be removed, enabling ClassFormatError exception to be thrown instead.
The problem can be reproduced with the attached LambdaMath.class file when run against a fast-debug hotspot build.