diff options
author | Richard Guenther <rguenther@suse.de> | 2006-10-09 16:10:38 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2006-10-09 16:10:38 +0000 |
commit | 5771bd91eccb16e766ed13f533bdb4695c705da7 (patch) | |
tree | b925af300345e743bbc19d811c98bee55425729c | |
parent | e64f5acfafe9a0e1842716d80e12dd0d2b075435 (diff) | |
download | gcc-5771bd91eccb16e766ed13f533bdb4695c705da7.zip gcc-5771bd91eccb16e766ed13f533bdb4695c705da7.tar.gz gcc-5771bd91eccb16e766ed13f533bdb4695c705da7.tar.bz2 |
re PR middle-end/29254 (verify_cgraph_node failed (inlined_to pointer is set but no predecessors found))
2006-10-09 Richard Guenther <rguenther@suse.de>
PR middle-end/29254
* cgraphunit.c (verify_cgraph_node): Bail out on earlier
errors.
* gcc.dg/pr29254.c: New testcase.
From-SVN: r117577
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/cgraphunit.c | 3 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/pr29254.c | 22 |
4 files changed, 36 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ac05e54..3ac5ae1 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 94a4044..6b3cab0 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 6d463b5..c477d67 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 0000000..6259089 --- /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" } */ +} |