bpo-43239: Export PyCFunction_New with PyAPI_FUNC (GH-24551)

This commit is contained in:
Petr Viktorin 2021-02-23 13:23:56 +01:00 committed by GitHub
parent 2d6f2eed14
commit 7bb1cafa4e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 8 additions and 0 deletions

View file

@ -41,7 +41,13 @@ struct PyMethodDef {
};
typedef struct PyMethodDef PyMethodDef;
/* PyCFunction_New is declared as a function for stable ABI (declaration is
* needed for e.g. GCC with -fvisibility=hidden), but redefined as a macro
* that calls PyCFunction_NewEx. */
PyAPI_FUNC(PyObject *) PyCFunction_New(PyMethodDef *, PyObject *);
#define PyCFunction_New(ML, SELF) PyCFunction_NewEx((ML), (SELF), NULL)
/* PyCFunction_NewEx is similar: on 3.9+, this calls PyCMethod_New. */
PyAPI_FUNC(PyObject *) PyCFunction_NewEx(PyMethodDef *, PyObject *,
PyObject *);

View file

@ -0,0 +1,2 @@
The :c:func:`PyCFunction_New` function is now exported in the ABI when
compiled with ``-fvisibility=hidden``.