RFR: 8231622: SuppressWarning("serial") ignored on field serialVersionUID
Jonathan Gibbons
jjg at openjdk.java.net
Fri Dec 4 17:27:16 UTC 2020
On Fri, 4 Dec 2020 16:21:28 GMT, Guoxiong Li <github.com+13688759+lgxbslgx at openjdk.org> wrote:
> Hi all,
>
> Currently, a warning is generated when compiling the following code by using the option `-Xlint`.
>
> import java.io.Serializable;
> class B implements Serializable {
> @SuppressWarnings("serial")
> private static final byte serialVersionUID = 5;
> }
>
> output:
> B.java:4: warning: [serial] serialVersionUID must be of type long in class B
> private static final byte serialVersionUID = 5;
> ^
> 1 warning
>
> The annotation `@SuppressWarnings("serial")` on field serialVersionUID is ignored by the compiler.
> This patch fixes it and adds some tests.
> Thank you for taking the time to review.
>
> Best Regards.
For tests that use `/ref=file` `-XDrawDiagnostics` the conventions are:
1. Omit the complete legal header, including the copyright and license
2. After `@test` add the text `/nodynamiccopyright/`
#1 protects the file against any future changes in the length of the legal header, that might affect line numbers, and #2 is for use by automated scripts that may check for the presence of the legal header.
-------------
Changes requested by jjg (Reviewer).
PR: https://git.openjdk.java.net/jdk/pull/1626
More information about the compiler-dev
mailing list