summaryrefslogtreecommitdiff
path: root/gcc/cppexp.c
diff options
context:
space:
mode:
authorjason <jason@138bc75d-0d04-0410-961f-82ee72b054a4>2002-06-07 13:29:17 +0000
committerjason <jason@138bc75d-0d04-0410-961f-82ee72b054a4>2002-06-07 13:29:17 +0000
commita29114b3536caf57d274d29b20289a6df9d31239 (patch)
tree1957e42c81343f2907eda7a51b9014b815a0b0ec /gcc/cppexp.c
parent479f88cd0005efdbe433ade3237e2d3a94ff5611 (diff)
downloadgcc-a29114b3536caf57d274d29b20289a6df9d31239.tar.gz
* cppexp.c (num_equality_op): Use a temporary variable to work
around gcc 3.0.4 bug. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@54339 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cppexp.c')
-rw-r--r--gcc/cppexp.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/gcc/cppexp.c b/gcc/cppexp.c
index e5f464eaa00..4fc833c23e4 100644
--- a/gcc/cppexp.c
+++ b/gcc/cppexp.c
@@ -1128,9 +1128,11 @@ num_equality_op (pfile, lhs, rhs, op)
cpp_num lhs, rhs;
enum cpp_ttype op;
{
- lhs.low = num_eq (lhs, rhs);
+ /* Work around a 3.0.4 bug; see PR 6950. */
+ bool eq = num_eq (lhs, rhs);
if (op == CPP_NOT_EQ)
- lhs.low = !lhs.low;
+ eq = !eq;
+ lhs.low = eq;
lhs.high = 0;
lhs.overflow = false;
lhs.unsignedp = false;