diff options
Diffstat (limited to 'Python/modsupport.c')
-rw-r--r-- | Python/modsupport.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/Python/modsupport.c b/Python/modsupport.c index 7241936..f92fc34 100644 --- a/Python/modsupport.c +++ b/Python/modsupport.c @@ -313,6 +313,11 @@ do_mkvalue(const char **p_format, va_list *p_va) return PyInt_FromLong(n); } + case 'n': +#if SIZEOF_SIZE_T!=SIZEOF_LONG + return PyLong_FromSsize_t(va_arg(*p_va, Py_Ssize_t)); +#endif + /* Fall through from 'n' to 'l' if Py_ssize_t is long */ case 'l': return PyInt_FromLong(va_arg(*p_va, long)); @@ -371,7 +376,7 @@ do_mkvalue(const char **p_format, va_list *p_va) case 'c': { char p[1]; - p[0] = va_arg(*p_va, int); + p[0] = (char)va_arg(*p_va, int); return PyString_FromStringAndSize(p, 1); } |