Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .jcheck/conf
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[general]
project=jdk
jbs=JDK
version=26
version=27

[checks]
error=author,committer,reviewers,merge,issues,executable,symlink,message,hg-tag,whitespace,problemlists,copyright
Expand Down
2 changes: 1 addition & 1 deletion bin/generate-symbol-data.sh
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@
# directory.
# - open a terminal program and run these commands:
# cd "${JDK_CHECKOUT}"/src/jdk.compiler/share/data/symbols
# bash ../../../../../make/scripts/generate-symbol-data.sh "${JDK_N_INSTALL}"
# bash ../../../../../bin/generate-symbol-data.sh "${JDK_N_INSTALL}"
# - this command will generate or update data for "--release N" into the ${JDK_CHECKOUT}/src/jdk.compiler/share/data/symbols
# directory, updating all registration necessary. If the goal was to update the data, and there are no
# new or changed files in the ${JDK_CHECKOUT}/src/jdk.compiler/share/data/symbols directory after running this script,
Expand Down
8 changes: 4 additions & 4 deletions make/conf/version-numbers.conf
Original file line number Diff line number Diff line change
Expand Up @@ -26,17 +26,17 @@
# Default version, product, and vendor information to use,
# unless overridden by configure

DEFAULT_VERSION_FEATURE=26
DEFAULT_VERSION_FEATURE=27
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=2026-03-17
DEFAULT_VERSION_CLASSFILE_MAJOR=70 # "`$EXPR $DEFAULT_VERSION_FEATURE + 44`"
DEFAULT_VERSION_DATE=2026-09-15
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Anticipated GA date confirmed.

DEFAULT_VERSION_CLASSFILE_MAJOR=71 # "`$EXPR $DEFAULT_VERSION_FEATURE + 44`"
DEFAULT_VERSION_CLASSFILE_MINOR=0
DEFAULT_VERSION_DOCS_API_SINCE=11
DEFAULT_ACCEPTABLE_BOOT_VERSIONS="25 26"
DEFAULT_JDK_SOURCE_TARGET_VERSION=26
DEFAULT_JDK_SOURCE_TARGET_VERSION=27
DEFAULT_PROMOTED_VERSION_PRE=ea
2 changes: 2 additions & 0 deletions src/hotspot/share/classfile/classFileParser.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -156,6 +156,8 @@

#define JAVA_26_VERSION 70

