RFR(XS) 8081695: Old verifier fails to reject bad access to protected <init> method
harold.seigel at oracle.com
Fri Jul 17 18:20:59 UTC 2015
Thanks for the review.
I'll re-phrase the Summary to say: Verify that protected constructor
calls are not allowed for any classfile versions in either verifier.
On 7/17/2015 2:13 PM, Lois Foltan wrote:
> On 7/17/2015 10:48 AM, harold seigel wrote:
>> Please review this small change to fix bug JDK-8081695. The (old)
>> type inferencing verifier excluded a particular protected access
>> check for invokespecial calls of protected methods. That exclusion
>> was done because of bytecodes generated by very old broken
>> compilers. It is being removed because it violates the JVM-8 Spec
>> and should no longer be needed.
>> Open Webrev: http://cr.openjdk.java.net/~hseigel/bug_8081695/
>> JBS Bug: https://bugs.openjdk.java.net/browse/JDK-8081695
> Looks good. But can I suggest a reword on line #29 of
> test/vm/verifier/VerifyProtectedConstructor.java. Instead of:
> @summary Verify that protected constructor calls are not allowed for classfile version >= 50 (and that they are also not allowed for lesser versions).
> Can you just simply state:
> @summary Verify that protected constructor calls are not allowed for classfile version >= 49
>> The fix was tested with JCK Lang and VM tests, WLS sanity testing,
>> the UTE quick tests, and the hotspot, and JDK vm, java/io, java/lang,
>> and java/util JTreg tests.
>> Thanks, Harold
More information about the hotspot-runtime-dev