diff options
author | Roger Sayle <roger@eyesopen.com> | 2005-05-16 19:40:35 +0000 |
---|---|---|
committer | Roger Sayle <sayle@gcc.gnu.org> | 2005-05-16 19:40:35 +0000 |
commit | cb3b1e70906bc80f8592153b7dfea00817e22351 (patch) | |
tree | a2ab762e353042f444c967de8ec0d8a382257d5b /gcc | |
parent | 4f751533e48a432d340bc782d4ac2c1480b0f32f (diff) | |
download | gcc-cb3b1e70906bc80f8592153b7dfea00817e22351.zip gcc-cb3b1e70906bc80f8592153b7dfea00817e22351.tar.gz gcc-cb3b1e70906bc80f8592153b7dfea00817e22351.tar.bz2 |
c-common.c (c_common_truthvalue_conversion): Use fold_build2 instead of build_binary_op when...
* c-common.c (c_common_truthvalue_conversion): Use fold_build2
instead of build_binary_op when performing code transformations
to avoid error messages about constructs not it the user's code.
From-SVN: r99791
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/c-common.c | 12 |
2 files changed, 12 insertions, 6 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 9353bdb..5605cc2 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2005-05-16 Roger Sayle <roger@eyesopen.com> + + * c-common.c (c_common_truthvalue_conversion): Use fold_build2 + instead of build_binary_op when performing code transformations + to avoid error messages about constructs not it the user's code. + 2005-05-16 Kazu Hirata <kazu@cs.umass.edu> * tree-ssa-pre.c: Fix a comment typo. diff --git a/gcc/c-common.c b/gcc/c-common.c index b2ba01e..ecbe402 100644 --- a/gcc/c-common.c +++ b/gcc/c-common.c @@ -2462,12 +2462,12 @@ c_common_truthvalue_conversion (tree expr) two objects. */ if (TREE_TYPE (TREE_OPERAND (expr, 0)) == TREE_TYPE (TREE_OPERAND (expr, 1))) - return build_binary_op (NE_EXPR, TREE_OPERAND (expr, 0), - TREE_OPERAND (expr, 1), 1); - return build_binary_op (NE_EXPR, TREE_OPERAND (expr, 0), - fold (build1 (NOP_EXPR, - TREE_TYPE (TREE_OPERAND (expr, 0)), - TREE_OPERAND (expr, 1))), 1); + return fold_build2 (NE_EXPR, truthvalue_type_node, + TREE_OPERAND (expr, 0), TREE_OPERAND (expr, 1)); + return fold_build2 (NE_EXPR, truthvalue_type_node, + TREE_OPERAND (expr, 0), + fold_convert (TREE_TYPE (TREE_OPERAND (expr, 0)), + TREE_OPERAND (expr, 1))); case BIT_AND_EXPR: if (integer_onep (TREE_OPERAND (expr, 1)) |