diff -Naur Python-2.4.3-orig/Objects/intobject.c Python-2.4.3/Objects/intobject.c --- Python-2.4.3-orig/Objects/intobject.c 2006-10-11 19:54:47.000000000 -0600 +++ Python-2.4.3/Objects/intobject.c 2006-10-11 19:57:50.000000000 -0600 @@ -479,7 +479,7 @@ return DIVMOD_ERROR; } /* (-sys.maxint-1)/-1 is the only overflow case. */ - if (y == -1 && x < 0 && x == -x) + if (y == -1 && x < 0 && ((unsigned)x) == -(unsigned)x) return DIVMOD_OVERFLOW; xdivy = x / y; xmody = x - xdivy * y;