[Python-Dev] [Python-checkins] r43041 - python/trunk/Modules/_ctypes/cfield.c (original) (raw)

Thomas Heller theller at python.net
Thu Mar 16 21:45:46 CET 2006


Martin v. Löwis wrote:

Thomas Heller wrote:

BTW: Is a "porting guide" to make extension modules compatible with 2.5 available somewhere? PEP 353 scratches only the surface... Wrt. ssizet changes, PEP 353 is meant to be comprehensive. Which particular aspect are you missing?

I suggest to change this:

#if PY_VERSION_HEX < 0x02050000 typedef int Py_ssize_t; #endif

with this:

#if (PY_VERSION_HEX < 0x02050000) typedef int Py_ssize_t; #define lenfunc inquiry #define readbufferproc getreadbufferproc #define writebufferproc getwritebufferproc #define segcountproc getsegcountproc #define charbufferproc getcharbufferproc #define ssizeargfunc intargfunc #define ssizessizeargfunc intintargfunc #define ssizeobjargproc intobjargproc #define ssizessizeobjargproc intintobjargproc ... more defines #endif

Maybe a complete list of defines needed can be given?

Then, from only reading the PEP without looking up the sources, it is not clear to me what the PY_SIZE_T_CLEAN definition does.

Finally, the format codes to use for Py_ssize_t arguments passed to PyBuild_Value, PyString_FromFormat, PyObject_CallFunction (and other functions) are not mentioned at all.

Thanks, Thomas



More information about the Python-Dev mailing list