diff options
| author | Victor Stinner <victor.stinner@gmail.com> | 2016-08-25 23:26:50 +0200 | 
|---|---|---|
| committer | Victor Stinner <victor.stinner@gmail.com> | 2016-08-25 23:26:50 +0200 | 
| commit | e90bdb19f22655b8ddad32006740c55d49237748 (patch) | |
| tree | 3748a8f27c9b1958897a266b9529771b021ba58a /Objects | |
| parent | bb1085915298a588d495561e5bc22b81552ecb7e (diff) | |
| download | cpython-git-e90bdb19f22655b8ddad32006740c55d49237748.tar.gz | |
Issue #27830: Revert, remove _PyFunction_FastCallKeywords()
Diffstat (limited to 'Objects')
| -rw-r--r-- | Objects/abstract.c | 45 | 
1 files changed, 0 insertions, 45 deletions
| diff --git a/Objects/abstract.c b/Objects/abstract.c index 9e5405df0a..cf69b96929 100644 --- a/Objects/abstract.c +++ b/Objects/abstract.c @@ -2343,51 +2343,6 @@ _PyStack_AsDict(PyObject **stack, Py_ssize_t nkwargs, PyObject *func)      return kwdict;  } -PyObject * -_PyObject_FastCallKeywords(PyObject *func, PyObject **stack, Py_ssize_t nargs, -                           Py_ssize_t nkwargs) -{ -    PyObject *args, *kwdict, *result; - -    /* _PyObject_FastCallKeywords() must not be called with an exception set, -       because it may clear it (directly or indirectly) and so the -       caller loses its exception */ -    assert(!PyErr_Occurred()); - -    assert(func != NULL); -    assert(nargs >= 0); -    assert(nkwargs >= 0); -    assert((nargs == 0 && nkwargs == 0) || stack != NULL); - -    if (PyFunction_Check(func)) { -        /* Fast-path: avoid temporary tuple or dict */ -        return _PyFunction_FastCallKeywords(func, stack, nargs, nkwargs); -    } - -    if (PyCFunction_Check(func) && nkwargs == 0) { -        return _PyCFunction_FastCallDict(func, stack, nargs, NULL); -    } - -    /* Slow-path: build temporary tuple and/or dict */ -    args = _PyStack_AsTuple(stack, nargs); - -    if (nkwargs > 0) { -        kwdict = _PyStack_AsDict(stack + nargs, nkwargs, func); -        if (kwdict == NULL) { -            Py_DECREF(args); -            return NULL; -        } -    } -    else { -        kwdict = NULL; -    } - -    result = PyObject_Call(func, args, kwdict); -    Py_DECREF(args); -    Py_XDECREF(kwdict); -    return result; -} -  /* Positional arguments are obj followed args. */  PyObject *  _PyObject_Call_Prepend(PyObject *func, | 
