From 43f04a36cf4e809a8baa3a895268b527bfd6254c Mon Sep 17 00:00:00 2001 From: Tim Peters Date: Sat, 8 Jul 2000 02:26:47 +0000 Subject: The tail end of x_sub implicitly assumed that an unsigned short contains 16 bits. Not true on Cray J90. --- Objects/longobject.c | 1 + 1 file changed, 1 insertion(+) diff --git a/Objects/longobject.c b/Objects/longobject.c index df69a6d..a28dbaf 100644 --- a/Objects/longobject.c +++ b/Objects/longobject.c @@ -1048,6 +1048,7 @@ x_sub(PyLongObject *a, PyLongObject *b) borrow = a->ob_digit[i] - borrow; z->ob_digit[i] = borrow & MASK; borrow >>= SHIFT; + borrow &= 1; /* Keep only one sign bit */ } assert(borrow == 0); if (sign < 0) -- cgit v0.12