Mercurial > hg > truffle
diff src/share/vm/classfile/classFileParser.cpp @ 176:6b648fefb395
6705523: Fix for 6695506 will violate spec when used in JDK6
Summary: Make max classfile version number dependent on JDK version
Reviewed-by: acorn, never
author | kamg |
---|---|
date | Thu, 22 May 2008 13:03:52 -0400 |
parents | 7f3a69574470 |
children | 1f809e010142 |
line wrap: on
line diff
--- a/src/share/vm/classfile/classFileParser.cpp Wed May 14 15:01:08 2008 -0700 +++ b/src/share/vm/classfile/classFileParser.cpp Thu May 22 13:03:52 2008 -0400 @@ -44,6 +44,7 @@ // Used for backward compatibility reasons: // - to check for javac bug fixes that happened after 1.5 +// - also used as the max version when running in jdk6 #define JAVA_6_VERSION 50 @@ -3516,9 +3517,11 @@ } bool ClassFileParser::is_supported_version(u2 major, u2 minor) { + u2 max_version = JDK_Version::is_gte_jdk17x_version() ? + JAVA_MAX_SUPPORTED_VERSION : JAVA_6_VERSION; return (major >= JAVA_MIN_SUPPORTED_VERSION) && - (major <= JAVA_MAX_SUPPORTED_VERSION) && - ((major != JAVA_MAX_SUPPORTED_VERSION) || + (major <= max_version) && + ((major != max_version) || (minor <= JAVA_MAX_SUPPORTED_MINOR_VERSION)); }