aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/gcc.dg/pr18725.c9
-rw-r--r--gcc/tree-cfg.c3
4 files changed, 22 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index e124204..5433409 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2004-11-29 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR middle-end/18725
+ * tree-cfg.c (tree_node_can_be_shared): Error_mark_node can be
+ shared always.
+
2004-11-29 Diego Novillo <dnovillo@redhat.com>
PR tree-optimization/18712
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 4830621..a9faf59 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2004-11-29 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR middle-end/18725
+ * gcc.dg/pr18725.c: New test.
+
2004-11-29 Hans-Peter Nilsson <hp@bitrange.com>
PR target/18488
diff --git a/gcc/testsuite/gcc.dg/pr18725.c b/gcc/testsuite/gcc.dg/pr18725.c
new file mode 100644
index 0000000..0282d3b
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/pr18725.c
@@ -0,0 +1,9 @@
+/* { dg-do compile } */
+/* { dg-options "" } */
+
+void
+f (void)
+{
+ int x = 1;
+ asm ("" : "" (x), "" (x)); /* { dg-error "output operand constraint lacks" } */
+}
diff --git a/gcc/tree-cfg.c b/gcc/tree-cfg.c
index f206083..692e746 100644
--- a/gcc/tree-cfg.c
+++ b/gcc/tree-cfg.c
@@ -3426,7 +3426,8 @@ tree_node_can_be_shared (tree t)
gimple invariants if they overflowed. */
|| CONSTANT_CLASS_P (t)
|| is_gimple_min_invariant (t)
- || TREE_CODE (t) == SSA_NAME)
+ || TREE_CODE (t) == SSA_NAME
+ || t == error_node_mark)
return true;
if (TREE_CODE (t) == CASE_LABEL_EXPR)