--- 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 sourceKey = new Context.Key<>(); @@ -147,6 +152,7 @@ } public Target requiredTarget() { + if (this.compareTo(JDK15) >= 0) return Target.JDK1_15; if (this.compareTo(JDK14) >= 0) return Target.JDK1_14; if (this.compareTo(JDK13) >= 0) return Target.JDK1_13; if (this.compareTo(JDK12) >= 0) return Target.JDK1_12; @@ -198,9 +204,9 @@ SWITCH_MULTIPLE_CASE_LABELS(JDK14, Fragments.FeatureMultipleCaseLabels, DiagKind.PLURAL), SWITCH_RULE(JDK14, Fragments.FeatureSwitchRules, DiagKind.PLURAL), SWITCH_EXPRESSION(JDK14, Fragments.FeatureSwitchExpressions, DiagKind.PLURAL), - TEXT_BLOCKS(JDK14, Fragments.FeatureTextBlocks, DiagKind.PLURAL), - PATTERN_MATCHING_IN_INSTANCEOF(JDK14, Fragments.FeaturePatternMatchingInstanceof, DiagKind.NORMAL), - REIFIABLE_TYPES_INSTANCEOF(JDK14, Fragments.FeatureReifiableTypesInstanceof, DiagKind.PLURAL), + TEXT_BLOCKS(JDK15, Fragments.FeatureTextBlocks, DiagKind.PLURAL), + PATTERN_MATCHING_IN_INSTANCEOF(JDK15, Fragments.FeaturePatternMatchingInstanceof, DiagKind.NORMAL), + REIFIABLE_TYPES_INSTANCEOF(JDK15, Fragments.FeatureReifiableTypesInstanceof, DiagKind.PLURAL), ; enum DiagKind { @@ -290,6 +296,8 @@ return RELEASE_13; case JDK14: return RELEASE_14; + case JDK15: + return RELEASE_15; default: return null; } --- old/src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/ClassFile.java 2019-12-02 22:02:49.706297774 -0800 +++ new/src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/ClassFile.java 2019-12-02 22:02:49.542215780 -0800 @@ -115,7 +115,8 @@ V55(55, 0), // JDK 11: constant dynamic, nest mates V56(56, 0), // JDK 12 V57(57, 0), // JDK 13 - V58(58, 0); // JDK 14 + V58(58, 0), // JDK 14 + V59(59, 0); // JDK 14 Version(int major, int minor) { this.major = major; this.minor = minor; --- old/src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Profile.java 2019-12-02 22:02:50.098493760 -0800 +++ new/src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Profile.java 2019-12-02 22:02:49.934411766 -0800 @@ -40,9 +40,12 @@ * deletion without notice. */ public enum Profile { - COMPACT1("compact1", 1, Target.JDK1_8, Target.JDK1_9, Target.JDK1_10, Target.JDK1_11, Target.JDK1_12, Target.JDK1_13, Target.JDK1_14), - COMPACT2("compact2", 2, Target.JDK1_8, Target.JDK1_9, Target.JDK1_10, Target.JDK1_11, Target.JDK1_12, Target.JDK1_13, Target.JDK1_14), - COMPACT3("compact3", 3, Target.JDK1_8, Target.JDK1_9, Target.JDK1_10, Target.JDK1_11, Target.JDK1_12, Target.JDK1_13, Target.JDK1_14), + COMPACT1("compact1", 1, Target.JDK1_8, Target.JDK1_9, Target.JDK1_10, + Target.JDK1_11, Target.JDK1_12, Target.JDK1_13, Target.JDK1_14, Target.JDK1_15), + COMPACT2("compact2", 2, Target.JDK1_8, Target.JDK1_9, Target.JDK1_10, + Target.JDK1_11, Target.JDK1_12, Target.JDK1_13, Target.JDK1_14, Target.JDK1_15), + COMPACT3("compact3", 3, Target.JDK1_8, Target.JDK1_9, Target.JDK1_10, + Target.JDK1_11, Target.JDK1_12, Target.JDK1_13, Target.JDK1_14, Target.JDK1_15), DEFAULT { @Override --- old/src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Target.java 2019-12-02 22:02:50.494691745 -0800 +++ new/src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Target.java 2019-12-02 22:02:50.326607752 -0800 @@ -76,7 +76,10 @@ JDK1_13("13", 57, 0), /** JDK 14. */ - JDK1_14("14", 58, 0); + JDK1_14("14", 58, 0), + + /** JDK 15. */ + JDK1_15("15", 59, 0); private static final Context.Key targetKey = new Context.Key<>(); --- old/src/jdk.compiler/share/classes/com/sun/tools/javac/processing/JavacProcessingEnvironment.java 2019-12-02 22:02:50.890889731 -0800 +++ new/src/jdk.compiler/share/classes/com/sun/tools/javac/processing/JavacProcessingEnvironment.java 2019-12-02 22:02:50.726807737 -0800 @@ -762,7 +762,6 @@ */ private void checkSourceVersionCompatibility(Source source, Log log) { SourceVersion procSourceVersion = processor.getSupportedSourceVersion(); - if (procSourceVersion.compareTo(Source.toSourceVersion(source)) < 0 ) { log.warning(Warnings.ProcProcessorIncompatibleSourceVersion(procSourceVersion, processor.getClass().getName(), --- old/src/jdk.compiler/share/classes/com/sun/tools/javac/processing/PrintingProcessor.java 2019-12-02 22:02:51.411149712 -0800 +++ new/src/jdk.compiler/share/classes/com/sun/tools/javac/processing/PrintingProcessor.java 2019-12-02 22:02:51.251069718 -0800 @@ -55,7 +55,7 @@ * deletion without notice. */ @SupportedAnnotationTypes("*") -@SupportedSourceVersion(SourceVersion.RELEASE_14) +@SupportedSourceVersion(SourceVersion.RELEASE_15) public class PrintingProcessor extends AbstractProcessor { PrintWriter writer; --- old/src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/classfile/Classfile.java 2019-12-02 22:02:52.031459690 -0800 +++ new/src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/classfile/Classfile.java 2019-12-02 22:02:51.867377696 -0800 @@ -49,7 +49,7 @@ private final List codeAttributes; private static final int MAJOR_VERSION_JAVA_MIN = 51; // JDK7 - private static final int MAJOR_VERSION_JAVA_MAX = 58; // JDK14 + private static final int MAJOR_VERSION_JAVA_MAX = 59; // JDK15 private static final int MAGIC = 0xCAFEBABE; /** --- old/src/jdk.rmic/share/classes/sun/tools/java/RuntimeConstants.java 2019-12-02 22:02:52.663775667 -0800 +++ new/src/jdk.rmic/share/classes/sun/tools/java/RuntimeConstants.java 2019-12-02 22:02:52.499693673 -0800 @@ -67,7 +67,7 @@ /* Class File Constants */ int JAVA_MAGIC = 0xcafebabe; int JAVA_MIN_SUPPORTED_VERSION = 45; - int JAVA_MAX_SUPPORTED_VERSION = 58; + int JAVA_MAX_SUPPORTED_VERSION = 59; int JAVA_MAX_SUPPORTED_MINOR_VERSION = 0; int JAVA_MIN_PREVIEW_MAJOR_VERSION = 55; // preview intro'd in JDK 11 int JAVA_PREVIEW_MINOR_VERSION = 0xffff; --- old/test/jdk/java/lang/module/ClassFileVersionsTest.java 2019-12-02 22:02:53.184035648 -0800 +++ new/test/jdk/java/lang/module/ClassFileVersionsTest.java 2019-12-02 22:02:53.027957654 -0800 @@ -58,6 +58,7 @@ { 56, 0, Set.of() }, // JDK 12 { 57, 0, Set.of() }, // JDK 13 { 58, 0, Set.of() }, // JDK 14 + { 59, 0, Set.of() }, // JDK 15 }; } @@ -89,7 +90,11 @@ { 58, 0, Set.of(TRANSITIVE) }, { 58, 0, Set.of(STATIC, TRANSITIVE) }, - { 59, 0, Set.of()}, // JDK 15 + { 59, 0, Set.of(STATIC) }, // JDK 15 + { 59, 0, Set.of(TRANSITIVE) }, + { 59, 0, Set.of(STATIC, TRANSITIVE) }, + + { 60, 0, Set.of()}, // JDK 16 }; } --- old/test/langtools/tools/javac/api/T6395981.java 2019-12-02 22:02:53.584235634 -0800 +++ new/test/langtools/tools/javac/api/T6395981.java 2019-12-02 22:02:53.424155639 -0800 @@ -31,7 +31,7 @@ * @run main/fail T6395981 * @run main/fail T6395981 RELEASE_3 RELEASE_5 RELEASE_6 * @run main/fail T6395981 RELEASE_0 RELEASE_1 RELEASE_2 RELEASE_3 RELEASE_4 RELEASE_5 RELEASE_6 - * @run main T6395981 RELEASE_3 RELEASE_4 RELEASE_5 RELEASE_6 RELEASE_7 RELEASE_8 RELEASE_9 RELEASE_10 RELEASE_11 RELEASE_12 RELEASE_13 RELEASE_14 + * @run main T6395981 RELEASE_3 RELEASE_4 RELEASE_5 RELEASE_6 RELEASE_7 RELEASE_8 RELEASE_9 RELEASE_10 RELEASE_11 RELEASE_12 RELEASE_13 RELEASE_14 RELEASE_15 */ import java.util.EnumSet; --- old/test/langtools/tools/javac/classfiles/ClassVersionChecker.java 2019-12-02 22:02:53.980433619 -0800 +++ new/test/langtools/tools/javac/classfiles/ClassVersionChecker.java 2019-12-02 22:02:53.816351625 -0800 @@ -49,7 +49,8 @@ ELEVEN("11", 55), TWELVE("12", 56), THIRTEEN("13", 57), - FOURTEEN("14", 58); + FOURTEEN("14", 58), + FIFTEEN("15", 59); private Version(String release, int classFileVer) { this.release = release; --- old/test/langtools/tools/javac/lib/JavacTestingAbstractProcessor.java 2019-12-02 22:02:54.484685601 -0800 +++ new/test/langtools/tools/javac/lib/JavacTestingAbstractProcessor.java 2019-12-02 22:02:54.324605607 -0800 @@ -110,7 +110,7 @@ * corresponding platform visitor type. */ - @SupportedSourceVersion(RELEASE_14) + @SupportedSourceVersion(RELEASE_15) public static abstract class AbstractAnnotationValueVisitor extends AbstractAnnotationValueVisitor9 { /** @@ -121,7 +121,7 @@ } } - @SupportedSourceVersion(RELEASE_14) + @SupportedSourceVersion(RELEASE_15) public static abstract class AbstractElementVisitor extends AbstractElementVisitor9 { /** * Constructor for concrete subclasses to call. @@ -131,7 +131,7 @@ } } - @SupportedSourceVersion(RELEASE_14) + @SupportedSourceVersion(RELEASE_15) public static abstract class AbstractTypeVisitor extends AbstractTypeVisitor9 { /** * Constructor for concrete subclasses to call. @@ -162,7 +162,7 @@ } } - @SupportedSourceVersion(RELEASE_14) + @SupportedSourceVersion(RELEASE_15) public static class ElementScanner extends ElementScanner9 { /** * Constructor for concrete subclasses; uses {@code null} for the @@ -181,7 +181,7 @@ } } - @SupportedSourceVersion(RELEASE_14) + @SupportedSourceVersion(RELEASE_15) public static class SimpleAnnotationValueVisitor extends SimpleAnnotationValueVisitor9 { /** * Constructor for concrete subclasses; uses {@code null} for the @@ -202,7 +202,7 @@ } } - @SupportedSourceVersion(RELEASE_14) + @SupportedSourceVersion(RELEASE_15) public static class SimpleElementVisitor extends SimpleElementVisitor9 { /** * Constructor for concrete subclasses; uses {@code null} for the @@ -223,7 +223,7 @@ } } - @SupportedSourceVersion(RELEASE_14) + @SupportedSourceVersion(RELEASE_15) public static class SimpleTypeVisitor extends SimpleTypeVisitor9 { /** * Constructor for concrete subclasses; uses {@code null} for the @@ -244,7 +244,7 @@ } } - @SupportedSourceVersion(RELEASE_14) + @SupportedSourceVersion(RELEASE_15) public static class TypeKindVisitor extends TypeKindVisitor9 { /** * Constructor for concrete subclasses to call; uses {@code null} --- old/test/langtools/tools/javac/preview/classReaderTest/Client.nopreview.out 2019-12-02 22:02:55.125005578 -0800 +++ new/test/langtools/tools/javac/preview/classReaderTest/Client.nopreview.out 2019-12-02 22:02:54.956921584 -0800 @@ -1,2 +1,2 @@ -- compiler.err.preview.feature.disabled.classfile: Bar.class, 14 +- compiler.err.preview.feature.disabled.classfile: Bar.class, 15 1 error --- old/test/langtools/tools/javac/preview/classReaderTest/Client.preview.out 2019-12-02 22:02:55.761323555 -0800 +++ new/test/langtools/tools/javac/preview/classReaderTest/Client.preview.out 2019-12-02 22:02:55.597241561 -0800 @@ -1,4 +1,4 @@ -- compiler.warn.preview.feature.use.classfile: Bar.class, 14 +- compiler.warn.preview.feature.use.classfile: Bar.class, 15 - compiler.err.warnings.and.werror 1 error 1 warning --- old/test/langtools/tools/javac/profiles/ProfileOptionTest.java 2019-12-02 22:02:56.297591535 -0800 +++ new/test/langtools/tools/javac/profiles/ProfileOptionTest.java 2019-12-02 22:02:56.117501542 -0800 @@ -153,6 +153,7 @@ case JDK1_12: case JDK1_13: case JDK1_14: + case JDK1_15: if (p == Profile.DEFAULT) break; if (ise == null) --- old/test/langtools/tools/javac/versions/Versions.java 2019-12-02 22:02:56.693789521 -0800 +++ new/test/langtools/tools/javac/versions/Versions.java 2019-12-02 22:02:56.537711527 -0800 @@ -69,9 +69,9 @@ Set.of("1.2", "1.3", "1.4", "1.5", "1.6"); public static final Set VALID_SOURCES = - Set.of("1.7", "1.8", "1.9", "1.10", "11", "12", "13", "14"); + Set.of("1.7", "1.8", "1.9", "1.10", "11", "12", "13", "14", "15"); - public static final String LATEST_MAJOR_VERSION = "58.0"; + public static final String LATEST_MAJOR_VERSION = "59.0"; static enum SourceTarget { SEVEN(true, "51.0", "7", Versions::checksrc17), @@ -81,7 +81,8 @@ ELEVEN(false, "55.0", "11", Versions::checksrc111), TWELVE(false, "56.0", "12", Versions::checksrc112), THIRTEEN(false, "57.0", "13", Versions::checksrc113), - FOURTEEN(false, "58.0", "14", Versions::checksrc114); + FOURTEEN(false, "58.0", "14", Versions::checksrc114), + FIFTEEN(false, "59.0", "15", Versions::checksrc115); private final boolean dotOne; private final String classFileVer; @@ -305,6 +306,11 @@ checksrc111(args); } + protected void checksrc115(String... args) { + printargs("checksrc115", args); + checksrc111(args); + } + protected void pass(String... args) { printargs("pass", args);