redundant cast test LintCast.java failing
Jonathan Gibbons
jonathan.gibbons at oracle.com
Mon Sep 23 12:21:00 PDT 2013
On 09/23/2013 12:14 PM, Steve Sides wrote:
> Hi Werner,
> I also noticed a recent change removed an '@A' from the expected
> output of the test
> test/tools/javac/annotations/typeAnnotation/failures/LintCast.java
> and the test now fails.
>
> The test case in LintCast.java is
>
> void array() {
> int @A [] a = null;
> int[] a1 = (int[])a; //this line is the one in question
> int[] a2 = (int @A [])a;
> }
>
> This casts 'int @A[]'a to 'int[]'. The expected was changed to:
>
> LintCast.java:27:20: compiler.warn.redundant.cast: int[]
>
> which removed the @A. The warning text is more explicit than the
> diagnostic key and states,
>
> Xlint:cast Test.java
> Test.java:13: warning: [cast] redundant cast to int @A []
> int[] a1 = (int[])a;
> ^
> 1 warning
>
> Was the change to the out file expected? I makes more sense, but was
> it expected?
>
> -steve
Steve,
Thanks for the detail you provide here.
I raised this issue with Werner in my review of a recent changeset last
week.
Looking at the details you provide, it does seem that the change is
correct: after all, there is no annotation on the statement in question,
and so it seems like it was an error that it appears in the diagnostic.
-- jon
More information about the type-annotations-dev
mailing list