diff options
author | acolyer <acolyer> | 2005-11-23 16:20:19 +0000 |
---|---|---|
committer | acolyer <acolyer> | 2005-11-23 16:20:19 +0000 |
commit | a4caeb95261431c81f7beb0cddbff3b0865e614d (patch) | |
tree | 65d21c09bf7879d0d0f0afa94d6ca2eaaa56c36f /tests/bugs150 | |
parent | a817aacd5a461ffb94416bfb3a44acc3bb05bc83 (diff) | |
download | aspectj-a4caeb95261431c81f7beb0cddbff3b0865e614d.tar.gz aspectj-a4caeb95261431c81f7beb0cddbff3b0865e614d.zip |
tests and fix for pr114054 (erroneous handling of negation in per-object perclauses)
Diffstat (limited to 'tests/bugs150')
-rw-r--r-- | tests/bugs150/Pr114054.aj | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/tests/bugs150/Pr114054.aj b/tests/bugs150/Pr114054.aj new file mode 100644 index 000000000..3f776df43 --- /dev/null +++ b/tests/bugs150/Pr114054.aj @@ -0,0 +1,30 @@ +public class Pr114054 { + public static boolean passed; + public static void main(String[] args) { + SampleSeries me = new SampleSeries(); + me.okSeries(); + me.open(); + me.close(); + if (!passed) { + throw new Error("failed to advise..."); + } + } + static class SampleSeries { + void open() {} + void close() {} + void okSeries() {open(); close();} + } + static aspect AAAA + // comment this out, and !call(...) works + pertarget(tracked()) + { + protected final pointcut tracked() : + call(void SampleSeries.*()) + // comment this out, and pertarget works... + && !call(void SampleSeries.*Series()) + ; + before() : tracked() { + Pr114054.passed = true; + } + } +}
\ No newline at end of file |