bpo-39573: Clean up modules and headers to use Py_IS_TYPE() function … · python/cpython@1b55b65
@@ -68,7 +68,7 @@ typedef struct {
6868ffi_type *atypes[1];
6969} CThunkObject;
7070extern PyTypeObject PyCThunk_Type;
71-#define CThunk_CheckExact(v) (Py_TYPE(v) == &PyCThunk_Type)
71+#define CThunk_CheckExact(v) Py_IS_TYPE(v, &PyCThunk_Type)
72727373typedef struct {
7474/* First part identical to tagCDataObject */
@@ -102,7 +102,7 @@ typedef struct {
102102} PyCFuncPtrObject;
103103104104extern PyTypeObject PyCStgDict_Type;
105-#define PyCStgDict_CheckExact(v) (Py_TYPE(v) == &PyCStgDict_Type)
105+#define PyCStgDict_CheckExact(v) Py_IS_TYPE(v, &PyCStgDict_Type)
106106#define PyCStgDict_Check(v) PyObject_TypeCheck(v, &PyCStgDict_Type)
107107108108extern int PyCStructUnionType_update_stgdict(PyObject *fields, PyObject *type, int isStruct);
@@ -112,12 +112,12 @@ extern int PyObject_stginfo(PyObject *self, Py_ssize_t *psize, Py_ssize_t *palig
112112113113114114extern PyTypeObject PyCData_Type;
115-#define CDataObject_CheckExact(v) (Py_TYPE(v) == &PyCData_Type)
115+#define CDataObject_CheckExact(v) Py_IS_TYPE(v, &PyCData_Type)
116116#define CDataObject_Check(v) PyObject_TypeCheck(v, &PyCData_Type)
117117#define _CDataObject_HasExternalBuffer(v) ((v)->b_ptr != (char *)&(v)->b_value)
118118119119extern PyTypeObject PyCSimpleType_Type;
120-#define PyCSimpleTypeObject_CheckExact(v) (Py_TYPE(v) == &PyCSimpleType_Type)
120+#define PyCSimpleTypeObject_CheckExact(v) Py_IS_TYPE(v, &PyCSimpleType_Type)
121121#define PyCSimpleTypeObject_Check(v) PyObject_TypeCheck(v, &PyCSimpleType_Type)
122122123123extern PyTypeObject PyCField_Type;
@@ -314,7 +314,7 @@ struct tagPyCArgObject {
314314};
315315316316extern PyTypeObject PyCArg_Type;
317-#define PyCArg_CheckExact(v) (Py_TYPE(v) == &PyCArg_Type)
317+#define PyCArg_CheckExact(v) Py_IS_TYPE(v, &PyCArg_Type)
318318extern PyCArgObject *PyCArgObject_new(void);
319319320320extern PyObject *