diff options
-rw-r--r-- | tests/bugs153/pr153464/Foo.java | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/tests/bugs153/pr153464/Foo.java b/tests/bugs153/pr153464/Foo.java new file mode 100644 index 000000000..1167e9bb4 --- /dev/null +++ b/tests/bugs153/pr153464/Foo.java @@ -0,0 +1,30 @@ +import java.lang.annotation.*; + +aspect TestAspect { + // works - Derived.func() omitted +// declare warning : execution(@Annot * *(..)) && !within(@Annot *): "hi!"; + + // fails - Derived.func() not omitted + declare warning : execution(@Annot * *(..)) && within(!@Annot *) : "within includes negated annotation"; + pointcut hasMethod() : hasmethod(@Annot * *(..)); +} + + +class Base { + void func() { } +} + +//@Annot +class AnnotTest { + @Annot + class Derived extends Base { + @Annot void func() { } + } +// + // class NoAnnotClass { + // @Annot void func() { } + //} +} + +//@Retention(RetentionPolicy.RUNTIME) +@interface Annot { }; |