File: bitarray/_bitarray.c
Function: bitarray_pop
Error: returning (PyObject*)NULL without setting an exception
1430 static PyObject *
1431 bitarray_pop(bitarrayobject *self, PyObject *args)
1432 {
1433     idx_t i = -1;
1434     long vi;
1435 
1436     if (!PyArg_ParseTuple(args, "|L:pop", &i))
when _PyArg_ParseTuple_SizeT() succeeds
taking False path
1437         return NULL;
1438 
1439     if (self->nbits == 0) {
when considering range: -0x8000000000000000 <= value <= -1
taking False path
1440         /* special case -- most common failure cause */
1441         PyErr_SetString(PyExc_IndexError, "pop from empty bitarray");
1442         return NULL;
1443     }
1444     if (i < 0)
when considering range: 0 <= value <= 0x7fffffffffffffff
taking False path
1445         i += self->nbits;
1446 
1447     if (i < 0 || i >= self->nbits) {
taking False path
when taking False path
1448         PyErr_SetString(PyExc_IndexError, "pop index out of range");
1449         return NULL;
1450     }
1451     vi = GETBIT(self, i);
when treating unknown char * from bitarray/_bitarray.c:1451 as non-NULL
when considering range: -0x80000000 <= value <= -1
taking True path
when considering range: -0x80000000 <= value <= -1
1452     if (delete_n(self, i, 1) < 0)
when considering range: -0x80000000 <= value <= -1
taking True path
1453         return NULL;
1454 
1455     return PyBool_FromLong(vi);
1456 }
returning (PyObject*)NULL without setting an exception
found 10 similar trace(s) to this