Fix warnings on 64-bit platforms about casts from pointers to ints.
Two of these were real bugs.
diff --git a/Objects/obmalloc.c b/Objects/obmalloc.c
index 95c0e87..753b2cc 100644
--- a/Objects/obmalloc.c
+++ b/Objects/obmalloc.c
@@ -437,7 +437,7 @@
 	arenabase = bp;
 	nfreepools = ARENA_SIZE / POOL_SIZE;
 	assert(POOL_SIZE * nfreepools == ARENA_SIZE);
-	excess = (uint)bp & POOL_SIZE_MASK;
+	excess = (uint) ((Py_uintptr_t)bp & POOL_SIZE_MASK);
 	if (excess != 0) {
 		--nfreepools;
 		arenabase += POOL_SIZE - excess;
diff --git a/Objects/stringobject.c b/Objects/stringobject.c
index c090e9b..92adb49 100644
--- a/Objects/stringobject.c
+++ b/Objects/stringobject.c
@@ -3883,7 +3883,8 @@
 				PyErr_Format(PyExc_ValueError,
 				  "unsupported format character '%c' (0x%x) "
 				  "at index %i",
-				  c, c, fmt - 1 - PyString_AsString(format));
+				  c, c,
+				  (int)(fmt - 1 - PyString_AsString(format)));
 				goto error;
 			}
 			if (sign) {
diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c
index dab3a75..dde6b47 100644
--- a/Objects/unicodeobject.c
+++ b/Objects/unicodeobject.c
@@ -6465,7 +6465,8 @@
 			     "unsupported format character '%c' (0x%x) "
 			     "at index %i",
 			     (31<=c && c<=126) ? c : '?', 
-                             c, fmt -1 - PyUnicode_AS_UNICODE(uformat));
+                             c,
+			     (int)(fmt -1 - PyUnicode_AS_UNICODE(uformat)));
 		goto onError;
 	    }
 	    if (sign) {