Address warnings issued by the MSVC++ compiler
diff --git a/Modules/pcremodule.c b/Modules/pcremodule.c
index 07a36fa..40efd03 100644
--- a/Modules/pcremodule.c
+++ b/Modules/pcremodule.c
@@ -193,7 +193,6 @@
 	PyObject *dictionary;
 	char *pattern;
 	const char *error;
-	int num_zeros, i, j;
 	
 	int options, erroroffset;
 	if (!PyArg_ParseTuple(args, "siO!", &pattern, &options,
diff --git a/Modules/pypcre.c b/Modules/pypcre.c
index bec9197..ab8c477 100644
--- a/Modules/pypcre.c
+++ b/Modules/pypcre.c
@@ -3044,8 +3044,8 @@
 if (md->offset_top) free(md->offset_top); 
 if (md->r1)         free(md->r1); 
 if (md->r2)         free(md->r2); 
-if (md->eptr)       free(md->eptr); 
-if (md->ecode)      free(md->ecode);
+if (md->eptr)       free((char *)md->eptr); 
+if (md->ecode)      free((char *)md->ecode);
 return 0;
 }
 
diff --git a/Python/import.c b/Python/import.c
index 6ab1371..c9cc9de 100644
--- a/Python/import.c
+++ b/Python/import.c
@@ -858,7 +858,7 @@
 	}
 	else if (PyString_Check(path)) {
 		/* Submodule of frozen package */
-		if (PyString_Size(path) + 1 + strlen(name) >= buflen) {
+		if (PyString_Size(path) + 1 + strlen(name) >= (unsigned int)buflen) {
 			PyErr_SetString(PyExc_ImportError,
 					"full frozen module name too long");
 			return NULL;
diff --git a/Python/mystrtoul.c b/Python/mystrtoul.c
index 46c52b8..f8135e1 100644
--- a/Python/mystrtoul.c
+++ b/Python/mystrtoul.c
@@ -129,7 +129,7 @@
 	result = result * base + c;
 #ifndef MPW
 	if(base == 10) {
-		if(((long)(result - c) / base != temp))	/* overflow */
+		if(((long)(result - c) / base != (long)temp))	/* overflow */
 			ovf = 1;
 	}
 	else {