From: Victor Stinner Date: Sat, 22 Jul 2023 14:12:17 +0000 (+0200) Subject: gh-106320: Move _PyNone_Type to the internal C API (#107030) X-Git-Tag: v3.13.0a1~1295 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=eda9ce148714947c164ff72b720e2645ca2cd5fb;p=thirdparty%2FPython%2Fcpython.git gh-106320: Move _PyNone_Type to the internal C API (#107030) Move private types _PyNone_Type and _PyNotImplemented_Type to internal C API. --- diff --git a/Include/cpython/object.h b/Include/cpython/object.h index cd421b4f7e0d..0e5b6acb43b4 100644 --- a/Include/cpython/object.h +++ b/Include/cpython/object.h @@ -377,9 +377,6 @@ PyAPI_FUNC(PyObject *) _PyObject_FunctionStr(PyObject *); #endif -PyAPI_DATA(PyTypeObject) _PyNone_Type; -PyAPI_DATA(PyTypeObject) _PyNotImplemented_Type; - /* Maps Py_LT to Py_GT, ..., Py_GE to Py_LE. * Defined in object.c. */ diff --git a/Include/internal/pycore_object.h b/Include/internal/pycore_object.h index 2358f48738a9..90588daa64cc 100644 --- a/Include/internal/pycore_object.h +++ b/Include/internal/pycore_object.h @@ -438,6 +438,10 @@ extern PyObject* _PyCFunctionWithKeywords_TrampolineCall( (meth)((self), (args), (kw)) #endif // __EMSCRIPTEN__ && PY_CALL_TRAMPOLINE +// _pickle shared extension uses _PyNone_Type and _PyNotImplemented_Type +PyAPI_DATA(PyTypeObject) _PyNone_Type; +PyAPI_DATA(PyTypeObject) _PyNotImplemented_Type; + #ifdef __cplusplus } #endif diff --git a/Modules/_pickle.c b/Modules/_pickle.c index ea44b494cdd7..f2e98c10ef71 100644 --- a/Modules/_pickle.c +++ b/Modules/_pickle.c @@ -12,6 +12,7 @@ #include "pycore_bytesobject.h" // _PyBytesWriter #include "pycore_ceval.h" // _Py_EnterRecursiveCall() #include "pycore_moduleobject.h" // _PyModule_GetState() +#include "pycore_object.h" // _PyNone_Type #include "pycore_pystate.h" // _PyThreadState_GET() #include "pycore_runtime.h" // _Py_ID() #include "structmember.h" // PyMemberDef