aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authoraclement <aclement>2004-07-26 13:28:20 +0000
committeraclement <aclement>2004-07-26 13:28:20 +0000
commit75852d7b1915cddfd4ba3dea272324617abdaa60 (patch)
tree231cf9096df98e90fc7f671fc7c52cc7b1a84c6f /tests
parentad6d6f62831e62589cfe6dbb5ccac3b3fbb2acf0 (diff)
downloadaspectj-75852d7b1915cddfd4ba3dea272324617abdaa60.tar.gz
aspectj-75852d7b1915cddfd4ba3dea272324617abdaa60.zip
Fix for Bug 70619
compiler aborts with "conflicting dominates orders" with circular declare precedences
Diffstat (limited to 'tests')
-rw-r--r--tests/ajcTests.xml13
-rw-r--r--tests/bugs/bug70619/Conflict.java5
-rw-r--r--tests/bugs/bug70619/Order1.aj8
-rw-r--r--tests/bugs/bug70619/Order2.aj6
-rw-r--r--tests/bugs/bug70619/Precedence.java13
5 files changed, 45 insertions, 0 deletions
diff --git a/tests/ajcTests.xml b/tests/ajcTests.xml
index e540a046e..08d856f20 100644
--- a/tests/ajcTests.xml
+++ b/tests/ajcTests.xml
@@ -7756,5 +7756,18 @@
<message kind="error" line="2" text="if() pointcut designator cannot be used directly in a per clause"/>
</compile>
</ajc-test>
+
+ <ajc-test dir="bugs/bug70619"
+ pr="70619" title="compiler aborts with 'conflicting dominates orders' with circular declare precedences">
+ <compile files="Precedence.java">
+ <message kind="error" line="0" text="conflicting declare precedence"/>
+ </compile>
+ <compile files="Conflict.java,Order2.aj,Order1.aj">
+ <message kind="error" line="0" text="conflicting declare precedence"/>
+ </compile>
+ <compile files="Conflict.java,Order1.aj,Order2.aj">
+ <message kind="error" line="0" text="conflicting declare precedence"/>
+ </compile>
+ </ajc-test>
</suite>
diff --git a/tests/bugs/bug70619/Conflict.java b/tests/bugs/bug70619/Conflict.java
new file mode 100644
index 000000000..11364ced9
--- /dev/null
+++ b/tests/bugs/bug70619/Conflict.java
@@ -0,0 +1,5 @@
+
+class Conflict {
+ public static void main(String[] args) { }
+}
+
diff --git a/tests/bugs/bug70619/Order1.aj b/tests/bugs/bug70619/Order1.aj
new file mode 100644
index 000000000..01459565f
--- /dev/null
+++ b/tests/bugs/bug70619/Order1.aj
@@ -0,0 +1,8 @@
+aspect Conflict1 {
+
+
+
+ declare precedence: Conflict1, Conflict2;
+
+ before(): execution(* *(..)) { }
+} \ No newline at end of file
diff --git a/tests/bugs/bug70619/Order2.aj b/tests/bugs/bug70619/Order2.aj
new file mode 100644
index 000000000..9ee9c55cb
--- /dev/null
+++ b/tests/bugs/bug70619/Order2.aj
@@ -0,0 +1,6 @@
+aspect Conflict2 {
+ after(): execution(* *(..)) { }
+ declare precedence: Conflict2, Conflict1;
+
+
+} \ No newline at end of file
diff --git a/tests/bugs/bug70619/Precedence.java b/tests/bugs/bug70619/Precedence.java
new file mode 100644
index 000000000..306801867
--- /dev/null
+++ b/tests/bugs/bug70619/Precedence.java
@@ -0,0 +1,13 @@
+class Conflict { public static void main(String[] args) { } }
+
+aspect Conflict1 {
+ declare precedence: Conflict1,Conflict2;
+
+ before(): execution(* *(..)) { }
+}
+
+aspect Conflict2 {
+ declare precedence: Conflict2, Conflict1;
+
+ after(): execution(* *(..)) { }
+} \ No newline at end of file