--- old/make/autoconf/version-numbers 2019-12-02 22:02:39.369132148 -0800
+++ new/make/autoconf/version-numbers 2019-12-02 22:02:39.197046155 -0800
@@ -26,18 +26,18 @@
# Default version, product, and vendor information to use,
# unless overridden by configure
-DEFAULT_VERSION_FEATURE=14
+DEFAULT_VERSION_FEATURE=15
DEFAULT_VERSION_INTERIM=0
DEFAULT_VERSION_UPDATE=0
DEFAULT_VERSION_PATCH=0
DEFAULT_VERSION_EXTRA1=0
DEFAULT_VERSION_EXTRA2=0
DEFAULT_VERSION_EXTRA3=0
-DEFAULT_VERSION_DATE=2020-03-17
-DEFAULT_VERSION_CLASSFILE_MAJOR=58 # "`$EXPR $DEFAULT_VERSION_FEATURE + 44`"
+DEFAULT_VERSION_DATE=2020-09-17
+DEFAULT_VERSION_CLASSFILE_MAJOR=59 # "`$EXPR $DEFAULT_VERSION_FEATURE + 44`"
DEFAULT_VERSION_CLASSFILE_MINOR=0
-DEFAULT_ACCEPTABLE_BOOT_VERSIONS="13 14"
-DEFAULT_JDK_SOURCE_TARGET_VERSION=14
+DEFAULT_ACCEPTABLE_BOOT_VERSIONS="13 14 15"
+DEFAULT_JDK_SOURCE_TARGET_VERSION=15
DEFAULT_PROMOTED_VERSION_PRE=ea
LAUNCHER_NAME=openjdk
--- old/src/hotspot/share/classfile/classFileParser.cpp 2019-12-02 22:02:39.877386130 -0800
+++ new/src/hotspot/share/classfile/classFileParser.cpp 2019-12-02 22:02:39.713304136 -0800
@@ -127,6 +127,8 @@
#define JAVA_14_VERSION 58
+#define JAVA_15_VERSION 59
+
void ClassFileParser::set_class_bad_constant_seen(short bad_constant) {
assert((bad_constant == JVM_CONSTANT_Module ||
bad_constant == JVM_CONSTANT_Package) && _major_version >= JAVA_9_VERSION,
--- old/src/java.base/share/classes/com/sun/java/util/jar/pack/Constants.java 2019-12-02 22:02:40.441668110 -0800
+++ new/src/java.base/share/classes/com/sun/java/util/jar/pack/Constants.java 2019-12-02 22:02:40.273584116 -0800
@@ -52,6 +52,7 @@
1.12 to 1.12.X 56,0
1.13 to 1.13.X 57,0
1.14 to 1.14.X 58,0
+ 1.15 to 1.15.X 59,0
*/
public static final Package.Version JAVA_MIN_CLASS_VERSION =
--- old/src/java.base/share/classes/jdk/internal/module/ModuleInfo.java 2019-12-02 22:02:40.969932090 -0800
+++ new/src/java.base/share/classes/jdk/internal/module/ModuleInfo.java 2019-12-02 22:02:40.793844097 -0800
@@ -63,7 +63,7 @@
public final class ModuleInfo {
private final int JAVA_MIN_SUPPORTED_VERSION = 53;
- private final int JAVA_MAX_SUPPORTED_VERSION = 58;
+ private final int JAVA_MAX_SUPPORTED_VERSION = 59;
private static final JavaLangModuleAccess JLMA
= SharedSecrets.getJavaLangModuleAccess();
--- old/src/java.base/share/classes/jdk/internal/org/objectweb/asm/ClassReader.java 2019-12-02 22:02:41.606250067 -0800
+++ new/src/java.base/share/classes/jdk/internal/org/objectweb/asm/ClassReader.java 2019-12-02 22:02:41.434164074 -0800
@@ -210,7 +210,7 @@
b = classFileBuffer;
// Check the class' major_version. This field is after the magic and minor_version fields, which
// use 4 and 2 bytes respectively.
- if (checkClassVersion && readShort(classFileOffset + 6) > Opcodes.V14) {
+ if (checkClassVersion && readShort(classFileOffset + 6) > Opcodes.V15) {
throw new IllegalArgumentException(
"Unsupported class file major version " + readShort(classFileOffset + 6));
}
--- old/src/java.base/share/classes/jdk/internal/org/objectweb/asm/Opcodes.java 2019-12-02 22:02:42.154524048 -0800
+++ new/src/java.base/share/classes/jdk/internal/org/objectweb/asm/Opcodes.java 2019-12-02 22:02:41.994444053 -0800
@@ -97,6 +97,7 @@
int V12 = 0 << 16 | 56;
int V13 = 0 << 16 | 57;
int V14 = 0 << 16 | 58;
+ int V15 = 0 << 16 | 59;
/**
* Version flag indicating that the class is using 'preview' features.
--- old/src/java.compiler/share/classes/javax/lang/model/SourceVersion.java 2019-12-02 22:02:42.570732033 -0800
+++ new/src/java.compiler/share/classes/javax/lang/model/SourceVersion.java 2019-12-02 22:02:42.406650038 -0800
@@ -61,6 +61,7 @@
* 12: no changes (switch expressions in preview)
* 13: no changes (switch expressions and text blocks in preview)
* 14: switch expressions
+ * 15: TBD
*/
/**
@@ -203,7 +204,17 @@
*
* @since 14
*/
- RELEASE_14;
+ RELEASE_14,
+
+ /**
+ * The version recognized by the Java Platform, Standard Edition
+ * 15.
+ *
+ * Additions in this release include switch expressions.
+ *
+ * @since 15
+ */
+ RELEASE_15;
// Note that when adding constants for newer releases, the
// behavior of latest() and latestSupported() must be updated too.
@@ -214,7 +225,7 @@
* @return the latest source version that can be modeled
*/
public static SourceVersion latest() {
- return RELEASE_14;
+ return RELEASE_15;
}
private static final SourceVersion latestSupported = getLatestSupported();
@@ -229,7 +240,7 @@
private static SourceVersion getLatestSupported() {
int intVersion = Runtime.version().feature();
return (intVersion >= 11) ?
- valueOf("RELEASE_" + Math.min(14, intVersion)):
+ valueOf("RELEASE_" + Math.min(15, intVersion)):
RELEASE_10;
}
--- old/src/java.compiler/share/classes/javax/lang/model/util/AbstractAnnotationValueVisitor9.java 2019-12-02 22:02:43.082988014 -0800
+++ new/src/java.compiler/share/classes/javax/lang/model/util/AbstractAnnotationValueVisitor9.java 2019-12-02 22:02:42.922908020 -0800
@@ -32,7 +32,7 @@
/**
* A skeletal visitor for annotation values with default behavior
* appropriate for source versions {@link SourceVersion#RELEASE_9
- * RELEASE_9} through {@link SourceVersion#RELEASE_14 RELEASE_14}.
+ * RELEASE_9} through {@link SourceVersion#RELEASE_15 RELEASE_15}.
*
*
WARNING: The {@code AnnotationValueVisitor} interface
* implemented by this class may have methods added to it in the
@@ -59,7 +59,7 @@
* @see AbstractAnnotationValueVisitor8
* @since 9
*/
-@SupportedSourceVersion(RELEASE_14)
+@SupportedSourceVersion(RELEASE_15)
public abstract class AbstractAnnotationValueVisitor9 extends AbstractAnnotationValueVisitor8 {
/**
--- old/src/java.compiler/share/classes/javax/lang/model/util/AbstractElementVisitor9.java 2019-12-02 22:02:43.695293992 -0800
+++ new/src/java.compiler/share/classes/javax/lang/model/util/AbstractElementVisitor9.java 2019-12-02 22:02:43.535213998 -0800
@@ -34,7 +34,7 @@
/**
* A skeletal visitor of program elements with default behavior
* appropriate for source versions {@link SourceVersion#RELEASE_9
- * RELEASE_9} through {@link SourceVersion#RELEASE_14 RELEASE_14}.
+ * RELEASE_9} through {@link SourceVersion#RELEASE_15 RELEASE_15}.
*
*
WARNING: The {@code ElementVisitor} interface
* implemented by this class may have methods added to it in the
@@ -65,7 +65,7 @@
* @since 9
* @spec JPMS
*/
-@SupportedSourceVersion(RELEASE_14)
+@SupportedSourceVersion(RELEASE_15)
public abstract class AbstractElementVisitor9 extends AbstractElementVisitor8 {
/**
* Constructor for concrete subclasses to call.
--- old/src/java.compiler/share/classes/javax/lang/model/util/AbstractTypeVisitor9.java 2019-12-02 22:02:44.307599970 -0800
+++ new/src/java.compiler/share/classes/javax/lang/model/util/AbstractTypeVisitor9.java 2019-12-02 22:02:44.143517976 -0800
@@ -33,7 +33,7 @@
/**
* A skeletal visitor of types with default behavior appropriate for
* source versions {@link SourceVersion#RELEASE_9 RELEASE_9} through
- * {@link SourceVersion#RELEASE_14 RELEASE_14}.
+ * {@link SourceVersion#RELEASE_15 RELEASE_15}.
*
*
WARNING: The {@code TypeVisitor} interface implemented
* by this class may have methods added to it in the future to
@@ -63,7 +63,7 @@
* @see AbstractTypeVisitor8
* @since 9
*/
-@SupportedSourceVersion(RELEASE_14)
+@SupportedSourceVersion(RELEASE_15)
public abstract class AbstractTypeVisitor9 extends AbstractTypeVisitor8 {
/**
* Constructor for concrete subclasses to call.
--- old/src/java.compiler/share/classes/javax/lang/model/util/ElementKindVisitor9.java 2019-12-02 22:02:44.919905947 -0800
+++ new/src/java.compiler/share/classes/javax/lang/model/util/ElementKindVisitor9.java 2019-12-02 22:02:44.755823953 -0800
@@ -34,7 +34,7 @@
* A visitor of program elements based on their {@linkplain
* ElementKind kind} with default behavior appropriate for source
* versions {@link SourceVersion#RELEASE_9 RELEASE_9} through {@link
- * SourceVersion#RELEASE_14 RELEASE_14}.
+ * SourceVersion#RELEASE_15 RELEASE_15}.
*
* For {@linkplain
* Element elements} Xyz that may have more than one
@@ -80,7 +80,7 @@
* @since 9
* @spec JPMS
*/
-@SupportedSourceVersion(RELEASE_14)
+@SupportedSourceVersion(RELEASE_15)
public class ElementKindVisitor9 extends ElementKindVisitor8 {
/**
* Constructor for concrete subclasses; uses {@code null} for the
--- old/src/java.compiler/share/classes/javax/lang/model/util/ElementScanner9.java 2019-12-02 22:02:45.524207926 -0800
+++ new/src/java.compiler/share/classes/javax/lang/model/util/ElementScanner9.java 2019-12-02 22:02:45.364127931 -0800
@@ -34,7 +34,7 @@
/**
* A scanning visitor of program elements with default behavior
* appropriate for source versions {@link SourceVersion#RELEASE_9
- * RELEASE_9} through {@link SourceVersion#RELEASE_14 RELEASE_14}.
+ * RELEASE_9} through {@link SourceVersion#RELEASE_15 RELEASE_15}.
*
* The visitXyz methods in this
* class scan their component elements by calling {@code scan} on
@@ -92,7 +92,7 @@
* @since 9
* @spec JPMS
*/
-@SupportedSourceVersion(RELEASE_14)
+@SupportedSourceVersion(RELEASE_15)
public class ElementScanner9 extends ElementScanner8 {
/**
* Constructor for concrete subclasses; uses {@code null} for the
--- old/src/java.compiler/share/classes/javax/lang/model/util/SimpleAnnotationValueVisitor9.java 2019-12-02 22:02:46.140515903 -0800
+++ new/src/java.compiler/share/classes/javax/lang/model/util/SimpleAnnotationValueVisitor9.java 2019-12-02 22:02:45.976433909 -0800
@@ -32,7 +32,7 @@
/**
* A simple visitor for annotation values with default behavior
* appropriate for source versions {@link SourceVersion#RELEASE_9
- * RELEASE_9} through {@link SourceVersion#RELEASE_14 RELEASE_14}.
+ * RELEASE_9} through {@link SourceVersion#RELEASE_15 RELEASE_15}.
*
* Visit methods call {@link #defaultAction
* defaultAction} passing their arguments to {@code defaultAction}'s
@@ -68,7 +68,7 @@
* @see SimpleAnnotationValueVisitor8
* @since 9
*/
-@SupportedSourceVersion(RELEASE_14)
+@SupportedSourceVersion(RELEASE_15)
public class SimpleAnnotationValueVisitor9 extends SimpleAnnotationValueVisitor8 {
/**
* Constructor for concrete subclasses; uses {@code null} for the
--- old/src/java.compiler/share/classes/javax/lang/model/util/SimpleElementVisitor9.java 2019-12-02 22:02:46.768829880 -0800
+++ new/src/java.compiler/share/classes/javax/lang/model/util/SimpleElementVisitor9.java 2019-12-02 22:02:46.604747886 -0800
@@ -33,7 +33,7 @@
/**
* A simple visitor of program elements with default behavior
* appropriate for source versions {@link SourceVersion#RELEASE_9
- * RELEASE_9} through {@link SourceVersion#RELEASE_14 RELEASE_14}.
+ * RELEASE_9} through {@link SourceVersion#RELEASE_15 RELEASE_15}.
*
* Visit methods corresponding to {@code RELEASE_9} and earlier
* language constructs call {@link #defaultAction defaultAction},
@@ -73,7 +73,7 @@
* @since 9
* @spec JPMS
*/
-@SupportedSourceVersion(RELEASE_14)
+@SupportedSourceVersion(RELEASE_15)
public class SimpleElementVisitor9 extends SimpleElementVisitor8 {
/**
* Constructor for concrete subclasses; uses {@code null} for the
--- old/src/java.compiler/share/classes/javax/lang/model/util/SimpleTypeVisitor9.java 2019-12-02 22:02:47.389139858 -0800
+++ new/src/java.compiler/share/classes/javax/lang/model/util/SimpleTypeVisitor9.java 2019-12-02 22:02:47.229059864 -0800
@@ -33,7 +33,7 @@
/**
* A simple visitor of types with default behavior appropriate for
* source versions {@link SourceVersion#RELEASE_9 RELEASE_9} through
- * {@link SourceVersion#RELEASE_14 RELEASE_14}.
+ * {@link SourceVersion#RELEASE_15 RELEASE_15}.
*
* Visit methods corresponding to {@code RELEASE_9} and earlier
* language constructs call {@link #defaultAction defaultAction},
@@ -73,7 +73,7 @@
* @see SimpleTypeVisitor8
* @since 9
*/
-@SupportedSourceVersion(RELEASE_14)
+@SupportedSourceVersion(RELEASE_15)
public class SimpleTypeVisitor9 extends SimpleTypeVisitor8 {
/**
* Constructor for concrete subclasses; uses {@code null} for the
--- old/src/java.compiler/share/classes/javax/lang/model/util/TypeKindVisitor9.java 2019-12-02 22:02:47.989439836 -0800
+++ new/src/java.compiler/share/classes/javax/lang/model/util/TypeKindVisitor9.java 2019-12-02 22:02:47.833361842 -0800
@@ -34,7 +34,7 @@
* A visitor of types based on their {@linkplain TypeKind kind} with
* default behavior appropriate for source versions {@link
* SourceVersion#RELEASE_9 RELEASE_9} through {@link
- * SourceVersion#RELEASE_14 RELEASE_14}.
+ * SourceVersion#RELEASE_15 RELEASE_15}.
*
* For {@linkplain
* TypeMirror types} Xyz that may have more than one
@@ -77,7 +77,7 @@
* @see TypeKindVisitor8
* @since 9
*/
-@SupportedSourceVersion(RELEASE_14)
+@SupportedSourceVersion(RELEASE_15)
public class TypeKindVisitor9 extends TypeKindVisitor8 {
/**
* Constructor for concrete subclasses to call; uses {@code null}
--- old/src/jdk.compiler/share/classes/com/sun/tools/javac/code/Source.java 2019-12-02 22:02:48.837863806 -0800
+++ new/src/jdk.compiler/share/classes/com/sun/tools/javac/code/Source.java 2019-12-02 22:02:48.669779812 -0800
@@ -96,7 +96,12 @@
/**
* 14, switch expressions
*/
- JDK14("14");
+ JDK14("14"),
+
+ /**
+ * 15, tbd
+ */
+ JDK15("15");
private static final Context.Key