summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Include/cpython/dictobject.h1
-rw-r--r--Include/dictobject.h3
-rw-r--r--Misc/NEWS.d/next/C API/2020-10-11-05-05-53.bpo-41845.ZFvuQM.rst2
-rw-r--r--PC/python3dll.c1
4 files changed, 6 insertions, 1 deletions
diff --git a/Include/cpython/dictobject.h b/Include/cpython/dictobject.h
index ffe0e97..5a15630 100644
--- a/Include/cpython/dictobject.h
+++ b/Include/cpython/dictobject.h
@@ -41,7 +41,6 @@ PyAPI_FUNC(int) _PyDict_DelItem_KnownHash(PyObject *mp, PyObject *key,
PyAPI_FUNC(int) _PyDict_DelItemIf(PyObject *mp, PyObject *key,
int (*predicate)(PyObject *value));
PyDictKeysObject *_PyDict_NewKeysForClass(void);
-PyAPI_FUNC(PyObject *) PyObject_GenericGetDict(PyObject *, void *);
PyAPI_FUNC(int) _PyDict_Next(
PyObject *mp, Py_ssize_t *pos, PyObject **key, PyObject **value, Py_hash_t *hash);
diff --git a/Include/dictobject.h b/Include/dictobject.h
index c88b0aa..da5a36b 100644
--- a/Include/dictobject.h
+++ b/Include/dictobject.h
@@ -57,6 +57,9 @@ PyAPI_FUNC(int) PyDict_MergeFromSeq2(PyObject *d,
PyAPI_FUNC(PyObject *) PyDict_GetItemString(PyObject *dp, const char *key);
PyAPI_FUNC(int) PyDict_SetItemString(PyObject *dp, const char *key, PyObject *item);
PyAPI_FUNC(int) PyDict_DelItemString(PyObject *dp, const char *key);
+#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x030A0000
+PyAPI_FUNC(PyObject *) PyObject_GenericGetDict(PyObject *, void *);
+#endif
/* Dictionary (keys, values, items) views */
diff --git a/Misc/NEWS.d/next/C API/2020-10-11-05-05-53.bpo-41845.ZFvuQM.rst b/Misc/NEWS.d/next/C API/2020-10-11-05-05-53.bpo-41845.ZFvuQM.rst
new file mode 100644
index 0000000..31d3154
--- /dev/null
+++ b/Misc/NEWS.d/next/C API/2020-10-11-05-05-53.bpo-41845.ZFvuQM.rst
@@ -0,0 +1,2 @@
+:c:func:`PyObject_GenericGetDict` is available again in the limited API
+when targeting 3.10 or later.
diff --git a/PC/python3dll.c b/PC/python3dll.c
index b9b229e..7e4a510 100644
--- a/PC/python3dll.c
+++ b/PC/python3dll.c
@@ -414,6 +414,7 @@ EXPORT_FUNC(PyObject_GC_Track)
EXPORT_FUNC(PyObject_GC_UnTrack)
EXPORT_FUNC(PyObject_GenericGetAttr)
EXPORT_FUNC(PyObject_GenericSetAttr)
+EXPORT_FUNC(PyObject_GenericGetDict)
EXPORT_FUNC(PyObject_GenericSetDict)
EXPORT_FUNC(PyObject_GetAttr)
EXPORT_FUNC(PyObject_GetAttrString)