aboutsummaryrefslogtreecommitdiffstats
path: root/tests/bugs152
diff options
context:
space:
mode:
authoracolyer <acolyer>2006-05-02 17:02:25 +0000
committeracolyer <acolyer>2006-05-02 17:02:25 +0000
commit18c308fb3c26227f7cae5ad728d3565079edd4b5 (patch)
tree9028307185ac9c8632cd402df99583b641fcab81 /tests/bugs152
parentc5c18aaea1700d75e8f92a530133ae371924f33c (diff)
downloadaspectj-18c308fb3c26227f7cae5ad728d3565079edd4b5.tar.gz
aspectj-18c308fb3c26227f7cae5ad728d3565079edd4b5.zip
tests for pr139749 - calling super in @AspectJ advice body causes VerifyError
Diffstat (limited to 'tests/bugs152')
-rw-r--r--tests/bugs152/pr139749/AroundAdvicePassingPjpAsArgToSuper.java36
1 files changed, 36 insertions, 0 deletions
diff --git a/tests/bugs152/pr139749/AroundAdvicePassingPjpAsArgToSuper.java b/tests/bugs152/pr139749/AroundAdvicePassingPjpAsArgToSuper.java
new file mode 100644
index 000000000..0a0ada0a0
--- /dev/null
+++ b/tests/bugs152/pr139749/AroundAdvicePassingPjpAsArgToSuper.java
@@ -0,0 +1,36 @@
+
+package a.b.c;
+
+import org.aspectj.lang.ProceedingJoinPoint;
+import org.aspectj.lang.annotation.Around;
+import org.aspectj.lang.annotation.Aspect;
+
+class ASuperClass {
+
+ protected void takesApjp(ProceedingJoinPoint pjp) {
+ System.out.println(pjp);
+ }
+
+}
+
+@Aspect
+public class AroundAdvicePassingPjpAsArgToSuper extends ASuperClass {
+
+ @Around("execution(* foo())")
+ public Object passesPjp(ProceedingJoinPoint pjp) throws Throwable {
+ takesApjp(pjp);
+ Object ret = pjp.proceed();
+ return ret;
+ }
+
+ public static void main(String[] args) {
+ new C().foo();
+ }
+}
+
+class C {
+
+ public Object foo() {
+ return new Object();
+ }
+} \ No newline at end of file