summaryrefslogtreecommitdiff
path: root/gcc/c-common.c
diff options
context:
space:
mode:
authorDirk Mueller <dmueller@suse.de>2007-03-10 18:49:28 +0000
committerDirk Mueller <mueller@gcc.gnu.org>2007-03-10 18:49:28 +0000
commit89132ebc4c9e2bd960520dbbd8469d956794a7dd (patch)
tree8e1b6ac3759ac38c46f3b1f58ed8355eb1c0a871 /gcc/c-common.c
parent4cdffe3d10fe694b87a4bf6c7dd9cad501df9129 (diff)
downloadgcc-89132ebc4c9e2bd960520dbbd8469d956794a7dd.tar.gz
c-common.c (warn_logical_operator): Fix condition.
2007-03-10 Dirk Mueller <dmueller@suse.de> * c-common.c (warn_logical_operator): Fix condition. From-SVN: r122800
Diffstat (limited to 'gcc/c-common.c')
-rw-r--r--gcc/c-common.c32
1 files changed, 15 insertions, 17 deletions
diff --git a/gcc/c-common.c b/gcc/c-common.c
index 6216d5e123a..6543bd0f1b7 100644
--- a/gcc/c-common.c
+++ b/gcc/c-common.c
@@ -994,24 +994,22 @@ warn_logical_operator (enum tree_code code, tree arg1, tree
case TRUTH_ORIF_EXPR:
case TRUTH_OR_EXPR:
case TRUTH_AND_EXPR:
- if (!TREE_NO_WARNING (arg1)
- && INTEGRAL_TYPE_P (TREE_TYPE (arg1))
- && !CONSTANT_CLASS_P (arg1)
- && TREE_CODE (arg2) == INTEGER_CST
- && !integer_zerop (arg2)
- && !integer_onep (arg2))
- {
- warning (OPT_Wlogical_op,
- "logical %<%s%> with non-zero constant "
- "will always evaluate as true",
- ((code == TRUTH_ANDIF_EXPR)
- || (code == TRUTH_AND_EXPR)) ? "&&" : "||");
- TREE_NO_WARNING (arg1) = true;
- }
-
- break;
+ if (!TREE_NO_WARNING (arg1)
+ && INTEGRAL_TYPE_P (TREE_TYPE (arg1))
+ && !CONSTANT_CLASS_P (arg1)
+ && TREE_CODE (arg2) == INTEGER_CST
+ && !integer_zerop (arg2))
+ {
+ warning (OPT_Wlogical_op,
+ "logical %<%s%> with non-zero constant "
+ "will always evaluate as true",
+ ((code == TRUTH_ANDIF_EXPR)
+ || (code == TRUTH_AND_EXPR)) ? "&&" : "||");
+ TREE_NO_WARNING (arg1) = true;
+ }
+ break;
default:
- break;
+ break;
}
}