C++ compiler cleanup: bunch-o-casts, plus use of unsigned loop index var in a couple places
diff --git a/Objects/complexobject.c b/Objects/complexobject.c
index 1b2ea9b..17aef8f 100644
--- a/Objects/complexobject.c
+++ b/Objects/complexobject.c
@@ -688,7 +688,7 @@
 	}
 #ifdef Py_USING_UNICODE
 	else if (PyUnicode_Check(v)) {
-		if (PyUnicode_GET_SIZE(v) >= sizeof(s_buffer)) {
+		if (PyUnicode_GET_SIZE(v) >= (Py_ssize_t)sizeof(s_buffer)) {
 			PyErr_SetString(PyExc_ValueError,
 				 "complex() literal too large to convert");
 			return NULL;