comparison src/share/vm/classfile/classFileParser.cpp @ 10340:ccdecfece956

8014059: JSR292: Failed to reject invalid class cplmhl00201m28n Summary: Restrict reference of interface methods by invokestatic and invokespecial to classfile version 52 or later. Reviewed-by: kvn, hseigel
author bharadwaj
date Tue, 21 May 2013 16:17:51 -0700
parents bbddfb08190f
children 6bd680e9ea35
comparison
equal deleted inserted replaced
10314:bbddfb08190f 10340:ccdecfece956
442 "Invalid constant pool index %u in class file %s (not a method)", 442 "Invalid constant pool index %u in class file %s (not a method)",
443 ref_index, CHECK_(nullHandle)); 443 ref_index, CHECK_(nullHandle));
444 break; 444 break;
445 case JVM_REF_invokeStatic: 445 case JVM_REF_invokeStatic:
446 case JVM_REF_invokeSpecial: 446 case JVM_REF_invokeSpecial:
447 check_property( 447 check_property(tag.is_method() ||
448 tag.is_method() || tag.is_interface_method(), 448 ((_major_version >= JAVA_8_VERSION) && tag.is_interface_method()),
449 "Invalid constant pool index %u in class file %s (not a method)", 449 "Invalid constant pool index %u in class file %s (not a method)",
450 ref_index, CHECK_(nullHandle)); 450 ref_index, CHECK_(nullHandle));
451 break; 451 break;
452 case JVM_REF_invokeInterface: 452 case JVM_REF_invokeInterface:
453 check_property( 453 check_property(