#define JAVA_27_VERSION 71

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,
Expand Down
10 changes: 9 additions & 1 deletion src/java.base/share/classes/java/lang/classfile/ClassFile.java
Original file line number Diff line number Diff line change
Expand Up @@ -1038,6 +1038,14 @@ default List<VerifyError> verify(Path path) throws IOException {
*/
int JAVA_26_VERSION = 70;

/**
* The class major version introduced by Java SE 27, {@value}.
*
* @see ClassFileFormatVersion#RELEASE_27
* @since 27
*/
int JAVA_27_VERSION = 71;

/**
* A minor version number {@value} indicating a class uses preview features
* of a Java SE release since 12, for major versions {@value
Expand All @@ -1049,7 +1057,7 @@ default List<VerifyError> verify(Path path) throws IOException {
* {@return the latest class major version supported by the current runtime}
*/
static int latestMajorVersion() {
return JAVA_26_VERSION;
return JAVA_27_VERSION;
}

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -379,10 +379,22 @@ public enum ClassFileFormatVersion {
* @since 26
*
* @see <a
* href="https://docs.oracle.com/javase/specs/jvms/se26/html/index.html">
* href="https://docs.oracle.com/en/java/javase/26/docs/specs/jvms/index.html">
* <cite>The Java Virtual Machine Specification, Java SE 26 Edition</cite></a>
*/
RELEASE_26(70),

/**
* The version introduced by the Java Platform, Standard Edition
* 27.
*
* @since 27
*
* @see <a
* href="https://docs.oracle.com/en/java/javase/27/docs/specs/jvms/index.html">
* <cite>The Java Virtual Machine Specification, Java SE 27 Edition</cite></a>
*/
RELEASE_27(71),
; // Reduce code churn when appending new constants

// Note to maintainers: when adding constants for newer releases,
Expand All @@ -398,7 +410,7 @@ private ClassFileFormatVersion(int major) {
* {@return the latest class file format version}
*/
public static ClassFileFormatVersion latest() {
return RELEASE_26;
return RELEASE_27;
}

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -480,6 +480,18 @@ public enum SourceVersion {
* <cite>The Java Language Specification, Java SE 26 Edition</cite></a>
*/
RELEASE_26,

/**
* The version introduced by the Java Platform, Standard Edition
* 27.
*
* @since 27
*
* @see <a
* href="https://docs.oracle.com/javase/specs/jls/se27/html/index.html">
* <cite>The Java Language Specification, Java SE 27 Edition</cite></a>
*/
RELEASE_27,
; // Reduce code churn when appending new constants

// Note that when adding constants for newer releases, the
Expand All @@ -489,7 +501,7 @@ public enum SourceVersion {
* {@return the latest source version that can be modeled}
*/
public static SourceVersion latest() {
return RELEASE_26;
return RELEASE_27;
}

private static final SourceVersion latestSupported = getLatestSupported();
Expand All @@ -504,7 +516,7 @@ public static SourceVersion latest() {
private static SourceVersion getLatestSupported() {
int intVersion = Runtime.version().feature();
return (intVersion >= 11) ?
valueOf("RELEASE_" + Math.min(26, intVersion)):
valueOf("RELEASE_" + Math.min(27, intVersion)):
RELEASE_10;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@
* @see AbstractAnnotationValueVisitor9
* @since 14
*/
@SupportedSourceVersion(RELEASE_26)
@SupportedSourceVersion(RELEASE_27)
public abstract class AbstractAnnotationValueVisitor14<R, P> extends AbstractAnnotationValueVisitor9<R, P> {

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@
* @see AbstractAnnotationValueVisitor14
* @since 23
*/
@SupportedSourceVersion(RELEASE_26)
@SupportedSourceVersion(RELEASE_27)
@PreviewFeature(feature=PreviewFeature.Feature.LANGUAGE_MODEL, reflective=true)
public abstract class AbstractAnnotationValueVisitorPreview<R, P> extends AbstractAnnotationValueVisitor14<R, P> {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@
* @see AbstractElementVisitor9
* @since 16
*/
@SupportedSourceVersion(RELEASE_26)
@SupportedSourceVersion(RELEASE_27)
public abstract class AbstractElementVisitor14<R, P> extends AbstractElementVisitor9<R, P> {
/**
* Constructor for concrete subclasses to call.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@
* @see AbstractElementVisitor14
* @since 23
*/
@SupportedSourceVersion(RELEASE_26)
@SupportedSourceVersion(RELEASE_27)
@PreviewFeature(feature=PreviewFeature.Feature.LANGUAGE_MODEL, reflective=true)
public abstract class AbstractElementVisitorPreview<R, P> extends AbstractElementVisitor14<R, P> {
/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@
* @see AbstractTypeVisitor9
* @since 14
*/
@SupportedSourceVersion(RELEASE_26)
@SupportedSourceVersion(RELEASE_27)
public abstract class AbstractTypeVisitor14<R, P> extends AbstractTypeVisitor9<R, P> {
/**
* Constructor for concrete subclasses to call.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@
* @see AbstractTypeVisitor14
* @since 23
*/
@SupportedSourceVersion(RELEASE_26)
@SupportedSourceVersion(RELEASE_27)
@PreviewFeature(feature=PreviewFeature.Feature.LANGUAGE_MODEL, reflective=true)
public abstract class AbstractTypeVisitorPreview<R, P> extends AbstractTypeVisitor14<R, P> {
/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@
* @see ElementKindVisitor9
* @since 16
*/
@SupportedSourceVersion(RELEASE_26)
@SupportedSourceVersion(RELEASE_27)
public class ElementKindVisitor14<R, P> extends ElementKindVisitor9<R, P> {
/**
* Constructor for concrete subclasses; uses {@code null} for the
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@
* @see ElementKindVisitor14
* @since 23
*/
@SupportedSourceVersion(RELEASE_26)
@SupportedSourceVersion(RELEASE_27)
@PreviewFeature(feature=PreviewFeature.Feature.LANGUAGE_MODEL, reflective=true)
public class ElementKindVisitorPreview<R, P> extends ElementKindVisitor14<R, P> {
/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@
* @see ElementScanner9
* @since 16
*/
@SupportedSourceVersion(RELEASE_26)
@SupportedSourceVersion(RELEASE_27)
public class ElementScanner14<R, P> extends ElementScanner9<R, P> {
/**
* Constructor for concrete subclasses; uses {@code null} for the
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@
* @see ElementScanner14
* @since 23
*/
@SupportedSourceVersion(RELEASE_26)
@SupportedSourceVersion(RELEASE_27)
@PreviewFeature(feature=PreviewFeature.Feature.LANGUAGE_MODEL, reflective=true)
public class ElementScannerPreview<R, P> extends ElementScanner14<R, P> {
/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@
* @see SimpleAnnotationValueVisitor9
* @since 14
*/
@SupportedSourceVersion(RELEASE_26)
@SupportedSourceVersion(RELEASE_27)
public class SimpleAnnotationValueVisitor14<R, P> extends SimpleAnnotationValueVisitor9<R, P> {
/**
* Constructor for concrete subclasses; uses {@code null} for the
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@
* @see SimpleAnnotationValueVisitor14
* @since 23
*/
@SupportedSourceVersion(RELEASE_26)
@SupportedSourceVersion(RELEASE_27)
@PreviewFeature(feature=PreviewFeature.Feature.LANGUAGE_MODEL, reflective=true)
public class SimpleAnnotationValueVisitorPreview<R, P> extends SimpleAnnotationValueVisitor14<R, P> {
/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@
* @see SimpleElementVisitor9
* @since 16
*/
@SupportedSourceVersion(RELEASE_26)
@SupportedSourceVersion(RELEASE_27)
public class SimpleElementVisitor14<R, P> extends SimpleElementVisitor9<R, P> {
/**
* Constructor for concrete subclasses; uses {@code null} for the
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@
* @see SimpleElementVisitor14
* @since 23
*/
@SupportedSourceVersion(RELEASE_26)
@SupportedSourceVersion(RELEASE_27)
@PreviewFeature(feature=PreviewFeature.Feature.LANGUAGE_MODEL, reflective=true)
public class SimpleElementVisitorPreview<R, P> extends SimpleElementVisitor14<R, P> {
/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@
* @see SimpleTypeVisitor9
* @since 14
*/
@SupportedSourceVersion(RELEASE_26)
@SupportedSourceVersion(RELEASE_27)
public class SimpleTypeVisitor14<R, P> extends SimpleTypeVisitor9<R, P> {
/**
* Constructor for concrete subclasses; uses {@code null} for the
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@
* @see SimpleTypeVisitor14
* @since 23
*/
@SupportedSourceVersion(RELEASE_26)
@SupportedSourceVersion(RELEASE_27)
@PreviewFeature(feature=PreviewFeature.Feature.LANGUAGE_MODEL, reflective=true)
public class SimpleTypeVisitorPreview<R, P> extends SimpleTypeVisitor14<R, P> {
/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@
* @see TypeKindVisitor9
* @since 14
*/
@SupportedSourceVersion(RELEASE_26)
@SupportedSourceVersion(RELEASE_27)
public class TypeKindVisitor14<R, P> extends TypeKindVisitor9<R, P> {
/**
* Constructor for concrete subclasses to call; uses {@code null}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@
* @see TypeKindVisitor14
* @since 23
*/
@SupportedSourceVersion(RELEASE_26)
@SupportedSourceVersion(RELEASE_27)
@PreviewFeature(feature=PreviewFeature.Feature.LANGUAGE_MODEL, reflective=true)
public class TypeKindVisitorPreview<R, P> extends TypeKindVisitor14<R, P> {
/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -158,6 +158,11 @@ public enum Source {
* 26, tbd
*/
JDK26("26"),

/**
* 27, tbd
*/
JDK27("27"),
; // Reduce code churn when appending new constants

private static final Context.Key<Source> sourceKey = new Context.Key<>();
Expand Down Expand Up @@ -210,6 +215,7 @@ public boolean isSupported() {

public Target requiredTarget() {
return switch(this) {
case JDK27 -> Target.JDK1_27;
case JDK26 -> Target.JDK1_26;
case JDK25 -> Target.JDK1_25;
case JDK24 -> Target.JDK1_24;
Expand Down Expand Up @@ -366,6 +372,7 @@ public static SourceVersion toSourceVersion(Source source) {
case JDK24 -> RELEASE_24;
case JDK25 -> RELEASE_25;
case JDK26 -> RELEASE_26;
case JDK27 -> RELEASE_27;
default -> null;
};
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -130,6 +130,7 @@ public enum Version {
V68(68, 0), // JDK 24
V69(69, 0), // JDK 25
V70(70, 0), // JDK 26
V71(71, 0), // JDK 27
; // Reduce code churn when appending new constants
Version(int major, int minor) {
this.major = major;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -113,6 +113,9 @@ public enum Target {

/** JDK 26. */
JDK1_26("26", 70, 0),

/** JDK 27. */
JDK1_27("27", 71, 0),
; // Reduce code churn when appending new constants

private static final Context.Key<Target> targetKey = new Context.Key<>();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@
* deletion without notice.</b>
*/
@SupportedAnnotationTypes("*")
@SupportedSourceVersion(SourceVersion.RELEASE_26)
@SupportedSourceVersion(SourceVersion.RELEASE_27)
public class PrintingProcessor extends AbstractProcessor {
PrintWriter writer;

Expand Down
2 changes: 1 addition & 1 deletion src/jdk.compiler/share/data/symbols/README
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
This directory contains history data for -release.

Please see $JDK_TOP_DIR/make/scripts/generate-symbol-data.sh for main usage.
Please see $JDK_TOP_DIR/bin/generate-symbol-data.sh for main usage.
Loading