From: "Guido van Rossum" firstname.lastname@example.org
Does this mean this is the wrong route, or is it absolute impossible to create a subtype of PyType_Type in C with additional slots?
I wish I had time to explain this, but I don't. For now, you'll have to read how types are initialized in typeobject.c -- maybe there's a way, maybe there isn't.
Any tips about the route to take?
It can be done easily dynamically.
I'm still struggling with this. How can it be done dynamically?
My idea would be to realloc() the object after creation, adding a few bytes at the end. The problem is that I don't know how to find out about the object size without knowledge about the internals. The formula given in PEP 253 type->tp_basicsize + nitems * type->tp_itemsize seems not to be valid any more (at least with CYCLE GC).