JDK 9 RFR of 6481080 : (ann) @Deprecated annotation has no effect on packages
joe darcy
joe.darcy at oracle.com
Tue Jan 6 23:12:42 UTC 2015
Hello,
As part of cleaning up the deprecation facility in 9, please review this
change to document when a @Deprecated annotation is a no-op:
6481080 : (ann) @Deprecated annotation has no effect on packages
http://cr.openjdk.java.net/~darcy/6481080.0/
Since the @Deprecated feature was added in 5, it was a no-op on local
variables, parameters, and packages. The JLS documented the no-op
situation for local variables and parameters; separately, Alex will
handle updating the JLS in 9 to state packages are a no-op too.
Patch to java.lang.Deprecated below; the patch also fixes a typo in the
JLS section number.
Thanks,
-Joe
--- old/src/java.base/share/classes/java/lang/Deprecated.java 2015-01-06
15:06:40.893641309 -0800
+++ new/src/java.base/share/classes/java/lang/Deprecated.java 2015-01-06
15:06:40.737641309 -0800
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights
reserved.
+ * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights
reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -34,9 +34,13 @@
* or because a better alternative exists. Compilers warn when a
* deprecated program element is used or overridden in non-deprecated
code.
*
+ * <p>Use of the @Deprecated annotation on a local variable
+ * declaration or on a parameter declaration or a package declaration
+ * has no effect.
+ *
* @author Neal Gafter
* @since 1.5
- * @jls 9.6.3.6 @Deprecated
+ * @jls 9.6.4.6 @Deprecated
*/
@Documented
@Retention(RetentionPolicy.RUNTIME)
More information about the core-libs-dev
mailing list