- 19 Aug, 2016 32 commits
-
-
Victor Stinner authored
Issue #27128: slot_tp_iter() now calls _PyObject_FastCall() to avoid a temporary empty tuple.
-
Victor Stinner authored
Issue #27128: slot_nb_bool() now calls _PyObject_FastCall() to avoid a temporary empty tuple to call the slot function.
-
Victor Stinner authored
Use an error label to reduce the level of indentation.
-
Victor Stinner authored
slot_sq_item() now calls _PyObject_FastCall() to avoid the creation of a temporary tuple of 1 item to pass the 'item' argument to the slot function.
-
Victor Stinner authored
* Invert condition of test to avoid levels of indentation * Remove useless Py_XDECREF(args) in the error block * Replace Py_XDECREF(func) with Py_DECREF(func) in the error block: func cannot be NULL when reaching the error block
-
Victor Stinner authored
Issue #27128. The call_method() and call_maybe() functions of typeobject.c now use fast call for empty format string to avoid the creation of a temporary empty tuple.
-
Victor Stinner authored
Issue #27128. Move va_start/va_end around Py_VaBuildValue().
-
Victor Stinner authored
-
Victor Stinner authored
Issue #27128. Fix a reference leak if creating the tuple to pass positional parameters fails.
-
Victor Stinner authored
-
Victor Stinner authored
-
Victor Stinner authored
Issue #27128. Fix a reference leak if creating the tuple to pass positional parameters fails.
-
Victor Stinner authored
Issue #27128. Modify slot_sq_contains() and slot_tp_richcompare() to use fast call to avoid a temporary tuple to pass a single positional parameter.
-
Victor Stinner authored
Issue #27128: arg=>args, kw=>kwargs. Same change for PyEval_CallObjectWithKeywords().
-
Victor Stinner authored
Issue #27128, PyObject_CallFunction(), _PyObject_FastCall() and callmethod(): if the format string of parameters is empty, avoid the creation of an empty tuple: call _PyObject_FastCall() without parameters.
-
Victor Stinner authored
Issue #27128.
-
Berker Peksag authored
-
Victor Stinner authored
Make callmethod() less weird: don't decrement func reference counter, the caller is now responsible to do that. Issue #27128.
-
Victor Stinner authored
Make call_function_tail() less weird: don't decrement args reference counter, the caller is now responsible to do that. The caller now also checks if args is NULL. Issue #27128.
-
Victor Stinner authored
Issue #27128: Modify call_function_tail() to use _PyObject_FastCall() when args is not a tuple to avoid the creation of a temporary tuple. call_function_tail() is used by: * PyObject_CallFunction() * PyObject_CallMethod() * _PyObject_CallMethodId()
-
Victor Stinner authored
Issue #27128: Modify PyEval_CallObjectWithKeywords() to use _PyObject_FastCall() when args==NULL and kw==NULL. It avoids the creation of a temporary empty tuple for positional arguments.
-
Victor Stinner authored
Issue #27128: Add _PyObject_FastCall(), a new calling convention avoiding a temporary tuple to pass positional parameters in most cases, but create a temporary tuple if needed (ex: for the tp_call slot). The API is prepared to support keyword parameters, but the full implementation will come later (_PyFunction_FastCall() doesn't support keyword parameters yet). Add also: * _PyStack_AsTuple() helper function: convert a "stack" of parameters to a tuple. * _PyCFunction_FastCall(): fast call implementation for C functions * _PyFunction_FastCall(): fast call implementation for Python functions
-
Berker Peksag authored
-
Victor Stinner authored
Clang is smarter than GCC and emits a warning for dead code after a function declared with __attribute__((__noreturn__)) (Py_FatalError).
-
Berker Peksag authored
PyModule_NewObject already sets md_dict to PyDict_New(): m->md_dict = PyDict_New();
-
Berker Peksag authored
-
Berker Peksag authored
-
Berker Peksag authored
Patch by Eryk Sun and Emanuel Barry.
-
R David Murray authored
Also moved news item for #2466 to the correct place.
-
R David Murray authored
-
R David Murray authored
-
R David Murray authored
Patch by Robin Roth, reviewed by Serhiy Storchaka, comment wording tweaked by me.
-
- 18 Aug, 2016 6 commits
-
-
Vinay Sajip authored
-
Vinay Sajip authored
-
Guido van Rossum authored
- Issue #25958: Support "anti-registration" of special methods from various ABCs, like __hash__, __iter__ or __len__. All these (and several more) can be set to None in an implementation class and the behavior will be as if the method is not defined at all. (Previously, this mechanism existed only for __hash__, to make mutable classes unhashable.) Code contributed by Andrew Barnert and Ivan Levkivskyi.
-
Victor Stinner authored
-
Victor Stinner authored
Issue #27558: Fix a SystemError in the implementation of "raise" statement. In a brand new thread, raise a RuntimeError since there is no active exception to reraise. Patch written by Xiang Zhang.
-
Serhiy Storchaka authored
-
- 17 Aug, 2016 2 commits
-
-
Alexander Belopolsky authored
Does not appear to be a problem anymore and I cannot figure out why it was skipped in the first place.
-
Ned Deily authored
enabled: ensure code object has a valid first line number. Patch suggested by Ivan Levkivskyi.
-