review request for 8010225 test in typeAnnotations/failures do not test TYPE_USE

Steve Sides steve.sides at oracle.com
Wed Sep 4 12:40:37 PDT 2013


.after screwing up the webrev a little (it didn't scp like I thought it 
would), I created a new one:
http://cr.openjdk.java.net/~ssides/8010225.2/
with this changes:

 >test/tools/javac/annotations/typeAnnotations/failures/AnnotatedImport.java
 >test/tools/javac/annotations/typeAnnotations/failures/AnnotatedPackage1.java
 >test/tools/javac/annotations/typeAnnotations/failures/AnnotatedPackage2.java
I made the sorta unnecessary changes, since these are supposed to test 
test-annotations. Like you said, they're not wrong. :)

 >test/tools/javac/annotations/typeAnnotations/failures/AnnotationVersion.java
added positive test case of @compile AnnotationVersion.java

 >test/tools/javac/annotations/typeAnnotations/failures/IncompleteVararg.java
I agree, these are kind of bad syntax with or without any anntations, so 
I deleted the test.

 >test/tools/javac/annotations/typeAnnotations/failures/OldArray.java
added out file and ref= to test file.

 >test/tools/javac/annotations/typeAnnotations/failures/Scopes.java
I didn't mean to do more. Since I had them all loaded into an editor, as 
I clicked through them, I made it a 4 space indent.
It's a superfluous but not incorrect change.

 >test/tools/javac/annotations/typeAnnotations/failures/StaticFields.java
corrected usage (compile with no annotations) and added other static 
contexts and updated .out file.

 >test/tools/javac/annotations/typeAnnotations/failures/StaticMethods.java
deleted in lieue of above changes.

-steve

On 8/30/2013 3:46 PM, Jonathan Gibbons wrote:
> On 08/08/2013 05:48 PM, Steve Sides wrote:
>> Some changes for JDK-8010225 : test in typeAnnotations/failures do 
>> not test TYPE_USE
>> Bug: http://bugs.sun.com/view_bug.do?bug_id=8010225
>> webrev: http://cr.openjdk.java.net/~ssides/8010225/
>>
>> This fix is for tl/langtools but since it's all type-annotations test 
>> I've posted it here.
>>
>> -steve
>
>
> Here's the list of files:
>
> test/tools/javac/annotations/typeAnnotations/failures/AnnotatedImport.java 
>
> OK.  Edit is sorta unnecessary, but not wrong.
>
> test/tools/javac/annotations/typeAnnotations/failures/AnnotatedPackage1.java 
>
> OK.  Edit is sorta unnecessary, but not wrong.
>
> test/tools/javac/annotations/typeAnnotations/failures/AnnotatedPackage2.java 
>
> OK.  Edit is sorta unnecessary, but not wrong.
>
> test/tools/javac/annotations/typeAnnotations/failures/AnnotationVersion.java 
>
> test/tools/javac/annotations/typeAnnotations/failures/AnnotationVersion.out 
>
> test/tools/javac/annotations/typeAnnotations/failures/AnnotationVersion7.out 
>
> Test is only negative for 6, 7. Would be better to add positive test 
> without -source as well
>
> test/tools/javac/annotations/typeAnnotations/failures/BadCast.java
> test/tools/javac/annotations/typeAnnotations/failures/BadCast.out
> OK
>
> test/tools/javac/annotations/typeAnnotations/failures/CantAnnotateStaticClass.java 
>
> test/tools/javac/annotations/typeAnnotations/failures/CantAnnotateStaticClass.out 
>
> OK
>
> test/tools/javac/annotations/typeAnnotations/failures/IncompleteArray.java 
>
> test/tools/javac/annotations/typeAnnotations/failures/IncompleteArray.out
> OK
>
> test/tools/javac/annotations/typeAnnotations/failures/IncompleteVararg.java 
>
> test/tools/javac/annotations/typeAnnotations/failures/IncompleteVararg.out 
>
> *** There's no varargs in this test, so this test is kinda weird
> As it stands, it's sort of a random syntax error test.
>
> test/tools/javac/annotations/typeAnnotations/failures/IndexArray.java
> test/tools/javac/annotations/typeAnnotations/failures/IndexArray.out
> OK
>
> test/tools/javac/annotations/typeAnnotations/failures/OldArray.java
> *** The test passes without changing the golden file. This is unexpected.
> The answer is because there is no /ref=...OldArray.out on line 29.
> This should be fixed, and then, you'll need to create a golden file!
> Also, remove the legal header and substitute /nodynamiccopyright/.
>
> test/tools/javac/annotations/typeAnnotations/failures/Scopes.java
> *** You've just removed a space from the line, nothing more.
> Did you mean to do more?
>
> test/tools/javac/annotations/typeAnnotations/failures/StaticFields.java
> test/tools/javac/annotations/typeAnnotations/failures/StaticFields.out
> *** Sorta OK, but not really.  The test runs the risk of  false positive
> because f is not itself declared static.  Thus, quite apart from the
> annotation, you are trying to do static access to a non-static field,
> which is guaranteed to fail.
>
> test/tools/javac/annotations/typeAnnotations/failures/StaticMethods.java
> test/tools/javac/annotations/typeAnnotations/failures/StaticMethods.out
> This test is kinda pointless because the code fails even without the 
> annotation.
> i.e. remove the annotation and the test still fails to compile.



More information about the type-annotations-dev mailing list