aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJason Merrill <merrill@gnu.org>1994-05-13 20:30:24 +0000
committerJason Merrill <merrill@gnu.org>1994-05-13 20:30:24 +0000
commitfb48b1f0d36f8a1116ef259a1976507a71559e5b (patch)
treeb88a3f31b32616f76cc228829e6cff83004d7eb7 /gcc
parent6cdbaec41bb6b33c0f5bb30770a70b6a8af8af59 (diff)
downloadgcc-fb48b1f0d36f8a1116ef259a1976507a71559e5b.zip
gcc-fb48b1f0d36f8a1116ef259a1976507a71559e5b.tar.gz
gcc-fb48b1f0d36f8a1116ef259a1976507a71559e5b.tar.bz2
(truthvalue_conversion): If expr is a BIT_AND_EXPR
where one of the operands is integer_onep, just return expr. From-SVN: r7293
Diffstat (limited to 'gcc')
-rw-r--r--gcc/c-common.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/c-common.c b/gcc/c-common.c
index 7e5c6f1..425f92e 100644
--- a/gcc/c-common.c
+++ b/gcc/c-common.c
@@ -1862,6 +1862,10 @@ truthvalue_conversion (expr)
TREE_TYPE (TREE_OPERAND (expr, 0)),
TREE_OPERAND (expr, 1))), 1);
+ case BIT_AND_EXPR:
+ if (integer_onep (TREE_OPERAND (expr, 1)))
+ return expr;
+
case MODIFY_EXPR:
if (warn_parentheses && C_EXP_ORIGINAL_CODE (expr) == MODIFY_EXPR)
warning ("suggest parentheses around assignment used as truth value");