2016-02-07 9:22 GMT+01:00 Stefan Behnel email@example.com:
Note that the PyObject_Malloc() functions have never been documented.
Yeah, there is an old bug to track this: http://bugs.python.org/issue20064
And, for example, the "what's new in 2.5" document says:
""" Python’s API has many different functions for allocating memory that are grouped into families. For example, PyMem_Malloc(), PyMem_Realloc(), and PyMem_Free() are one family that allocates raw memory, while PyObject_Malloc(), PyObject_Realloc(), and PyObject_Free() are another family that’s supposed to be used for creating Python objects. """
I don't think there are many extensions out there in which *object* memory gets allocated manually, which implicitly puts a pretty clear "don't use" marker on these functions.
Should I understand that it's another good reason to make PyMem_Malloc() faster for everyone?