FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

Stackless issue #137: Add Stackless support to "call" functions · akruis/cpython@f590d9d · GitHub

Repository navigation

Commit f590d9d

Browse files
Anselm Kruis
committed
Stackless issue python#137: Add Stackless support to "call" functions
Add Stackless support for METH_FASTCALL C-functions. Add a warning about the ABI change to the Stackless changelog.
1 parent 2253864 commit f590d9d

2 files changed

Lines changed: 6 additions & 0 deletions

File tree

‎Objects/methodobject.c‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -103,6 +103,7 @@ PyCFunction_Call(PyObject *func, PyObject *args, PyObject *kwds)
103103
else if (flags == METH_FASTCALL) {
104104
PyObject **stack = &PyTuple_GET_ITEM(args, 0);
105105
Py_ssize_t nargs = PyTuple_GET_SIZE(args);
106+
STACKLESS_PROMOTE_ALL();
106107
res = _PyCFunction_FastCallDict(func, stack, nargs, kwds);
107108
}
108109
else {
@@ -259,6 +260,7 @@ _PyCFunction_FastCallDict(PyObject *func_obj, PyObject **args, Py_ssize_t nargs,
259260
return NULL;
260261
}
261262

263+
STACKLESS_PROMOTE_FLAG(PyCFunction_GET_FLAGS(func) & METH_STACKLESS);
262264
result = (*fastmeth) (self, stack, nargs, kwnames);
263265
if (stack != args) {
264266
PyMem_Free(stack);

‎Stackless/changelog.txt‎

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,10 @@ What's New in Stackless 3.X.X?
99

1010
*Release date: 20XX-XX-XX*
1111

12+
- https://github.com/stackless-dev/stackless/issues/133
13+
WARNING: C-extension modules written for Stackless Python must be recompiled
14+
for Stackless Python 3.6, because definition of METH_STACKLESS changed.
15+
1216
- https://github.com/stackless-dev/stackless/issues/140
1317
Fix bugs in prickelpit.c unwrap_frame_arg() and slp_find_execname().
1418

0 commit comments

Comments
 (0)

Back | FazBrowse Home | New Git URL