Issue #18896: Python function can now have more than 255 parameters.

collections.namedtuple() now supports tuples with more than 255 elements.
This commit is contained in:
Serhiy Storchaka 2016-12-16 19:19:02 +02:00
parent 14d8b9693b
commit 5bb8b9134b
10 changed files with 33 additions and 49 deletions

View file

@ -1411,11 +1411,6 @@ ast_for_arguments(struct compiling *c, const node *n)
if (!kwdefaults && nkwonlyargs)
return NULL;
if (nposargs + nkwonlyargs > 255) {
ast_error(c, n, "more than 255 arguments");
return NULL;
}
/* tfpdef: NAME [':' test]
vfpdef: NAME
*/

View file

@ -4100,7 +4100,7 @@ _PyEval_EvalCodeWithName(PyObject *_co, PyObject *globals, PyObject *locals,
vars into frame. */
for (i = 0; i < PyTuple_GET_SIZE(co->co_cellvars); ++i) {
PyObject *c;
int arg;
Py_ssize_t arg;
/* Possibly account for the cell variable being an argument. */
if (co->co_cell2arg != NULL &&
(arg = co->co_cell2arg[i]) != CO_CELL_NOT_AN_ARG) {