8215156: Deprecate the -Xfuture option
authorhenryjen
Wed, 22 May 2019 21:45:47 -0700
changeset 55000 f11f2a4210b5
parent 54999 98ed47cd114a
child 55001 7dd0430a6997
8215156: Deprecate the -Xfuture option Reviewed-by: dholmes
src/hotspot/share/Xusage.txt
src/java.base/share/classes/sun/launcher/resources/launcher.properties
src/java.base/share/man/java.1
src/java.base/share/native/libjli/emessages.h
src/java.base/share/native/libjli/java.c
--- a/src/hotspot/share/Xusage.txt	Wed May 22 21:50:16 2019 -0400
+++ b/src/hotspot/share/Xusage.txt	Wed May 22 21:45:47 2019 -0700
@@ -13,6 +13,7 @@
     -Xmx<size>        set maximum Java heap size
     -Xss<size>        set java thread stack size
     -Xfuture          enable strictest checks, anticipating future default
+                      (deprecated)
     -Xrs              reduce use of OS signals by Java/VM (see documentation)
     -Xcheck:jni       perform additional checks for JNI functions
     -Xshare:off	      do not attempt to use shared class data
--- a/src/java.base/share/classes/sun/launcher/resources/launcher.properties	Wed May 22 21:50:16 2019 -0400
+++ b/src/java.base/share/classes/sun/launcher/resources/launcher.properties	Wed May 22 21:45:47 2019 -0700
@@ -132,6 +132,8 @@
 \    -Xdebug           provided for backward compatibility\n\
 \    -Xdiag            show additional diagnostic messages\n\
 \    -Xfuture          enable strictest checks, anticipating future default\n\
+\                      This option is deprecated and may be removed in a\n\
+\                      future release.\n\
 \    -Xint             interpreted mode execution only\n\
 \    -Xinternalversion\n\
 \                      displays more detailed JVM version information than the\n\
--- a/src/java.base/share/man/java.1	Wed May 22 21:50:16 2019 -0400
+++ b/src/java.base/share/man/java.1	Wed May 22 21:45:47 2019 -0700
@@ -716,6 +716,8 @@
 \-Xfuture
 .RS 4
 Enables strict class\-file format checks that enforce close conformance to the class\-file format specification\&. Developers are encouraged to use this flag when developing new code because the stricter checks will become the default in future releases\&.
+.sp
+This option is deprecated and may be removed in a future release.
 .RE
 .PP
 \-Xint
--- a/src/java.base/share/native/libjli/emessages.h	Wed May 22 21:50:16 2019 -0400
+++ b/src/java.base/share/native/libjli/emessages.h	Wed May 22 21:45:47 2019 -0700
@@ -38,6 +38,7 @@
 
 #define ARG_INFO_ENVVAR "NOTE: Picked up %s: %s"
 #define ARG_WARN        "Warning: %s option is no longer supported."
+#define ARG_DEPRECATED  "Warning: %s option is deprecated and may be removed in a future release."
 
 #define ARG_ERROR1      "Error: %s requires class path specification"
 #define ARG_ERROR2      "Error: %s requires jar file specification"
--- a/src/java.base/share/native/libjli/java.c	Wed May 22 21:50:16 2019 -0400
+++ b/src/java.base/share/native/libjli/java.c	Wed May 22 21:45:47 2019 -0700
@@ -1430,6 +1430,7 @@
         } else if (JLI_StrCmp(arg, "-noclassgc") == 0) {
             AddOption("-Xnoclassgc", NULL);
         } else if (JLI_StrCmp(arg, "-Xfuture") == 0) {
+            JLI_ReportErrorMessage(ARG_DEPRECATED, "-Xfuture");
             AddOption("-Xverify:all", NULL);
         } else if (JLI_StrCmp(arg, "-verify") == 0) {
             AddOption("-Xverify:all", NULL);