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) {
}
}
|