> <http://www.python.org/dev/peps/pep-0384/> says "functions expecting > FILE* are not part of the ABI, to avoid depending on a specific > version of the Microsoft C runtime DLL on Windows". Can extension > modules that need to read and write files practically avoid all of > those functions?
Certainly! fread/fwrite/fprintf is not part of the Python API at all, so clearly doesn't need to be part of the ABI. > (If your extension module links a library with a > different CRT, but doesn't pass functions back and forth to Python, > is that OK?) It is (and always was). The difficult functions are PyRun_AnyFileFlags and friends. > The PEP also says that it will allow users to "check whether their > modules conform to the ABI", but it doesn't say how that will be > done. How can we build extension modules so that we're sure we're > ABI-conformant? If it compiles with Py_LIMITED_API defined, and links successfully on Windows, it should be ABI-conforming (unless you deliberately bypass the test, e.g. by replicating struct definitions in your own code). Regards, Martin _______________________________________________ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com