diff -r 741ef17e9b86 Modules/_codecsmodule.c --- a/Modules/_codecsmodule.c Sun Oct 18 09:54:42 2015 +0300 +++ b/Modules/_codecsmodule.c Sun Oct 18 18:45:27 2015 +0300 @@ -290,7 +290,7 @@ static PyObject * _codecs.utf_7_decode data: Py_buffer errors: str(accept={str, NoneType}) = NULL - final: int(c_default="0") = False + final: bool = False / [clinic start generated code]*/ @@ -310,7 +310,7 @@ static PyObject * _codecs.utf_8_decode data: Py_buffer errors: str(accept={str, NoneType}) = NULL - final: int(c_default="0") = False + final: bool = False / [clinic start generated code]*/ @@ -330,7 +330,7 @@ static PyObject * _codecs.utf_16_decode data: Py_buffer errors: str(accept={str, NoneType}) = NULL - final: int(c_default="0") = False + final: bool = False / [clinic start generated code]*/ @@ -352,7 +352,7 @@ static PyObject * _codecs.utf_16_le_decode data: Py_buffer errors: str(accept={str, NoneType}) = NULL - final: int(c_default="0") = False + final: bool = False / [clinic start generated code]*/ @@ -374,7 +374,7 @@ static PyObject * _codecs.utf_16_be_decode data: Py_buffer errors: str(accept={str, NoneType}) = NULL - final: int(c_default="0") = False + final: bool = False / [clinic start generated code]*/ @@ -404,7 +404,7 @@ static PyObject * data: Py_buffer errors: str(accept={str, NoneType}) = NULL byteorder: int = 0 - final: int(c_default="0") = False + final: bool = False / [clinic start generated code]*/ @@ -428,7 +428,7 @@ static PyObject * _codecs.utf_32_decode data: Py_buffer errors: str(accept={str, NoneType}) = NULL - final: int(c_default="0") = False + final: bool = False / [clinic start generated code]*/ @@ -450,7 +450,7 @@ static PyObject * _codecs.utf_32_le_decode data: Py_buffer errors: str(accept={str, NoneType}) = NULL - final: int(c_default="0") = False + final: bool = False / [clinic start generated code]*/ @@ -472,7 +472,7 @@ static PyObject * _codecs.utf_32_be_decode data: Py_buffer errors: str(accept={str, NoneType}) = NULL - final: int(c_default="0") = False + final: bool = False / [clinic start generated code]*/ @@ -502,7 +502,7 @@ static PyObject * data: Py_buffer errors: str(accept={str, NoneType}) = NULL byteorder: int = 0 - final: int(c_default="0") = False + final: bool = False / [clinic start generated code]*/ @@ -614,7 +614,7 @@ static PyObject * _codecs.mbcs_decode data: Py_buffer errors: str(accept={str, NoneType}) = NULL - final: int(c_default="0") = False + final: bool = False / [clinic start generated code]*/ @@ -634,7 +634,7 @@ static PyObject * codepage: int data: Py_buffer errors: str(accept={str, NoneType}) = NULL - final: int(c_default="0") = False + final: bool = False / [clinic start generated code]*/ diff -r 741ef17e9b86 Modules/_io/_iomodule.c --- a/Modules/_io/_iomodule.c Sun Oct 18 09:54:42 2015 +0300 +++ b/Modules/_io/_iomodule.c Sun Oct 18 18:45:27 2015 +0300 @@ -103,7 +103,7 @@ module _io encoding: str(accept={str, NoneType}) = NULL errors: str(accept={str, NoneType}) = NULL newline: str(accept={str, NoneType}) = NULL - closefd: int(c_default="1") = True + closefd: bool = True opener: object = None Open file and return a stream. Raise IOError upon failure. @@ -238,8 +238,7 @@ static PyObject * int text = 0, binary = 0, universal = 0; char rawmode[6], *m; - int line_buffering; - long isatty; + int line_buffering, isatty; PyObject *raw, *modeobj = NULL, *buffer, *wrapper, *result = NULL; @@ -365,9 +364,9 @@ static PyObject * PyObject *res = _PyObject_CallMethodId(raw, &PyId_isatty, NULL); if (res == NULL) goto error; - isatty = PyLong_AsLong(res); + isatty = PyObject_IsTrue(res); Py_DECREF(res); - if (isatty == -1 && PyErr_Occurred()) + if (isatty < 0) goto error; } diff -r 741ef17e9b86 Modules/_io/fileio.c --- a/Modules/_io/fileio.c Sun Oct 18 09:54:42 2015 +0300 +++ b/Modules/_io/fileio.c Sun Oct 18 18:45:27 2015 +0300 @@ -210,7 +210,7 @@ extern int _Py_open_cloexec_works; _io.FileIO.__init__ file as nameobj: object mode: str = "r" - closefd: int(c_default="1") = True + closefd: bool = True opener: object = None Open a file. diff -r 741ef17e9b86 Modules/_io/textio.c --- a/Modules/_io/textio.c Sun Oct 18 09:54:42 2015 +0300 +++ b/Modules/_io/textio.c Sun Oct 18 18:45:27 2015 +0300 @@ -236,7 +236,7 @@ typedef struct { /*[clinic input] _io.IncrementalNewlineDecoder.__init__ decoder: object - translate: int + translate: bool errors: object(c_default="NULL") = "strict" Codec used when reading a file in universal newlines mode. @@ -511,7 +511,7 @@ PyObject * /*[clinic input] _io.IncrementalNewlineDecoder.decode input: object - final: int(c_default="0") = False + final: bool = False [clinic start generated code]*/ static PyObject * @@ -792,8 +792,8 @@ static encodefuncentry encodefuncs[] = { encoding: str(accept={str, NoneType}) = NULL errors: str(accept={str, NoneType}) = NULL newline: str(accept={str, NoneType}) = NULL - line_buffering: int(c_default="0") = False - write_through: int(c_default="0") = False + line_buffering: bool = False + write_through: bool = False Character and line based layer over a BufferedIOBase object, buffer. diff -r 741ef17e9b86 Modules/_json.c --- a/Modules/_json.c Sun Oct 18 09:54:42 2015 +0300 +++ b/Modules/_json.c Sun Oct 18 18:45:27 2015 +0300 @@ -594,7 +594,7 @@ py_scanstring(PyObject* self UNUSED, PyO Py_ssize_t end; Py_ssize_t next_end = -1; int strict = 1; - if (!PyArg_ParseTuple(args, "On|i:scanstring", &pystr, &end, &strict)) { + if (!PyArg_ParseTuple(args, "On|p:scanstring", &pystr, &end, &strict)) { return NULL; } if (PyUnicode_Check(pystr)) { diff -r 741ef17e9b86 Modules/_lsprof.c --- a/Modules/_lsprof.c Sun Oct 18 09:54:42 2015 +0300 +++ b/Modules/_lsprof.c Sun Oct 18 18:45:27 2015 +0300 @@ -689,7 +689,7 @@ profiler_enable(ProfilerObject *self, Py int subcalls = -1; int builtins = -1; static char *kwlist[] = {"subcalls", "builtins", 0}; - if (!PyArg_ParseTupleAndKeywords(args, kwds, "|ii:enable", + if (!PyArg_ParseTupleAndKeywords(args, kwds, "|pp:enable", kwlist, &subcalls, &builtins)) return NULL; if (setSubcalls(self, subcalls) < 0 || setBuiltins(self, builtins) < 0) @@ -770,7 +770,7 @@ profiler_init(ProfilerObject *pObj, PyOb static char *kwlist[] = {"timer", "timeunit", "subcalls", "builtins", 0}; - if (!PyArg_ParseTupleAndKeywords(args, kw, "|Odii:Profiler", kwlist, + if (!PyArg_ParseTupleAndKeywords(args, kw, "|Odpp:Profiler", kwlist, &timer, &timeunit, &subcalls, &builtins)) return -1; diff -r 741ef17e9b86 Modules/_multiprocessing/semaphore.c --- a/Modules/_multiprocessing/semaphore.c Sun Oct 18 09:54:42 2015 +0300 +++ b/Modules/_multiprocessing/semaphore.c Sun Oct 18 18:45:27 2015 +0300 @@ -69,7 +69,7 @@ semlock_acquire(SemLockObject *self, PyO static char *kwlist[] = {"block", "timeout", NULL}; - if (!PyArg_ParseTupleAndKeywords(args, kwds, "|iO", kwlist, + if (!PyArg_ParseTupleAndKeywords(args, kwds, "|pO", kwlist, &blocking, &timeout_obj)) return NULL; @@ -273,7 +273,7 @@ semlock_acquire(SemLockObject *self, PyO static char *kwlist[] = {"block", "timeout", NULL}; - if (!PyArg_ParseTupleAndKeywords(args, kwds, "|iO", kwlist, + if (!PyArg_ParseTupleAndKeywords(args, kwds, "|pO", kwlist, &blocking, &timeout_obj)) return NULL; diff -r 741ef17e9b86 Modules/_posixsubprocess.c --- a/Modules/_posixsubprocess.c Sun Oct 18 09:54:42 2015 +0300 +++ b/Modules/_posixsubprocess.c Sun Oct 18 18:45:27 2015 +0300 @@ -554,7 +554,7 @@ subprocess_fork_exec(PyObject* self, PyO #endif if (!PyArg_ParseTuple( - args, "OOpOOOiiiiiiiiiiO:fork_exec", + args, "OOpOOOiiiiiiiipiO:fork_exec", &process_args, &executable_list, &close_fds, &py_fds_to_keep, &cwd_obj, &env_list, &p2cread, &p2cwrite, &c2pread, &c2pwrite, diff -r 741ef17e9b86 Modules/_sqlite/connection.c --- a/Modules/_sqlite/connection.c Sun Oct 18 09:54:42 2015 +0300 +++ b/Modules/_sqlite/connection.c Sun Oct 18 18:45:27 2015 +0300 @@ -77,7 +77,7 @@ int pysqlite_connection_init(pysqlite_Co double timeout = 5.0; int rc; - if (!PyArg_ParseTupleAndKeywords(args, kwargs, "s|diOiOip", kwlist, + if (!PyArg_ParseTupleAndKeywords(args, kwargs, "s|diOpOip", kwlist, &database, &timeout, &detect_types, &isolation_level, &check_same_thread, &factory, &cached_statements, &uri)) @@ -1100,7 +1100,7 @@ static PyObject* pysqlite_enable_load_ex return NULL; } - if (!PyArg_ParseTuple(args, "i", &onoff)) { + if (!PyArg_ParseTuple(args, "p", &onoff)) { return NULL; } diff -r 741ef17e9b86 Modules/_sqlite/module.c --- a/Modules/_sqlite/module.c Sun Oct 18 09:54:42 2015 +0300 +++ b/Modules/_sqlite/module.c Sun Oct 18 18:45:27 2015 +0300 @@ -66,7 +66,7 @@ static PyObject* module_connect(PyObject PyObject* result; - if (!PyArg_ParseTupleAndKeywords(args, kwargs, "s|diOiOip", kwlist, + if (!PyArg_ParseTupleAndKeywords(args, kwargs, "s|diOpOip", kwlist, &database, &timeout, &detect_types, &isolation_level, &check_same_thread, &factory, &cached_statements, &uri)) @@ -128,7 +128,7 @@ static PyObject* module_enable_shared_ca int do_enable; int rc; - if (!PyArg_ParseTupleAndKeywords(args, kwargs, "i", kwlist, &do_enable)) + if (!PyArg_ParseTupleAndKeywords(args, kwargs, "p", kwlist, &do_enable)) { return NULL; } diff -r 741ef17e9b86 Modules/_ssl.c --- a/Modules/_ssl.c Sun Oct 18 09:54:42 2015 +0300 +++ b/Modules/_ssl.c Sun Oct 18 18:45:27 2015 +0300 @@ -3088,7 +3088,7 @@ static PyObject * /*[clinic input] _ssl._SSLContext._wrap_socket sock: object(subclass_of="PySocketModule.Sock_Type") - server_side: int + server_side: bool server_hostname as hostname_obj: object = None [clinic start generated code]*/ @@ -3120,7 +3120,7 @@ static PyObject * _ssl._SSLContext._wrap_bio incoming: object(subclass_of="&PySSLMemoryBIO_Type", type="PySSLMemoryBIO *") outgoing: object(subclass_of="&PySSLMemoryBIO_Type", type="PySSLMemoryBIO *") - server_side: int + server_side: bool server_hostname as hostname_obj: object = None [clinic start generated code]*/ diff -r 741ef17e9b86 Modules/_threadmodule.c --- a/Modules/_threadmodule.c Sun Oct 18 09:54:42 2015 +0300 +++ b/Modules/_threadmodule.c Sun Oct 18 18:45:27 2015 +0300 @@ -105,7 +105,7 @@ lock_acquire_parse_args(PyObject *args, *timeout = unset_timeout ; - if (!PyArg_ParseTupleAndKeywords(args, kwds, "|iO:acquire", kwlist, + if (!PyArg_ParseTupleAndKeywords(args, kwds, "|pO:acquire", kwlist, &blocking, &timeout_obj)) return -1; diff -r 741ef17e9b86 Modules/_tkinter.c --- a/Modules/_tkinter.c Sun Oct 18 09:54:42 2015 +0300 +++ b/Modules/_tkinter.c Sun Oct 18 18:45:27 2015 +0300 @@ -3060,7 +3060,7 @@ Tkapp_WantObjects(PyObject *self, PyObje { int wantobjects = -1; - if (!PyArg_ParseTuple(args, "|i:wantobjects", &wantobjects)) + if (!PyArg_ParseTuple(args, "|p:wantobjects", &wantobjects)) return NULL; if (wantobjects == -1) return PyBool_FromLong(((TkappObject*)self)->wantobjects); @@ -3207,11 +3207,11 @@ static PyObject * screenName: str(accept={str, NoneType}) = NULL baseName: str = NULL className: str = "Tk" - interactive: int(c_default="0") = False - wantobjects: int(c_default="0") = False - wantTk: int(c_default="1") = True + interactive: bool = False + wantobjects: bool = False + wantTk: bool = True if false, then Tk_Init() doesn't get called - sync: int(c_default="0") = False + sync: bool = False if true, then pass -sync to wish use: str(accept={str, NoneType}) = NULL if not None, then pass -use to wish diff -r 741ef17e9b86 Modules/_winapi.c --- a/Modules/_winapi.c Sun Oct 18 09:54:42 2015 +0300 +++ b/Modules/_winapi.c Sun Oct 18 18:45:27 2015 +0300 @@ -387,7 +387,7 @@ static PyObject * _winapi.ConnectNamedPipe handle: HANDLE - overlapped as use_overlapped: int(c_default='0') = False + overlapped as use_overlapped: bool = False [clinic start generated code]*/ static PyObject * @@ -1163,7 +1163,7 @@ static PyObject * handle: HANDLE size: int - overlapped as use_overlapped: int(c_default='0') = False + overlapped as use_overlapped: bool = False [clinic start generated code]*/ static PyObject * @@ -1416,7 +1416,7 @@ static long handle: HANDLE buffer: object - overlapped as use_overlapped: int(c_default='0') = False + overlapped as use_overlapped: bool = False [clinic start generated code]*/ static PyObject * diff -r 741ef17e9b86 Modules/binascii.c --- a/Modules/binascii.c Sun Oct 18 09:54:42 2015 +0300 +++ b/Modules/binascii.c Sun Oct 18 18:45:27 2015 +0300 @@ -1221,7 +1221,7 @@ static int table_hex[128] = { binascii.a2b_qp data: ascii_buffer - header: int(c_default="0") = False + header: bool = False Decode a string of qp-encoded data. [clinic start generated code]*/ @@ -1321,9 +1321,9 @@ to_hex (unsigned char ch, unsigned char binascii.b2a_qp data: Py_buffer - quotetabs: int(c_default="0") = False - istext: int(c_default="1") = True - header: int(c_default="0") = False + quotetabs: bool = False + istext: bool = True + header: bool = False Encode a string using quoted-printable encoding. diff -r 741ef17e9b86 Modules/cjkcodecs/multibytecodec.c --- a/Modules/cjkcodecs/multibytecodec.c Sun Oct 18 09:54:42 2015 +0300 +++ b/Modules/cjkcodecs/multibytecodec.c Sun Oct 18 18:45:27 2015 +0300 @@ -884,7 +884,7 @@ decoder_feed_buffer(MultibyteStatefulDec _multibytecodec.MultibyteIncrementalEncoder.encode input: object - final: int(c_default="0") = False + final: bool = False [clinic start generated code]*/ static PyObject * @@ -1041,7 +1041,7 @@ static PyTypeObject MultibyteIncremental _multibytecodec.MultibyteIncrementalDecoder.decode input: Py_buffer - final: int(c_default="0") = False + final: bool = False [clinic start generated code]*/ static PyObject * diff -r 741ef17e9b86 Modules/faulthandler.c --- a/Modules/faulthandler.c Sun Oct 18 09:54:42 2015 +0300 +++ b/Modules/faulthandler.c Sun Oct 18 18:45:27 2015 +0300 @@ -259,7 +259,7 @@ faulthandler_dump_traceback_py(PyObject int fd; if (!PyArg_ParseTupleAndKeywords(args, kwargs, - "|Oi:dump_traceback", kwlist, + "|Op:dump_traceback", kwlist, &file, &all_threads)) return NULL; @@ -369,7 +369,7 @@ faulthandler_enable(PyObject *self, PyOb PyThreadState *tstate; if (!PyArg_ParseTupleAndKeywords(args, kwargs, - "|Oi:enable", kwlist, &file, &all_threads)) + "|Op:enable", kwlist, &file, &all_threads)) return NULL; fd = faulthandler_get_fileno(&file); @@ -745,7 +745,7 @@ faulthandler_register_py(PyObject *self, int err; if (!PyArg_ParseTupleAndKeywords(args, kwargs, - "i|Oii:register", kwlist, + "i|Opp:register", kwlist, &signum, &file, &all_threads, &chain)) return NULL; @@ -897,7 +897,7 @@ static PyObject * faulthandler_sigsegv(PyObject *self, PyObject *args) { int release_gil = 0; - if (!PyArg_ParseTuple(args, "|i:_read_null", &release_gil)) + if (!PyArg_ParseTuple(args, "|p:_read_null", &release_gil)) return NULL; if (release_gil) { diff -r 741ef17e9b86 Modules/itertoolsmodule.c --- a/Modules/itertoolsmodule.c Sun Oct 18 09:54:42 2015 +0300 +++ b/Modules/itertoolsmodule.c Sun Oct 18 18:45:27 2015 +0300 @@ -986,12 +986,12 @@ cycle_setstate(cycleobject *lz, PyObject PyObject *saved=NULL; int firstpass; - if (!PyArg_ParseTuple(state, "O!i", &PyList_Type, &saved, &firstpass)) + if (!PyArg_ParseTuple(state, "O!p", &PyList_Type, &saved, &firstpass)) return NULL; Py_INCREF(saved); Py_CLEAR(lz->saved); lz->saved = saved; - lz->firstpass = firstpass != 0; + lz->firstpass = firstpass; lz->index = 0; Py_RETURN_NONE; } diff -r 741ef17e9b86 Modules/ossaudiodev.c --- a/Modules/ossaudiodev.c Sun Oct 18 09:54:42 2015 +0300 +++ b/Modules/ossaudiodev.c Sun Oct 18 18:45:27 2015 +0300 @@ -568,7 +568,7 @@ oss_setparameters(oss_audio_t *self, PyO if (!_is_fd_valid(self->fd)) return NULL; - if (!PyArg_ParseTuple(args, "iii|i:setparameters", + if (!PyArg_ParseTuple(args, "iii|p:setparameters", &wanted_fmt, &wanted_channels, &wanted_rate, &strict)) return NULL; diff -r 741ef17e9b86 Modules/posixmodule.c --- a/Modules/posixmodule.c Sun Oct 18 09:54:42 2015 +0300 +++ b/Modules/posixmodule.c Sun Oct 18 18:45:27 2015 +0300 @@ -1928,7 +1928,7 @@ static PyObject* stat_float_times(PyObject* self, PyObject *args) { int newval = -1; - if (!PyArg_ParseTuple(args, "|i:stat_float_times", &newval)) + if (!PyArg_ParseTuple(args, "|p:stat_float_times", &newval)) return NULL; if (PyErr_WarnEx(PyExc_DeprecationWarning, "stat_float_times() is deprecated", diff -r 741ef17e9b86 Modules/pyexpat.c --- a/Modules/pyexpat.c Sun Oct 18 09:54:42 2015 +0300 +++ b/Modules/pyexpat.c Sun Oct 18 18:45:27 2015 +0300 @@ -707,7 +707,7 @@ get_parse_result(xmlparseobject *self, i pyexpat.xmlparser.Parse data: object - isfinal: int(c_default="0") = False + isfinal: bool = False / Parse XML data. diff -r 741ef17e9b86 Modules/socketmodule.c --- a/Modules/socketmodule.c Sun Oct 18 09:54:42 2015 +0300 +++ b/Modules/socketmodule.c Sun Oct 18 18:45:27 2015 +0300 @@ -2302,8 +2302,8 @@ sock_setblocking(PySocketSockObject *s, { long block; - block = PyLong_AsLong(arg); - if (block == -1 && PyErr_Occurred()) + block = PyObject_IsTrue(arg); + if (block < 0) return NULL; s->sock_timeout = _PyTime_FromSeconds(block ? -1 : 0); diff -r 741ef17e9b86 Objects/bytearrayobject.c --- a/Objects/bytearrayobject.c Sun Oct 18 09:54:42 2015 +0300 +++ b/Objects/bytearrayobject.c Sun Oct 18 18:45:27 2015 +0300 @@ -2771,7 +2771,7 @@ bytearray_join(PyByteArrayObject *self, /*[clinic input] bytearray.splitlines - keepends: int(c_default="0") = False + keepends: bool = False Return a list of the lines in the bytearray, breaking at line boundaries. diff -r 741ef17e9b86 Objects/bytesobject.c --- a/Objects/bytesobject.c Sun Oct 18 09:54:42 2015 +0300 +++ b/Objects/bytesobject.c Sun Oct 18 18:45:27 2015 +0300 @@ -3079,7 +3079,7 @@ bytes_decode_impl(PyBytesObject*self, co /*[clinic input] bytes.splitlines - keepends: int(c_default="0") = False + keepends: bool = False Return a list of the lines in the bytes, breaking at line boundaries. diff -r 741ef17e9b86 Objects/listobject.c --- a/Objects/listobject.c Sun Oct 18 09:54:42 2015 +0300 +++ b/Objects/listobject.c Sun Oct 18 18:45:27 2015 +0300 @@ -1926,7 +1926,7 @@ listsort(PyListObject *self, PyObject *a assert(self != NULL); assert (PyList_Check(self)); if (args != NULL) { - if (!PyArg_ParseTupleAndKeywords(args, kwds, "|Oi:sort", + if (!PyArg_ParseTupleAndKeywords(args, kwds, "|Op:sort", kwlist, &keyfunc, &reverse)) return NULL; if (Py_SIZE(args) > 0) { diff -r 741ef17e9b86 Objects/unicodeobject.c --- a/Objects/unicodeobject.c Sun Oct 18 09:54:42 2015 +0300 +++ b/Objects/unicodeobject.c Sun Oct 18 18:45:27 2015 +0300 @@ -13090,7 +13090,7 @@ unicode_splitlines(PyObject *self, PyObj static char *kwlist[] = {"keepends", 0}; int keepends = 0; - if (!PyArg_ParseTupleAndKeywords(args, kwds, "|i:splitlines", + if (!PyArg_ParseTupleAndKeywords(args, kwds, "|p:splitlines", kwlist, &keepends)) return NULL; diff -r 741ef17e9b86 Python/bltinmodule.c --- a/Python/bltinmodule.c Sun Oct 18 09:54:42 2015 +0300 +++ b/Python/bltinmodule.c Sun Oct 18 18:45:27 2015 +0300 @@ -637,7 +637,7 @@ compile as builtin_compile filename: object(converter="PyUnicode_FSDecoder") mode: str flags: int = 0 - dont_inherit: int(c_default="0") = False + dont_inherit: bool = False optimize: int = -1 Compile source into a code object that can be executed by exec() or eval(). @@ -2079,7 +2079,7 @@ builtin_sorted(PyObject *self, PyObject int reverse; /* args 1-3 should match listsort in Objects/listobject.c */ - if (!PyArg_ParseTupleAndKeywords(args, kwds, "O|Oi:sorted", + if (!PyArg_ParseTupleAndKeywords(args, kwds, "O|Op:sorted", kwlist, &seq, &keyfunc, &reverse)) return NULL; diff -r 741ef17e9b86 Python/sysmodule.c --- a/Python/sysmodule.c Sun Oct 18 09:54:42 2015 +0300 +++ b/Python/sysmodule.c Sun Oct 18 18:45:27 2015 +0300 @@ -609,7 +609,7 @@ sys_settscdump(PyObject *self, PyObject int bool; PyThreadState *tstate = PyThreadState_Get(); - if (!PyArg_ParseTuple(args, "i:settscdump", &bool)) + if (!PyArg_ParseTuple(args, "p:settscdump", &bool)) return NULL; if (bool) tstate->interp->tscdump = 1;