bpo-39573: Add Py_SET_TYPE() function (GH-18394) · python/cpython@d2ec81a (original) (raw)

`@@ -5758,42 +5758,42 @@ PyInit__ctypes(void)

`

5758

5758

`if (PyType_Ready(&PyCData_Type) < 0)

`

5759

5759

`return NULL;

`

5760

5760

``

5761

``

`-

Py_TYPE(&Struct_Type) = &PyCStructType_Type;

`

``

5761

`+

Py_SET_TYPE(&Struct_Type, &PyCStructType_Type);

`

5762

5762

`Struct_Type.tp_base = &PyCData_Type;

`

5763

5763

`if (PyType_Ready(&Struct_Type) < 0)

`

5764

5764

`return NULL;

`

5765

5765

`Py_INCREF(&Struct_Type);

`

5766

5766

`PyModule_AddObject(m, "Structure", (PyObject *)&Struct_Type);

`

5767

5767

``

5768

``

`-

Py_TYPE(&Union_Type) = &UnionType_Type;

`

``

5768

`+

Py_SET_TYPE(&Union_Type, &UnionType_Type);

`

5769

5769

`Union_Type.tp_base = &PyCData_Type;

`

5770

5770

`if (PyType_Ready(&Union_Type) < 0)

`

5771

5771

`return NULL;

`

5772

5772

`Py_INCREF(&Union_Type);

`

5773

5773

`PyModule_AddObject(m, "Union", (PyObject *)&Union_Type);

`

5774

5774

``

5775

``

`-

Py_TYPE(&PyCPointer_Type) = &PyCPointerType_Type;

`

``

5775

`+

Py_SET_TYPE(&PyCPointer_Type, &PyCPointerType_Type);

`

5776

5776

`PyCPointer_Type.tp_base = &PyCData_Type;

`

5777

5777

`if (PyType_Ready(&PyCPointer_Type) < 0)

`

5778

5778

`return NULL;

`

5779

5779

`Py_INCREF(&PyCPointer_Type);

`

5780

5780

`PyModule_AddObject(m, "_Pointer", (PyObject *)&PyCPointer_Type);

`

5781

5781

``

5782

``

`-

Py_TYPE(&PyCArray_Type) = &PyCArrayType_Type;

`

``

5782

`+

Py_SET_TYPE(&PyCArray_Type, &PyCArrayType_Type);

`

5783

5783

`PyCArray_Type.tp_base = &PyCData_Type;

`

5784

5784

`if (PyType_Ready(&PyCArray_Type) < 0)

`

5785

5785

`return NULL;

`

5786

5786

`Py_INCREF(&PyCArray_Type);

`

5787

5787

`PyModule_AddObject(m, "Array", (PyObject *)&PyCArray_Type);

`

5788

5788

``

5789

``

`-

Py_TYPE(&Simple_Type) = &PyCSimpleType_Type;

`

``

5789

`+

Py_SET_TYPE(&Simple_Type, &PyCSimpleType_Type);

`

5790

5790

`Simple_Type.tp_base = &PyCData_Type;

`

5791

5791

`if (PyType_Ready(&Simple_Type) < 0)

`

5792

5792

`return NULL;

`

5793

5793

`Py_INCREF(&Simple_Type);

`

5794

5794

`PyModule_AddObject(m, "_SimpleCData", (PyObject *)&Simple_Type);

`

5795

5795

``

5796

``

`-

Py_TYPE(&PyCFuncPtr_Type) = &PyCFuncPtrType_Type;

`

``

5796

`+

Py_SET_TYPE(&PyCFuncPtr_Type, &PyCFuncPtrType_Type);

`

5797

5797

`PyCFuncPtr_Type.tp_base = &PyCData_Type;

`

5798

5798

`if (PyType_Ready(&PyCFuncPtr_Type) < 0)

`

5799

5799

`return NULL;

`