_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.
This commit is contained in:
parent
7aa56c9a7f
commit
004a65c9b1
|
@ -264,11 +264,9 @@ int
|
||||||
_PyLong_Sign(PyObject *vv)
|
_PyLong_Sign(PyObject *vv)
|
||||||
{
|
{
|
||||||
PyLongObject *v = (PyLongObject *)vv;
|
PyLongObject *v = (PyLongObject *)vv;
|
||||||
const int ndigits = ABS(v->ob_size);
|
|
||||||
|
|
||||||
assert(v != NULL);
|
assert(v != NULL);
|
||||||
assert(PyLong_Check(v));
|
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);
|
return v->ob_size == 0 ? 0 : (v->ob_size < 0 ? -1 : 1);
|
||||||
}
|
}
|
||||||
|
@ -278,10 +276,11 @@ _PyLong_NumBits(PyObject *vv)
|
||||||
{
|
{
|
||||||
PyLongObject *v = (PyLongObject *)vv;
|
PyLongObject *v = (PyLongObject *)vv;
|
||||||
size_t result = 0;
|
size_t result = 0;
|
||||||
int ndigits = ABS(v->ob_size);
|
int ndigits;
|
||||||
|
|
||||||
assert(v != NULL);
|
assert(v != NULL);
|
||||||
assert(PyLong_Check(v));
|
assert(PyLong_Check(v));
|
||||||
|
ndigits = ABS(v->ob_size);
|
||||||
assert(ndigits == 0 || v->ob_digit[ndigits - 1] != 0);
|
assert(ndigits == 0 || v->ob_digit[ndigits - 1] != 0);
|
||||||
if (ndigits > 0) {
|
if (ndigits > 0) {
|
||||||
digit msd = v->ob_digit[ndigits - 1];
|
digit msd = v->ob_digit[ndigits - 1];
|
||||||
|
|
Loading…
Reference in New Issue