Merged the int/long unification branch, by very crude means (sorry Thomas!).

I banged on the code (beyond what's in that branch) to make fewer tests fail;
the only tests that fail now are:
  test_descr -- can't pickle ints?!
  test_pickletools -- ???
  test_socket -- See python.org/sf/1619659
  test_sqlite -- ???
I'll deal with those later.
This commit is contained in:
Guido van Rossum 2007-01-14 03:31:43 +00:00
parent 5b787e8bc2
commit ddefaf31b3
46 changed files with 798 additions and 404 deletions

View file

@ -1844,10 +1844,7 @@ accum(const char* tag, PyObject *sofar, PyObject *num, PyObject *factor,
* lose a little info.
*/
assert(PyInt_Check(factor) || PyLong_Check(factor));
if (PyInt_Check(factor))
dnum = (double)PyInt_AsLong(factor);
else
dnum = PyLong_AsDouble(factor);
dnum = PyLong_AsDouble(factor);
dnum *= fracpart;
fracpart = modf(dnum, &intpart);
@ -3800,7 +3797,7 @@ datetime_strptime(PyObject *cls, PyObject *args)
Py_DECREF(obj);
return NULL;
}
if (PyInt_Check(p))
if (PyInt_CheckExact(p))
ia[i] = PyInt_AsLong(p);
else
good_timetuple = 0;