Tamás Bence Gedai added the comment: I've added a patch, that solves the problem with the built-in len. Even if it turns out that this functionality is not needed, it was quite of a challenge to track down the issue, I've learned a lot. :)
Here are some functions, that I looked through, might be useful for someone, who'd like to look into this issue. https://github.com/python/cpython/blob/master/Python/bltinmodule.c#L1443 static PyObject * builtin_len(PyModuleDef *module, PyObject *obj) /*[clinic end generated code: output=8e5837b6f81d915b input=bc55598da9e9c9b5]*/ { Py_ssize_t res; res = PyObject_Size(obj); if (res < 0 && PyErr_Occurred()) return NULL; return PyLong_FromSsize_t(res); } https://github.com/python/cpython/blob/master/Objects/abstract.c#L42 Py_ssize_t PyObject_Size(PyObject *o) { /*...*/ m = o->ob_type->tp_as_sequence; if (m && m->sq_length) return m->sq_length(o); /*...*/ } https://github.com/python/cpython/blob/master/Modules/_ctypes/_ctypes.c#L4449 static PySequenceMethods Array_as_sequence = { Array_length, /* sq_length; */ /*...*/ }; https://github.com/python/cpython/blob/master/Modules/_ctypes/_ctypes.c#L4442 static Py_ssize_t Array_length(PyObject *myself) { CDataObject *self = (CDataObject *)myself; return self->b_length; } ---------- keywords: +patch Added file: http://bugs.python.org/file41810/resize.patch _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue21328> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com