summaryrefslogtreecommitdiffstats
path: root/contrib/tools/python3/Modules/_typingmodule.c
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/tools/python3/Modules/_typingmodule.c')
-rw-r--r--contrib/tools/python3/Modules/_typingmodule.c13
1 files changed, 9 insertions, 4 deletions
diff --git a/contrib/tools/python3/Modules/_typingmodule.c b/contrib/tools/python3/Modules/_typingmodule.c
index 39a124a26ad..09fbb3c5e8b 100644
--- a/contrib/tools/python3/Modules/_typingmodule.c
+++ b/contrib/tools/python3/Modules/_typingmodule.c
@@ -5,8 +5,9 @@
#endif
#include "Python.h"
-#include "internal/pycore_interp.h"
-#include "internal/pycore_typevarobject.h"
+#include "pycore_interp.h"
+#include "pycore_pystate.h" // _PyInterpreterState_GET()
+#include "pycore_typevarobject.h"
#include "clinic/_typingmodule.c.h"
/*[clinic input]
@@ -39,12 +40,12 @@ static PyMethodDef typing_methods[] = {
};
PyDoc_STRVAR(typing_doc,
-"Accelerators for the typing module.\n");
+"Primitives and accelerators for the typing module.\n");
static int
_typing_exec(PyObject *m)
{
- PyInterpreterState *interp = PyInterpreterState_Get();
+ PyInterpreterState *interp = _PyInterpreterState_GET();
#define EXPORT_TYPE(name, typename) \
if (PyModule_AddObjectRef(m, name, \
@@ -62,12 +63,16 @@ _typing_exec(PyObject *m)
if (PyModule_AddObjectRef(m, "TypeAliasType", (PyObject *)&_PyTypeAlias_Type) < 0) {
return -1;
}
+ if (PyModule_AddObjectRef(m, "NoDefault", (PyObject *)&_Py_NoDefaultStruct) < 0) {
+ return -1;
+ }
return 0;
}
static struct PyModuleDef_Slot _typingmodule_slots[] = {
{Py_mod_exec, _typing_exec},
{Py_mod_multiple_interpreters, Py_MOD_PER_INTERPRETER_GIL_SUPPORTED},
+ {Py_mod_gil, Py_MOD_GIL_NOT_USED},
{0, NULL}
};