aboutsummaryrefslogtreecommitdiffstats
path: root/tests/bugs154/pr169432/case3/A.java
diff options
context:
space:
mode:
Diffstat (limited to 'tests/bugs154/pr169432/case3/A.java')
-rw-r--r--tests/bugs154/pr169432/case3/A.java36
1 files changed, 36 insertions, 0 deletions
diff --git a/tests/bugs154/pr169432/case3/A.java b/tests/bugs154/pr169432/case3/A.java
new file mode 100644
index 000000000..e5700a38c
--- /dev/null
+++ b/tests/bugs154/pr169432/case3/A.java
@@ -0,0 +1,36 @@
+
+// Now C1 and C2 implement the interface
+
+import org.aspectj.lang.annotation.*;
+
+public class A {
+ public static void main(String []argv) {
+ C1 c1 = new C1();
+ System.out.println("C1.m() returns "+((NonMarkerInterface)c1).m());
+ C2 c2 = new C2();
+ System.out.println("C2.m() returns "+((NonMarkerInterface)c2).m());
+ }
+}
+
+@Aspect class X {
+ @DeclareParents(value="C*")
+ public NonMarkerInterface nmi;
+}
+
+interface NonMarkerInterface {
+ public int m();
+}
+
+class Y implements NonMarkerInterface {
+ public Y() {}
+ public int m() { return 43;}
+}
+
+class C1 {
+ public int m() { return 1;}
+
+}
+
+class C2 {
+ public int m() { return 2;}
+}