@@ -930,7 +930,7 @@ static PyType_Slot pycstruct_type_slots[] = {
930
930
{Py_tp_clear , CDataType_clear },
931
931
{Py_tp_methods , CDataType_methods },
932
932
{Py_tp_new , PyCStructType_new },
933
-
933
+
934
934
// Sequence protocol.
935
935
{Py_sq_repeat , CDataType_repeat },
936
936
{0 , NULL },
@@ -1529,14 +1529,21 @@ static int
1529
1529
PyCArrayType_traverse (PyTypeObject * self , visitproc visit , void * arg )
1530
1530
{
1531
1531
Py_VISIT (Py_TYPE (self ));
1532
- return 0 ;
1532
+ return PyType_Type .tp_traverse ((PyObject * )self , visit , arg );
1533
+ }
1534
+
1535
+ static int
1536
+ PyCArrayType_clear (PyObject * self )
1537
+ {
1538
+ return PyType_Type .tp_clear (self );
1533
1539
}
1534
1540
1535
1541
static PyType_Slot pycarray_type_slots [] = {
1536
1542
{Py_tp_doc , PyDoc_STR ("metatype for the Array Objects" )},
1537
1543
{Py_tp_traverse , PyCArrayType_traverse },
1538
1544
{Py_tp_methods , CDataType_methods },
1539
1545
{Py_tp_new , PyCArrayType_new },
1546
+ {Py_tp_clear , PyCArrayType_clear },
1540
1547
1541
1548
// Sequence protocol.
1542
1549
{Py_sq_repeat , CDataType_repeat },
@@ -2192,7 +2199,13 @@ static int
2192
2199
PyCSimpleType_traverse (PyTypeObject * self , visitproc visit , void * arg )
2193
2200
{
2194
2201
Py_VISIT (Py_TYPE (self ));
2195
- return 0 ;
2202
+ return PyType_Type .tp_traverse ((PyObject * )self , visit , arg );
2203
+ }
2204
+
2205
+ static int
2206
+ PyCSimpleType_clear (PyObject * self )
2207
+ {
2208
+ return PyType_Type .tp_clear (self );
2196
2209
}
2197
2210
2198
2211
static PyMethodDef PyCSimpleType_methods [] = {
@@ -2209,6 +2222,7 @@ static PyType_Slot pycsimple_type_slots[] = {
2209
2222
{Py_tp_methods , PyCSimpleType_methods },
2210
2223
{Py_tp_new , PyCSimpleType_new },
2211
2224
{Py_tp_traverse , PyCSimpleType_traverse },
2225
+ {Py_tp_clear , PyCSimpleType_clear },
2212
2226
2213
2227
// Sequence protocol.
2214
2228
{Py_sq_repeat , CDataType_repeat },
0 commit comments