diff options
author | Ian Lance Taylor <iant@google.com> | 2007-04-24 20:44:45 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@gcc.gnu.org> | 2007-04-24 20:44:45 +0000 |
commit | 4df28528f69a4400fed72d69792fc043d1ebd826 (patch) | |
tree | 99bf754860728790f12fd6d1c13768b33b045464 /gcc/tree-cfg.c | |
parent | 7c4a92651592752bb73c2f672f3fa358b6839c1f (diff) | |
download | gcc-4df28528f69a4400fed72d69792fc043d1ebd826.zip gcc-4df28528f69a4400fed72d69792fc043d1ebd826.tar.gz gcc-4df28528f69a4400fed72d69792fc043d1ebd826.tar.bz2 |
re PR tree-optimization/31602 (Overflow warning causes GDB -Werror build failure)
./: PR tree-optimization/31602
* tree-ssa-loop-ch.c (copy_loop_headers): Set TREE_NO_WARNING for
conditionals in the copied loop header.
* tree-cfg.c (fold_cond_expr_cond): Don't issue undefined overflow
warnings if TREE_NO_WARNING is set.
* doc/invoke.texi (Warning Options): Clarify that
-Wstrict-overflow does not warn about loops.
testsuite/:
PR tree-optimization/31602
* gcc.dg/Wstrict-overflow-11.c: We no longer issue a warning.
From-SVN: r124120
Diffstat (limited to 'gcc/tree-cfg.c')
-rw-r--r-- | gcc/tree-cfg.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/tree-cfg.c b/gcc/tree-cfg.c index 191d310..a621d9d 100644 --- a/gcc/tree-cfg.c +++ b/gcc/tree-cfg.c @@ -416,7 +416,9 @@ fold_cond_expr_cond (void) cond = fold (COND_EXPR_COND (stmt)); zerop = integer_zerop (cond); onep = integer_onep (cond); - fold_undefer_overflow_warnings (zerop || onep, stmt, + fold_undefer_overflow_warnings (((zerop || onep) + && !TREE_NO_WARNING (stmt)), + stmt, WARN_STRICT_OVERFLOW_CONDITIONAL); if (zerop) COND_EXPR_COND (stmt) = boolean_false_node; |