diff --git a/Python/getargs.c b/Python/getargs.c
index 48860cc..584805e 100644
--- a/Python/getargs.c
+++ b/Python/getargs.c
@@ -768,7 +768,7 @@
 		else if (PyUnicode_Check(arg) &&
 			 PyUnicode_GET_SIZE(arg) == 1 &&
 			 PyUnicode_AS_UNICODE(arg)[0] < 256)
-			*p = PyUnicode_AS_UNICODE(arg)[0];
+			*p = (char)PyUnicode_AS_UNICODE(arg)[0];
 		else
 			return converterr("char < 256", arg, msgbuf, bufsize);
 		break;
@@ -823,7 +823,7 @@
 			}
 			else
 				return converterr("string", arg, msgbuf, bufsize);
-			if ((Py_ssize_t)strlen(*p) != PyString_Size(arg))
+			if ((Py_ssize_t)strlen(*p) != PyUnicode_GetSize(arg))
 				return converterr("string without null bytes",
 						  arg, msgbuf, bufsize);
 		}
@@ -899,7 +899,7 @@
 				format++;
 			}
 			else if (*p != NULL &&
-				 (Py_ssize_t)strlen(*p) != PyString_Size(arg))
+				 (Py_ssize_t)strlen(*p) != PyUnicode_GetSize(arg))
 				return converterr(
 					"string without null bytes or None",
 					arg, msgbuf, bufsize);
@@ -1596,7 +1596,7 @@
 					        "keywords must be strings");
 				return cleanreturn(0, freelist);
 			}
-			ks = PyString_AsString(key);
+			ks = PyUnicode_AsString(key);
 			for (i = 0; i < max; i++) {
 				if (!strcmp(ks, kwlist[i])) {
 					match = 1;
