Use PyType_Ready() for initialization of the ob_type field of our
types (the tp_base field must be initialized prior to that call).
diff --git a/Modules/xxsubtype.c b/Modules/xxsubtype.c
index e4910c1..d108409 100644
--- a/Modules/xxsubtype.c
+++ b/Modules/xxsubtype.c
@@ -242,11 +242,13 @@
/* Fill in the deferred data addresses. This must be done before
PyType_Ready() is called. */
- spamdict_type.ob_type = &PyType_Type;
spamdict_type.tp_base = &PyDict_Type;
+ if (PyType_Ready(&spamdict_type) < 0)
+ return;
- spamlist_type.ob_type = &PyType_Type;
spamlist_type.tp_base = &PyList_Type;
+ if (PyType_Ready(&spamlist_type) < 0)
+ return;
m = Py_InitModule3("xxsubtype",
xxsubtype_functions,