summaryrefslogtreecommitdiffstats
path: root/tests/bugs150/pr115235b.aj
diff options
context:
space:
mode:
authoraclement <aclement>2005-11-14 10:38:47 +0000
committeraclement <aclement>2005-11-14 10:38:47 +0000
commit4b8bed7cff98b2aca5586e604a138c3674453c90 (patch)
tree0016fd8d134513859d3cc8f911e07958f72c4fd1 /tests/bugs150/pr115235b.aj
parent563ab1bc7659edf2d42bed64f131b2a6df1ac56a (diff)
downloadaspectj-4b8bed7cff98b2aca5586e604a138c3674453c90.tar.gz
aspectj-4b8bed7cff98b2aca5586e604a138c3674453c90.zip
tests and fixes for 115235: stackoverflow on concretizing pointcuts (patch from Helen)
Diffstat (limited to 'tests/bugs150/pr115235b.aj')
-rw-r--r--tests/bugs150/pr115235b.aj28
1 files changed, 28 insertions, 0 deletions
diff --git a/tests/bugs150/pr115235b.aj b/tests/bugs150/pr115235b.aj
new file mode 100644
index 000000000..5427debe8
--- /dev/null
+++ b/tests/bugs150/pr115235b.aj
@@ -0,0 +1,28 @@
+abstract aspect GenericAbstractAspect<T> {
+ abstract protected pointcut pc();
+ before() : pc() {}
+}
+
+abstract aspect SubGenericAspect<T> extends GenericAbstractAspect<T> {
+ abstract protected pointcut pc1();
+ abstract protected pointcut pc3();
+
+ protected pointcut pc() : pc1();
+ protected pointcut pc2() : pc3();
+}
+
+// this should compile with no errors
+aspect Concrete2 extends SubGenericAspect<String> {
+ protected pointcut pc() : pc1();
+ protected pointcut pc1() :pc3();
+ protected pointcut pc3() : execution(* *(String));
+}
+
+class C {
+
+ public void method(String s) {
+ }
+
+ public void method2(int i) {
+ }
+}