STINNER Victor added the comment: Ok, I fixed all remaining issues. The new patch version 3 is now waiting for your review ;-)
Patch version 3: * Add Py_TPFLAGS_HAVE_FINALIZE and Py_TPFLAGS_HAVE_FASTCALL to Py_TPFLAGS_DEFAULT * Don't read or write tp_fastcall if the type doesn't have the Py_TPFLAGS_HAVE_FASTCALL feature * fastcall_wrapper() looks into base classes to find a tp_fastcall field: use the first base class with the Py_TPFLAGS_HAVE_FASTCALL feature * Fix how tp_call and tp_fastcall are inherited * Use designated initializers for tp_fastcall, as asked by Naoki (and discussed on python-dev) * Rebase the change and revert now uselesss or unwanted changes * No more FIXME ;-) About the stable ABI: since the version 3, it should just work thanks to the change on Py_TPFLAGS_DEFAULT. Code compiled with Python 3.7 benefit directly of tp_fastcall. Code compiled with Python 3.6 or older will get fastcall_wrapper() which finds tp_fastcall in base classes. ---------- Added file: http://bugs.python.org/file46323/tp_fastcall-3.patch _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue29259> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com