diff --git a/libdecnumber/ChangeLog b/libdecnumber/ChangeLog index bc86f268a269625dc57a7891d2042d70348db4eb..ab463f57eba60544060ab49d8e0471cb8931d5e3 100644 --- a/libdecnumber/ChangeLog +++ b/libdecnumber/ChangeLog @@ -1,3 +1,9 @@ +2018-02-19 Martin Liska <mliska@suse.cz> + + PR c/81272 + * decNumber.c (decCompareOp): Do not use bit and + for conjunction of predicates. + 2018-01-03 Jakub Jelinek <jakub@redhat.com> Update copyright years. diff --git a/libdecnumber/decNumber.c b/libdecnumber/decNumber.c index ebfb6c5dd96c61e9e9b8ace7d8b76ee69b227dda..e4194211fdcaf2df1239c53b18ec8f4481cc0520 100644 --- a/libdecnumber/decNumber.c +++ b/libdecnumber/decNumber.c @@ -6029,11 +6029,11 @@ decNumber * decCompareOp(decNumber *res, const decNumber *lhs, /* If total ordering then handle differing signs 'up front' */ if (op==COMPTOTAL) { /* total ordering */ - if (decNumberIsNegative(lhs) & !decNumberIsNegative(rhs)) { + if (decNumberIsNegative(lhs) && !decNumberIsNegative(rhs)) { result=-1; break; } - if (!decNumberIsNegative(lhs) & decNumberIsNegative(rhs)) { + if (!decNumberIsNegative(lhs) && decNumberIsNegative(rhs)) { result=+1; break; }