aboutsummaryrefslogtreecommitdiffstats
path: root/tests/bugs163
diff options
context:
space:
mode:
Diffstat (limited to 'tests/bugs163')
-rw-r--r--tests/bugs163/pr252722/A.java24
-rw-r--r--tests/bugs163/pr252722/ACode.java21
-rw-r--r--tests/bugs163/pr252722/B.java28
-rw-r--r--tests/bugs163/pr252722/BCode.java24
4 files changed, 97 insertions, 0 deletions
diff --git a/tests/bugs163/pr252722/A.java b/tests/bugs163/pr252722/A.java
new file mode 100644
index 000000000..35ae945d3
--- /dev/null
+++ b/tests/bugs163/pr252722/A.java
@@ -0,0 +1,24 @@
+import org.aspectj.lang.annotation.*;
+import org.aspectj.lang.*;
+
+
+abstract aspect Super {
+ void foo(String s) {}
+}
+
+@Aspect
+public class A extends Super {
+
+ @Around("execution(* m(..))")
+ public void invoke(ProceedingJoinPoint pjp) {
+ super.foo("hello");
+ }
+
+
+ public static void main(String []argv) {
+ new A().m();
+ }
+
+ public void m() {}
+}
+
diff --git a/tests/bugs163/pr252722/ACode.java b/tests/bugs163/pr252722/ACode.java
new file mode 100644
index 000000000..672a5b365
--- /dev/null
+++ b/tests/bugs163/pr252722/ACode.java
@@ -0,0 +1,21 @@
+import org.aspectj.lang.annotation.*;
+import org.aspectj.lang.*;
+
+
+abstract aspect Super {
+ void foo(String s,int i) {}
+}
+
+public aspect ACode extends Super {
+
+ void around(): execution(* m(..)) {
+ super.foo("hello",7);
+ }
+
+ public static void main(String []argv) {
+ ACode.m();
+ }
+
+ public static void m() {}
+}
+
diff --git a/tests/bugs163/pr252722/B.java b/tests/bugs163/pr252722/B.java
new file mode 100644
index 000000000..23b516fb5
--- /dev/null
+++ b/tests/bugs163/pr252722/B.java
@@ -0,0 +1,28 @@
+import org.aspectj.lang.annotation.*;
+import org.aspectj.lang.*;
+
+// Now the joinpoint is in a different type, does the super call from advice still work OK?
+
+
+abstract aspect Super {
+ void foo(String s) {}
+}
+
+@Aspect
+public class B extends Super {
+
+ @Around("execution(* m(..))")
+ public void invoke(ProceedingJoinPoint pjp) {
+ super.foo("hello");
+ }
+
+ public static void main(String []argv) {
+ new C().m();
+ }
+}
+
+class C {
+
+ public void m() {}
+}
+
diff --git a/tests/bugs163/pr252722/BCode.java b/tests/bugs163/pr252722/BCode.java
new file mode 100644
index 000000000..1773ac0d9
--- /dev/null
+++ b/tests/bugs163/pr252722/BCode.java
@@ -0,0 +1,24 @@
+import org.aspectj.lang.annotation.*;
+import org.aspectj.lang.*;
+
+
+abstract aspect Super {
+ void foo(String s) {}
+}
+
+public aspect BCode extends Super {
+
+ void around(): execution(* m(..)) {
+ super.foo("hello");
+ }
+
+ public static void main(String []argv) {
+ new C().m();
+ }
+}
+
+class C {
+
+ public void m() {}
+}
+