use Py_CHARMASK; and don't check for neg. float to the float power here
diff --git a/Objects/longobject.c b/Objects/longobject.c
index b9935b0..9c2dcf8 100644
--- a/Objects/longobject.c
+++ b/Objects/longobject.c
@@ -377,7 +377,7 @@
 		err_setstr(ValueError, "invalid base for long literal");
 		return NULL;
 	}
-	while (*str != '\0' && isspace(*str))
+	while (*str != '\0' && isspace(Py_CHARMASK(*str)))
 		str++;
 	if (*str == '+')
 		++str;
@@ -385,7 +385,7 @@
 		++str;
 		sign = -1;
 	}
-	while (*str != '\0' && isspace(*str))
+	while (*str != '\0' && isspace(Py_CHARMASK(*str)))
 		str++;
 	if (base == 0) {
 		if (str[0] != '0')