diff options
Diffstat (limited to 'tests/bugs/ThisJoinPointAndVerifier.java')
-rw-r--r-- | tests/bugs/ThisJoinPointAndVerifier.java | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/tests/bugs/ThisJoinPointAndVerifier.java b/tests/bugs/ThisJoinPointAndVerifier.java new file mode 100644 index 000000000..a3b609c40 --- /dev/null +++ b/tests/bugs/ThisJoinPointAndVerifier.java @@ -0,0 +1,28 @@ + + +/** Bugzilla Bug 34210 + thisJoinPoint.getArgs() causes IncompatibleClassChangeError */ +public class ThisJoinPointAndVerifier { + public void method() { + System.out.println("Executed method"); + } + public static void main(String args[]) { + ThisJoinPointAndVerifier td = new ThisJoinPointAndVerifier(); + td.method(); + } +} + +aspect Log1 { + pointcut logged_method() : + call(* ThisJoinPointAndVerifier.*(..)); + after() : logged_method() { + Object[] args = thisJoinPoint.getArgs(); + System.out.println ("Log1a: leaving " + thisJoinPoint.getSignature()); + } + // comment this advice for scenario 2 + after() : logged_method() { + //VM crash on scenario 1 + //Object[] args = thisJoinPoint.getArgs(); + System.out.println ("Log1b: leaving " + thisJoinPoint.getSignature()); + } +}
\ No newline at end of file |