Commit 004a65c9 authored by Guido van Rossum's avatar Guido van Rossum

_PyLong_Sign(): remove an assert that needed a variable ndigits that

wasn't used outside the assert (and hence caused a compiler warning
about an unused variable in NDEBUG mode).  The assert wasn't very
useful any more.

_PyLong_NumBits(): moved the calculation of ndigits after asserting
that v != NULL.
parent 7aa56c9a
......@@ -264,11 +264,9 @@ int
_PyLong_Sign(PyObject *vv)
{
PyLongObject *v = (PyLongObject *)vv;
const int ndigits = ABS(v->ob_size);
assert(v != NULL);
assert(PyLong_Check(v));
assert(ndigits == 0 || v->ob_digit[ndigits - 1] != 0);
return v->ob_size == 0 ? 0 : (v->ob_size < 0 ? -1 : 1);
}
......@@ -278,10 +276,11 @@ _PyLong_NumBits(PyObject *vv)
{
PyLongObject *v = (PyLongObject *)vv;
size_t result = 0;
int ndigits = ABS(v->ob_size);
int ndigits;
assert(v != NULL);
assert(PyLong_Check(v));
ndigits = ABS(v->ob_size);
assert(ndigits == 0 || v->ob_digit[ndigits - 1] != 0);
if (ndigits > 0) {
digit msd = v->ob_digit[ndigits - 1];
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment