@@ -98,6 +98,7 @@ static void object_dealloc(PyObject *self) {
98
98
99
99
/* prototype */
100
100
PyObject * PyTruffle_Tuple_Alloc (PyTypeObject * cls , Py_ssize_t nitems );
101
+ void PyTruffle_Tuple_Dealloc (PyTupleObject * tuple );
101
102
102
103
PyAPI_DATA (PyTypeObject ) _PyExc_BaseException ;
103
104
PyAPI_DATA (PyTypeObject ) _PyExc_StopIteration ;
@@ -145,7 +146,7 @@ PyTypeObject PySlice_Type = PY_TRUFFLE_TYPE("slice", &PyType_Type, Py_TPFLAG
145
146
PyTypeObject PyStaticMethod_Type = PY_TRUFFLE_TYPE ("staticmethod" , & PyType_Type , Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE | Py_TPFLAGS_HAVE_GC , sizeof (PyType_Type ));
146
147
PyTypeObject PySuper_Type = PY_TRUFFLE_TYPE ("super" , & PyType_Type , Py_TPFLAGS_DEFAULT | Py_TPFLAGS_HAVE_GC | Py_TPFLAGS_BASETYPE , sizeof (superobject ));
147
148
PyTypeObject PyTraceBack_Type = PY_TRUFFLE_TYPE ("traceback" , & PyType_Type , Py_TPFLAGS_DEFAULT | Py_TPFLAGS_HAVE_GC , sizeof (PyTypeObject ));
148
- PyTypeObject PyTuple_Type = PY_TRUFFLE_TYPE_GENERIC ("tuple" , & PyType_Type , Py_TPFLAGS_DEFAULT | Py_TPFLAGS_HAVE_GC | Py_TPFLAGS_BASETYPE | Py_TPFLAGS_TUPLE_SUBCLASS | _Py_TPFLAGS_MATCH_SELF | Py_TPFLAGS_SEQUENCE , sizeof (PyTupleObject ) - sizeof (PyObject * ), sizeof (PyObject * ), PyTruffle_Tuple_Alloc , 0 , 0 , 0 );
149
+ PyTypeObject PyTuple_Type = PY_TRUFFLE_TYPE_GENERIC ("tuple" , & PyType_Type , Py_TPFLAGS_DEFAULT | Py_TPFLAGS_HAVE_GC | Py_TPFLAGS_BASETYPE | Py_TPFLAGS_TUPLE_SUBCLASS | _Py_TPFLAGS_MATCH_SELF | Py_TPFLAGS_SEQUENCE , sizeof (PyTupleObject ) - sizeof (PyObject * ), sizeof (PyObject * ), PyTruffle_Tuple_Alloc , ( destructor ) PyTruffle_Tuple_Dealloc , 0 , 0 );
149
150
PyTypeObject PyType_Type = PY_TRUFFLE_TYPE_WITH_ITEMSIZE ("type" , & PyType_Type , Py_TPFLAGS_DEFAULT | Py_TPFLAGS_HAVE_GC | Py_TPFLAGS_BASETYPE | Py_TPFLAGS_TYPE_SUBCLASS , sizeof (PyHeapTypeObject ), sizeof (PyMemberDef ));
150
151
PyTypeObject PyUnicode_Type = PY_TRUFFLE_TYPE ("str" , & PyType_Type , Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE | Py_TPFLAGS_UNICODE_SUBCLASS | _Py_TPFLAGS_MATCH_SELF , sizeof (PyUnicodeObject ));
151
152
/* NOTE: we use the same Python type (namely 'PBuiltinFunction') for 'wrapper_descriptor' as for 'method_descriptor'; so the flags must be the same! */
0 commit comments