diff options
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 |