diff options
author | jhugunin <jhugunin> | 2003-05-01 03:25:43 +0000 |
---|---|---|
committer | jhugunin <jhugunin> | 2003-05-01 03:25:43 +0000 |
commit | ea84f573e50bd198f3412acffb7157e9d9b8b544 (patch) | |
tree | e9821ceb029efbd9d6f211c9ec243fa80ea9d205 /tests | |
parent | abe705ad6b4926e7c02cf49b3ba033c320cf2b60 (diff) | |
download | aspectj-ea84f573e50bd198f3412acffb7157e9d9b8b544.tar.gz aspectj-ea84f573e50bd198f3412acffb7157e9d9b8b544.zip |
expanded coverage and fix for bug involving around advice with either
assert or <name>.class in the body
the fix for now is just to not inline such advice, but in the future these
should be transformed to inlinable constructs
Diffstat (limited to 'tests')
-rw-r--r-- | tests/bugs/interSpecials/p1/C.java | 1 | ||||
-rw-r--r-- | tests/bugs/interSpecials/p2/A1.java | 6 | ||||
-rw-r--r-- | tests/bugs/interSpecials/p2/A2.java | 6 | ||||
-rw-r--r-- | tests/jimTests.xml | 12 |
4 files changed, 24 insertions, 1 deletions
diff --git a/tests/bugs/interSpecials/p1/C.java b/tests/bugs/interSpecials/p1/C.java index 472afd808..160bb847c 100644 --- a/tests/bugs/interSpecials/p1/C.java +++ b/tests/bugs/interSpecials/p1/C.java @@ -1,4 +1,5 @@ package p1; public class C { + public void bar() {} }
\ No newline at end of file diff --git a/tests/bugs/interSpecials/p2/A1.java b/tests/bugs/interSpecials/p2/A1.java index 4a84e592d..9b75428bb 100644 --- a/tests/bugs/interSpecials/p2/A1.java +++ b/tests/bugs/interSpecials/p2/A1.java @@ -5,6 +5,7 @@ import p1.C; public class A1 { public static void main(String[] args) { new C().foo(); + new C().bar(); } } @@ -12,4 +13,9 @@ aspect InterClass { void C.foo() { System.out.println("class: " + C.class); } + + void around(): execution(void C.bar()) { + System.out.println("class: " + C.class); + proceed(); + } }
\ No newline at end of file diff --git a/tests/bugs/interSpecials/p2/A2.java b/tests/bugs/interSpecials/p2/A2.java index a29f3d5b9..003e35486 100644 --- a/tests/bugs/interSpecials/p2/A2.java +++ b/tests/bugs/interSpecials/p2/A2.java @@ -4,6 +4,7 @@ import p1.C; public class A2 { public static void main(String[] args) { new C().foo(); + new C().bar(); } } @@ -11,4 +12,9 @@ aspect InterClass { void C.foo() { assert(C.class != null); } + + void around(): execution(void C.bar()) { + assert(C.class != null); + proceed(); + } } diff --git a/tests/jimTests.xml b/tests/jimTests.xml index 0ebd8cd50..a7b32080d 100644 --- a/tests/jimTests.xml +++ b/tests/jimTests.xml @@ -1,7 +1,17 @@ <!DOCTYPE suite SYSTEM "../tests/ajcTestSuite.dtd"> <suite> - + <ajc-test dir="bugs/interSpecials" title="IllegalAccessError while accessing introduced variable / 1.1rc1" + pr="36110"> + <compile files="p1/C.java,p2/A1.java"/> + <run class="p2.A1"/> + </ajc-test> + + <ajc-test dir="bugs/interSpecials" title="testing that assert works like .class" + pr="36110"> + <compile files="p1/C.java,p2/A2.java" options="-source14"/> + <run class="p2.A2" vm="1.4"/> + </ajc-test> <!-- |