summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/cgraphunit.c3
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/gcc.dg/pr29254.c22
4 files changed, 36 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index ac05e546418..3ac5ae12b8a 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2006-10-09 Richard Guenther <rguenther@suse.de>
+
+ PR middle-end/29254
+ * cgraphunit.c (verify_cgraph_node): Bail out on earlier
+ errors.
+
2006-10-09 Steve Ellcey <sje@cup.hp.com>
PR target/27880
diff --git a/gcc/cgraphunit.c b/gcc/cgraphunit.c
index 94a4044d2fe..6b3cab01df5 100644
--- a/gcc/cgraphunit.c
+++ b/gcc/cgraphunit.c
@@ -694,6 +694,9 @@ verify_cgraph_node (struct cgraph_node *node)
block_stmt_iterator bsi;
bool error_found = false;
+ if (errorcount || sorrycount)
+ return;
+
timevar_push (TV_CGRAPH_VERIFY);
for (e = node->callees; e; e = e->next_callee)
if (e->aux)
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 6d463b5f7ce..c477d679d08 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2006-10-09 Richard Guenther <rguenther@suse.de>
+
+ PR middle-end/29254
+ * gcc.dg/pr29254.c: New testcase.
+
2006-10-08 Erik Edelmann <edelmann@gcc.gnu.org>
Paul Thomas <pault@gcc.gnu.org>
diff --git a/gcc/testsuite/gcc.dg/pr29254.c b/gcc/testsuite/gcc.dg/pr29254.c
new file mode 100644
index 00000000000..6259089d4fb
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/pr29254.c
@@ -0,0 +1,22 @@
+/* { dg-do compile } */
+/* { dg-options "-O3 -Werror" } */
+/* { dg-warning "warnings being treated as errors" "" {target "*-*-*"} 0 } */
+
+list_compare (int * list1)
+{
+ if (list1)
+ value_compare ();
+}
+
+func1 (int * f){}
+
+value_compare (int * a)
+{
+ if (a)
+ list_compare (a);
+}
+
+func2 (const int * fb)
+{
+ func1 ((int *) fb); /* { dg-warning "discards qualifiers" } */
+}