aboutsummaryrefslogtreecommitdiffstats
path: root/tests/bugs150/pr115235b.aj
blob: 5427debe8af66b46c568e4a77146c6181b9e2e6a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
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) {	
	}
}