blob: 9edc5d5ea9df1e7e410dd59493de1b4e17afa040 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
import org.aspectj.testing.Tester;
/** @testcase subtype pattern in dominates should pick out aspect subtypes */
public class DominatesTypePattern {
public static void main (String[] args) {
String s = new C().method();
Tester.check("pass".equals(s),
"\"pass\".equals(\"" + s + "\")");
}
}
class C {}
// works if A is specified explicitly
abstract aspect AA { declare precedence: AA, (AA+ && !AA); // error: should dominate A
public String C.method() { return "pass"; }
}
aspect A extends AA {
public String C.method() { return "fail"; }
}
|