diff options
author | aclement <aclement> | 2005-02-11 09:18:37 +0000 |
---|---|---|
committer | aclement <aclement> | 2005-02-11 09:18:37 +0000 |
commit | a3a53137d5acff4fce60b49c976acb6d7904e888 (patch) | |
tree | cfae21af7234c9a2f0ab5c776873b57fe2634933 /tests/java5/annotations | |
parent | 698ad9633f9ba28a8e5ebfbd219a4c4028e4f997 (diff) | |
download | aspectj-a3a53137d5acff4fce60b49c976acb6d7904e888.tar.gz aspectj-a3a53137d5acff4fce60b49c976acb6d7904e888.zip |
Tests for 2 new annotation bugs: (1) Using the pattern '@Annotation *' in declare parents wasn't working (2) Using an annotation without importing it was causing the compiler to go bang.
Diffstat (limited to 'tests/java5/annotations')
4 files changed, 34 insertions, 0 deletions
diff --git a/tests/java5/annotations/binding/complexExample/A.java b/tests/java5/annotations/binding/complexExample/A.java index 92ffd35af..40a220538 100644 --- a/tests/java5/annotations/binding/complexExample/A.java +++ b/tests/java5/annotations/binding/complexExample/A.java @@ -7,6 +7,8 @@ public class A { public static void main(String []argv) { new A().a(); new B().b(); + if ((new A()) instanceof java.io.Serializable) + throw new RuntimeException("A should never be serializable"); } @Color("blue") diff --git a/tests/java5/annotations/binding/complexExample/C.java b/tests/java5/annotations/binding/complexExample/C.java new file mode 100644 index 000000000..8d8827ba9 --- /dev/null +++ b/tests/java5/annotations/binding/complexExample/C.java @@ -0,0 +1,13 @@ +package g.h.i; +import d.e.f.*; + +@Color("black") +public class C { + + public static void main(String []argv) { + if (!(new C() instanceof java.io.Serializable)) + throw new RuntimeException("C should be serializable, done via decp"); + } + + public void c() { System.err.println("g.h.i.C.c running");} +} diff --git a/tests/java5/annotations/binding/complexExample/X3.java b/tests/java5/annotations/binding/complexExample/X3.java new file mode 100644 index 000000000..ab72a98dc --- /dev/null +++ b/tests/java5/annotations/binding/complexExample/X3.java @@ -0,0 +1,9 @@ +import a.b.c.A; + +import d.e.f.*; + +public aspect X3 { + + declare parents: @Color * implements java.io.Serializable; + +} diff --git a/tests/java5/annotations/binding/complexExample/X4.java b/tests/java5/annotations/binding/complexExample/X4.java new file mode 100644 index 000000000..edfb63ef1 --- /dev/null +++ b/tests/java5/annotations/binding/complexExample/X4.java @@ -0,0 +1,10 @@ +import a.b.c.A; + +public aspect X4 { + + // Error as Color not imported + before(A a): execution(@Color * A+.*(..)) && this(a) { + System.err.println("Before call to "+thisJoinPoint); + } + +} |