summaryrefslogtreecommitdiffstats
path: root/Python/pylifecycle.c
diff options
context:
space:
mode:
Diffstat (limited to 'Python/pylifecycle.c')
-rw-r--r--Python/pylifecycle.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/Python/pylifecycle.c b/Python/pylifecycle.c
index eda4c6a..4b658f8 100644
--- a/Python/pylifecycle.c
+++ b/Python/pylifecycle.c
@@ -583,6 +583,14 @@ pycore_init_types(PyThreadState *tstate)
return status;
}
+ // Create the empty tuple singleton. It must be created before the first
+ // PyType_Ready() call since PyType_Ready() creates tuples, for tp_bases
+ // for example.
+ status = _PyTuple_Init(tstate);
+ if (_PyStatus_EXCEPTION(status)) {
+ return status;
+ }
+
if (is_main_interp) {
status = _PyTypes_Init();
if (_PyStatus_EXCEPTION(status)) {
@@ -590,7 +598,6 @@ pycore_init_types(PyThreadState *tstate)
}
}
-
if (!_PyLong_Init(tstate)) {
return _PyStatus_ERR("can't init longs");
}