This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author vstinner
Recipients scoder, serhiy.storchaka, vstinner
Date 2016-08-22.08:06:46
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1471853206.21.0.473371101558.issue27810@psf.upfronthosting.co.za>
In-reply-to
Content
> There is a tiny bit of a backwards compatibility concern as the new function signature would be incompatible with anything we had before,

Right. If you call directly PyCFunction functions, you will likely get quickly a crash. But... who call directly PyCFunction functions? Why not using the 30+ functions to call functions?

Hopefully, it's easy to support METH_FASTCALL in an existing function getting a tuple:

   int nargs = (int)PyTuple_GET_SIZE(args);
   PyObject **stack = &PyTuple_GETITEM(args, 0);
   result = func(self, stack, nargs, kwargs);

I guess that Cython calls directly PyCFunction. cpyext module of PyPy probably too. Ok, except of them, are you aware of other projects doing that?
History
Date User Action Args
2016-08-22 08:06:46vstinnersetrecipients: + vstinner, scoder, serhiy.storchaka
2016-08-22 08:06:46vstinnersetmessageid: <1471853206.21.0.473371101558.issue27810@psf.upfronthosting.co.za>
2016-08-22 08:06:46vstinnerlinkissue27810 messages
2016-08-22 08:06:46vstinnercreate