diff options
author | jfranck <none@none> | 2013-11-11 17:26:09 +0100 |
---|---|---|
committer | jfranck <none@none> | 2013-11-11 17:26:09 +0100 |
commit | c7988919de73eb7a431be93055298b4613811e86 (patch) | |
tree | f3757268cbb5c0b3a9cb925abade928a6ca324ad /test | |
parent | 415ca8aa977a85e4637c41a74603f73885fb5e44 (diff) |
8027375: javac asserts on nested erroneous annotations
Summary: make sure JCAnnotation trees have type != null before annotation processing
Reviewed-by: jjg
Diffstat (limited to 'test')
-rw-r--r-- | test/tools/javac/annotations/testCrashNestedAnnos/TestCrashNestedAnnos.java | 14 | ||||
-rw-r--r-- | test/tools/javac/annotations/testCrashNestedAnnos/TestCrashNestedAnnos.out | 3 |
2 files changed, 17 insertions, 0 deletions
diff --git a/test/tools/javac/annotations/testCrashNestedAnnos/TestCrashNestedAnnos.java b/test/tools/javac/annotations/testCrashNestedAnnos/TestCrashNestedAnnos.java new file mode 100644 index 00000000..5c7a4a33 --- /dev/null +++ b/test/tools/javac/annotations/testCrashNestedAnnos/TestCrashNestedAnnos.java @@ -0,0 +1,14 @@ +/* @test /nodynamiccopyright/ + * @bug 8027375 + * @summary Test that javac doesn't assert/crash when there are what looks to + * be annotations nested inside erroneous annotations. + * @compile/fail/ref=TestCrashNestedAnnos.out -XDrawDiagnostics TestCrashNestedAnnos.java + */ +public class TestCrashNestedAnnos { + // A and B are not annotation types + @A(@A1()) int foo() {} + @B(@B1()) int bar() {} +} + +class B {} +class B1 {} diff --git a/test/tools/javac/annotations/testCrashNestedAnnos/TestCrashNestedAnnos.out b/test/tools/javac/annotations/testCrashNestedAnnos/TestCrashNestedAnnos.out new file mode 100644 index 00000000..af34ecfd --- /dev/null +++ b/test/tools/javac/annotations/testCrashNestedAnnos/TestCrashNestedAnnos.out @@ -0,0 +1,3 @@ +TestCrashNestedAnnos.java:9:6: compiler.err.cant.resolve.location: kindname.class, A, , , (compiler.misc.location: kindname.class, TestCrashNestedAnnos, null) +TestCrashNestedAnnos.java:10:6: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: B, java.lang.annotation.Annotation) +2 errors |