]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
gh-87347: Add parenthesis around PyXXX_Check() arguments (#92815)
authorVictor Stinner <vstinner@python.org>
Thu, 16 Jun 2022 11:49:43 +0000 (13:49 +0200)
committerGitHub <noreply@github.com>
Thu, 16 Jun 2022 11:49:43 +0000 (13:49 +0200)
34 files changed:
Include/boolobject.h
Include/bytearrayobject.h
Include/bytesobject.h
Include/complexobject.h
Include/cpython/cellobject.h
Include/cpython/classobject.h
Include/cpython/code.h
Include/cpython/context.h
Include/cpython/frameobject.h
Include/cpython/funcobject.h
Include/cpython/genobject.h
Include/cpython/methodobject.h
Include/cpython/odictobject.h
Include/cpython/picklebufobject.h
Include/dictobject.h
Include/floatobject.h
Include/internal/pycore_hamt.h
Include/internal/pycore_symtable.h
Include/internal/pycore_unionobject.h
Include/iterobject.h
Include/listobject.h
Include/longobject.h
Include/memoryobject.h
Include/methodobject.h
Include/moduleobject.h
Include/py_curses.h
Include/pycapsule.h
Include/rangeobject.h
Include/setobject.h
Include/sliceobject.h
Include/traceback.h
Include/tupleobject.h
Include/unicodeobject.h
Include/weakrefobject.h

index 0a661ffa75487dbceb98fc2084bc943b7a8e7628..ca21fbfad8e82776ec4dc3dd2fab9ca527fb8705 100644 (file)
@@ -9,7 +9,7 @@ extern "C" {
 
 PyAPI_DATA(PyTypeObject) PyBool_Type;
 
-#define PyBool_Check(x) Py_IS_TYPE(x, &PyBool_Type)
+#define PyBool_Check(x) Py_IS_TYPE((x), &PyBool_Type)
 
 /* Py_False and Py_True are the only two bools in existence.
 Don't forget to apply Py_INCREF() when returning either!!! */
index ae2bde1c30356540223f23716469a4707b9455b1..3d53fdba6432672077aa97c2db0a58fc9cbc8414 100644 (file)
@@ -21,8 +21,8 @@ PyAPI_DATA(PyTypeObject) PyByteArray_Type;
 PyAPI_DATA(PyTypeObject) PyByteArrayIter_Type;
 
 /* Type check macros */
-#define PyByteArray_Check(self) PyObject_TypeCheck(self, &PyByteArray_Type)
-#define PyByteArray_CheckExact(self) Py_IS_TYPE(self, &PyByteArray_Type)
+#define PyByteArray_Check(self) PyObject_TypeCheck((self), &PyByteArray_Type)
+#define PyByteArray_CheckExact(self) Py_IS_TYPE((self), &PyByteArray_Type)
 
 /* Direct API functions */
 PyAPI_FUNC(PyObject *) PyByteArray_FromObject(PyObject *);
index 4c4dc40d705d71432b1d0ef713ba0a590d8367cb..ee448cd02bdab385b26227377d8b6d5b72ca45ee 100644 (file)
@@ -29,7 +29,7 @@ PyAPI_DATA(PyTypeObject) PyBytesIter_Type;
 
 #define PyBytes_Check(op) \
                  PyType_FastSubclass(Py_TYPE(op), Py_TPFLAGS_BYTES_SUBCLASS)
-#define PyBytes_CheckExact(op) Py_IS_TYPE(op, &PyBytes_Type)
+#define PyBytes_CheckExact(op) Py_IS_TYPE((op), &PyBytes_Type)
 
 PyAPI_FUNC(PyObject *) PyBytes_FromStringAndSize(const char *, Py_ssize_t);
 PyAPI_FUNC(PyObject *) PyBytes_FromString(const char *);
index c7764e43803d652b766897d7145e4354d6e3d944..ebe49a832f74141c0cc059e72a15c01edf937dba 100644 (file)
@@ -10,8 +10,8 @@ extern "C" {
 
 PyAPI_DATA(PyTypeObject) PyComplex_Type;
 
-#define PyComplex_Check(op) PyObject_TypeCheck(op, &PyComplex_Type)
-#define PyComplex_CheckExact(op) Py_IS_TYPE(op, &PyComplex_Type)
+#define PyComplex_Check(op) PyObject_TypeCheck((op), &PyComplex_Type)
+#define PyComplex_CheckExact(op) Py_IS_TYPE((op), &PyComplex_Type)
 
 PyAPI_FUNC(PyObject *) PyComplex_FromDoubles(double real, double imag);
 
index 0cc2656ece2a4a52503be47f58b1c5c9c046c1cf..47a6a491497ea030863fb71b7b21db5560f77ed1 100644 (file)
@@ -15,7 +15,7 @@ typedef struct {
 
 PyAPI_DATA(PyTypeObject) PyCell_Type;
 
-#define PyCell_Check(op) Py_IS_TYPE(op, &PyCell_Type)
+#define PyCell_Check(op) Py_IS_TYPE((op), &PyCell_Type)
 
 PyAPI_FUNC(PyObject *) PyCell_New(PyObject *);
 PyAPI_FUNC(PyObject *) PyCell_Get(PyObject *);
index 80df8842eb4f784144983a6a213b80389a801456..d748e2cab18b8272a304115ada77c98218f15310 100644 (file)
@@ -19,7 +19,7 @@ typedef struct {
 
 PyAPI_DATA(PyTypeObject) PyMethod_Type;
 
-#define PyMethod_Check(op) Py_IS_TYPE(op, &PyMethod_Type)
+#define PyMethod_Check(op) Py_IS_TYPE((op), &PyMethod_Type)
 
 PyAPI_FUNC(PyObject *) PyMethod_New(PyObject *, PyObject *);
 
@@ -40,7 +40,7 @@ typedef struct {
 
 PyAPI_DATA(PyTypeObject) PyInstanceMethod_Type;
 
-#define PyInstanceMethod_Check(op) Py_IS_TYPE(op, &PyInstanceMethod_Type)
+#define PyInstanceMethod_Check(op) Py_IS_TYPE((op), &PyInstanceMethod_Type)
 
 PyAPI_FUNC(PyObject *) PyInstanceMethod_New(PyObject *);
 PyAPI_FUNC(PyObject *) PyInstanceMethod_Function(PyObject *);
index 1812617d3c306710b4a74af92c4e7eeadb6a2187..8e65474bb48e22a1502c1f6575f25a44f2bc13ad 100644 (file)
@@ -137,7 +137,7 @@ struct PyCodeObject _PyCode_DEF(1);
 
 PyAPI_DATA(PyTypeObject) PyCode_Type;
 
-#define PyCode_Check(op) Py_IS_TYPE(op, &PyCode_Type)
+#define PyCode_Check(op) Py_IS_TYPE((op), &PyCode_Type)
 #define PyCode_GetNumFree(op) ((op)->co_nfreevars)
 #define _PyCode_CODE(CO) ((_Py_CODEUNIT *)(CO)->co_code_adaptive)
 #define _PyCode_NBYTES(CO) (Py_SIZE(CO) * (Py_ssize_t)sizeof(_Py_CODEUNIT))
index 4db079f7633f48b2bb4d51339c795886b5734902..9879fc7192ebb8f60fe81c6fc8682316ca5b336b 100644 (file)
@@ -15,9 +15,9 @@ PyAPI_DATA(PyTypeObject) PyContextToken_Type;
 typedef struct _pycontexttokenobject PyContextToken;
 
 
-#define PyContext_CheckExact(o) Py_IS_TYPE(o, &PyContext_Type)
-#define PyContextVar_CheckExact(o) Py_IS_TYPE(o, &PyContextVar_Type)
-#define PyContextToken_CheckExact(o) Py_IS_TYPE(o, &PyContextToken_Type)
+#define PyContext_CheckExact(o) Py_IS_TYPE((o), &PyContext_Type)
+#define PyContextVar_CheckExact(o) Py_IS_TYPE((o), &PyContextVar_Type)
+#define PyContextToken_CheckExact(o) Py_IS_TYPE((o), &PyContextToken_Type)
 
 
 PyAPI_FUNC(PyObject *) PyContext_New(void);
index 9cd711e43559a608db34ed5757e8a2d77b37b81c..a509e2c58056871a8bbbdff303b05b1f2bf67e2b 100644 (file)
@@ -8,7 +8,7 @@
 
 PyAPI_DATA(PyTypeObject) PyFrame_Type;
 
-#define PyFrame_Check(op) Py_IS_TYPE(op, &PyFrame_Type)
+#define PyFrame_Check(op) Py_IS_TYPE((op), &PyFrame_Type)
 
 PyAPI_FUNC(PyFrameObject *) PyFrame_New(PyThreadState *, PyCodeObject *,
                                         PyObject *, PyObject *);
index 4294fc0cdfc57e971868985ec0544fa4ea911e6f..05f76656c4bf1d738a90768ff9668baf189bda75 100644 (file)
@@ -60,7 +60,7 @@ typedef struct {
 
 PyAPI_DATA(PyTypeObject) PyFunction_Type;
 
-#define PyFunction_Check(op) Py_IS_TYPE(op, &PyFunction_Type)
+#define PyFunction_Check(op) Py_IS_TYPE((op), &PyFunction_Type)
 
 PyAPI_FUNC(PyObject *) PyFunction_New(PyObject *, PyObject *);
 PyAPI_FUNC(PyObject *) PyFunction_NewWithQualName(PyObject *, PyObject *, PyObject *);
index 40eaa19d3fad94066d56de7287af9a347f9d1c37..6127ba7babb80f292daae75cc3c96412517c14be 100644 (file)
@@ -37,8 +37,8 @@ typedef struct {
 
 PyAPI_DATA(PyTypeObject) PyGen_Type;
 
-#define PyGen_Check(op) PyObject_TypeCheck(op, &PyGen_Type)
-#define PyGen_CheckExact(op) Py_IS_TYPE(op, &PyGen_Type)
+#define PyGen_Check(op) PyObject_TypeCheck((op), &PyGen_Type)
+#define PyGen_CheckExact(op) Py_IS_TYPE((op), &PyGen_Type)
 
 PyAPI_FUNC(PyObject *) PyGen_New(PyFrameObject *);
 PyAPI_FUNC(PyObject *) PyGen_NewWithQualName(PyFrameObject *,
@@ -57,7 +57,7 @@ typedef struct {
 PyAPI_DATA(PyTypeObject) PyCoro_Type;
 PyAPI_DATA(PyTypeObject) _PyCoroWrapper_Type;
 
-#define PyCoro_CheckExact(op) Py_IS_TYPE(op, &PyCoro_Type)
+#define PyCoro_CheckExact(op) Py_IS_TYPE((op), &PyCoro_Type)
 PyAPI_FUNC(PyObject *) PyCoro_New(PyFrameObject *,
     PyObject *name, PyObject *qualname);
 
@@ -76,7 +76,7 @@ PyAPI_DATA(PyTypeObject) _PyAsyncGenAThrow_Type;
 PyAPI_FUNC(PyObject *) PyAsyncGen_New(PyFrameObject *,
     PyObject *name, PyObject *qualname);
 
-#define PyAsyncGen_CheckExact(op) Py_IS_TYPE(op, &PyAsyncGen_Type)
+#define PyAsyncGen_CheckExact(op) Py_IS_TYPE((op), &PyAsyncGen_Type)
 
 
 #undef _PyGenObject_HEAD
index eac9e0829376b430e19370f6e5257104e82d82cc..d541e1549480417fbce8933e222821ef8aab6247 100644 (file)
@@ -31,8 +31,8 @@ typedef struct {
 
 PyAPI_DATA(PyTypeObject) PyCMethod_Type;
 
-#define PyCMethod_CheckExact(op) Py_IS_TYPE(op, &PyCMethod_Type)
-#define PyCMethod_Check(op) PyObject_TypeCheck(op, &PyCMethod_Type)
+#define PyCMethod_CheckExact(op) Py_IS_TYPE((op), &PyCMethod_Type)
+#define PyCMethod_Check(op) PyObject_TypeCheck((op), &PyCMethod_Type)
 
 
 /* Static inline functions for direct access to these values.
index e070413017d801c8c41d430cfb8431371987bf45..ce54d4836c3d2e84dcb3cf0d7580b0a9fbad3e1a 100644 (file)
@@ -18,8 +18,8 @@ PyAPI_DATA(PyTypeObject) PyODictKeys_Type;
 PyAPI_DATA(PyTypeObject) PyODictItems_Type;
 PyAPI_DATA(PyTypeObject) PyODictValues_Type;
 
-#define PyODict_Check(op) PyObject_TypeCheck(op, &PyODict_Type)
-#define PyODict_CheckExact(op) Py_IS_TYPE(op, &PyODict_Type)
+#define PyODict_Check(op) PyObject_TypeCheck((op), &PyODict_Type)
+#define PyODict_CheckExact(op) Py_IS_TYPE((op), &PyODict_Type)
 #define PyODict_SIZE(op) PyDict_GET_SIZE((op))
 
 PyAPI_FUNC(PyObject *) PyODict_New(void);
index 0df2561dceaea04a9942b2aae18762dfc2fe806d..f3cbaeef919518cd3154ce6cd4634210aebf42de 100644 (file)
@@ -12,7 +12,7 @@ extern "C" {
 
 PyAPI_DATA(PyTypeObject) PyPickleBuffer_Type;
 
-#define PyPickleBuffer_Check(op) Py_IS_TYPE(op, &PyPickleBuffer_Type)
+#define PyPickleBuffer_Check(op) Py_IS_TYPE((op), &PyPickleBuffer_Type)
 
 /* Create a PickleBuffer redirecting to the given buffer-enabled object */
 PyAPI_FUNC(PyObject *) PyPickleBuffer_FromObject(PyObject *);
index a6233d8ae2512a517598d03ca65602cbe22365b4..e7fcb44d0cf9a98b9b5975dd8f37531b1db8a2a3 100644 (file)
@@ -16,7 +16,7 @@ PyAPI_DATA(PyTypeObject) PyDict_Type;
 
 #define PyDict_Check(op) \
                  PyType_FastSubclass(Py_TYPE(op), Py_TPFLAGS_DICT_SUBCLASS)
-#define PyDict_CheckExact(op) Py_IS_TYPE(op, &PyDict_Type)
+#define PyDict_CheckExact(op) Py_IS_TYPE((op), &PyDict_Type)
 
 PyAPI_FUNC(PyObject *) PyDict_New(void);
 PyAPI_FUNC(PyObject *) PyDict_GetItem(PyObject *mp, PyObject *key);
@@ -67,9 +67,9 @@ PyAPI_DATA(PyTypeObject) PyDictKeys_Type;
 PyAPI_DATA(PyTypeObject) PyDictValues_Type;
 PyAPI_DATA(PyTypeObject) PyDictItems_Type;
 
-#define PyDictKeys_Check(op) PyObject_TypeCheck(op, &PyDictKeys_Type)
-#define PyDictValues_Check(op) PyObject_TypeCheck(op, &PyDictValues_Type)
-#define PyDictItems_Check(op) PyObject_TypeCheck(op, &PyDictItems_Type)
+#define PyDictKeys_Check(op) PyObject_TypeCheck((op), &PyDictKeys_Type)
+#define PyDictValues_Check(op) PyObject_TypeCheck((op), &PyDictValues_Type)
+#define PyDictItems_Check(op) PyObject_TypeCheck((op), &PyDictItems_Type)
 /* This excludes Values, since they are not sets. */
 # define PyDictViewSet_Check(op) \
     (PyDictKeys_Check(op) || PyDictItems_Check(op))
index 9d2fff3097e8eca6dbfaefcaa517bc02ec623f8c..999441ac536e1d85785d1cea3a75ba2930fe77e3 100644 (file)
@@ -14,7 +14,7 @@ extern "C" {
 PyAPI_DATA(PyTypeObject) PyFloat_Type;
 
 #define PyFloat_Check(op) PyObject_TypeCheck(op, &PyFloat_Type)
-#define PyFloat_CheckExact(op) Py_IS_TYPE(op, &PyFloat_Type)
+#define PyFloat_CheckExact(op) Py_IS_TYPE((op), &PyFloat_Type)
 
 #define Py_RETURN_NAN return PyFloat_FromDouble(Py_NAN)
 
index 4d64288bbab494687ca37a74690f80251f0b7c72..7a674b4ee4ac0e65f17fbfe90d97f3dd1bac83f9 100644 (file)
@@ -35,7 +35,7 @@ void _PyHamt_Fini(PyInterpreterState *);
 
 /* other API */
 
-#define PyHamt_Check(o) Py_IS_TYPE(o, &_PyHamt_Type)
+#define PyHamt_Check(o) Py_IS_TYPE((o), &_PyHamt_Type)
 
 
 /* Abstract tree node. */
index 28935f4ed55012aa226783e495067605b102c3b1..2d64aba22ff9052289679a23dcc254d6ad554562 100644 (file)
@@ -77,7 +77,7 @@ typedef struct _symtable_entry {
 
 extern PyTypeObject PySTEntry_Type;
 
-#define PySTEntry_Check(op) Py_IS_TYPE(op, &PySTEntry_Type)
+#define PySTEntry_Check(op) Py_IS_TYPE((op), &PySTEntry_Type)
 
 extern long _PyST_GetSymbol(PySTEntryObject *, PyObject *);
 extern int _PyST_GetScope(PySTEntryObject *, PyObject *);
index a9ed5651a410e87c6ded94de37af2d1af3d559f0..87264635b6e1cfe02107611f79a24d404ebfb30e 100644 (file)
@@ -9,10 +9,10 @@ extern "C" {
 #endif
 
 extern PyTypeObject _PyUnion_Type;
-#define _PyUnion_Check(op) Py_IS_TYPE(op, &_PyUnion_Type)
+#define _PyUnion_Check(op) Py_IS_TYPE((op), &_PyUnion_Type)
 extern PyObject *_Py_union_type_or(PyObject *, PyObject *);
 
-#define _PyGenericAlias_Check(op) PyObject_TypeCheck(op, &Py_GenericAliasType)
+#define _PyGenericAlias_Check(op) PyObject_TypeCheck((op), &Py_GenericAliasType)
 extern PyObject *_Py_subs_parameters(PyObject *, PyObject *, PyObject *, PyObject *);
 extern PyObject *_Py_make_parameters(PyObject *);
 extern PyObject *_Py_union_args(PyObject *self);
index 6454611aebef8a6cad8b923354318374e03fe26f..fff30f7176fdeb7987bf1bec3a6391c9c4176725 100644 (file)
@@ -11,12 +11,12 @@ PyAPI_DATA(PyTypeObject) PyCallIter_Type;
 extern PyTypeObject _PyAnextAwaitable_Type;
 #endif
 
-#define PySeqIter_Check(op) Py_IS_TYPE(op, &PySeqIter_Type)
+#define PySeqIter_Check(op) Py_IS_TYPE((op), &PySeqIter_Type)
 
 PyAPI_FUNC(PyObject *) PySeqIter_New(PyObject *);
 
 
-#define PyCallIter_Check(op) Py_IS_TYPE(op, &PyCallIter_Type)
+#define PyCallIter_Check(op) Py_IS_TYPE((op), &PyCallIter_Type)
 
 PyAPI_FUNC(PyObject *) PyCallIter_New(PyObject *, PyObject *);
 
index eff42c188f1ff168bbf2dc107460ff797394a463..6b7041ba0b05d5974f63cb61aa994b0f52050324 100644 (file)
@@ -23,7 +23,7 @@ PyAPI_DATA(PyTypeObject) PyListRevIter_Type;
 
 #define PyList_Check(op) \
     PyType_FastSubclass(Py_TYPE(op), Py_TPFLAGS_LIST_SUBCLASS)
-#define PyList_CheckExact(op) Py_IS_TYPE(op, &PyList_Type)
+#define PyList_CheckExact(op) Py_IS_TYPE((op), &PyList_Type)
 
 PyAPI_FUNC(PyObject *) PyList_New(Py_ssize_t size);
 PyAPI_FUNC(Py_ssize_t) PyList_Size(PyObject *);
index 81ba1239a69ecf502965cd248a94ef8dafaabfb3..e559e238ae5a3555aa103a53a3c1262c616e3639 100644 (file)
@@ -11,7 +11,7 @@ PyAPI_DATA(PyTypeObject) PyLong_Type;
 
 #define PyLong_Check(op) \
         PyType_FastSubclass(Py_TYPE(op), Py_TPFLAGS_LONG_SUBCLASS)
-#define PyLong_CheckExact(op) Py_IS_TYPE(op, &PyLong_Type)
+#define PyLong_CheckExact(op) Py_IS_TYPE((op), &PyLong_Type)
 
 PyAPI_FUNC(PyObject *) PyLong_FromLong(long);
 PyAPI_FUNC(PyObject *) PyLong_FromUnsignedLong(unsigned long);
index 154397ce1e56d2a9e3acbce880a2063ba64f1191..19aec679a5fad16c5b9a8e21b3b9e56bd630b2f0 100644 (file)
@@ -11,7 +11,7 @@ PyAPI_DATA(PyTypeObject) _PyManagedBuffer_Type;
 #endif
 PyAPI_DATA(PyTypeObject) PyMemoryView_Type;
 
-#define PyMemoryView_Check(op) Py_IS_TYPE(op, &PyMemoryView_Type)
+#define PyMemoryView_Check(op) Py_IS_TYPE((op), &PyMemoryView_Type)
 
 #ifndef Py_LIMITED_API
 /* Get a pointer to the memoryview's private copy of the exporter's buffer. */
index c971d78a640a688596bc072f1fd6147998e65973..72af5ad933df7fd752ac7e0ce585baf47e8f8384 100644 (file)
@@ -13,8 +13,8 @@ extern "C" {
 
 PyAPI_DATA(PyTypeObject) PyCFunction_Type;
 
-#define PyCFunction_CheckExact(op) Py_IS_TYPE(op, &PyCFunction_Type)
-#define PyCFunction_Check(op) PyObject_TypeCheck(op, &PyCFunction_Type)
+#define PyCFunction_CheckExact(op) Py_IS_TYPE((op), &PyCFunction_Type)
+#define PyCFunction_Check(op) PyObject_TypeCheck((op), &PyCFunction_Type)
 
 typedef PyObject *(*PyCFunction)(PyObject *, PyObject *);
 typedef PyObject *(*_PyCFunctionFast) (PyObject *, PyObject *const *, Py_ssize_t);
index 75abd2cf2b90508433660f97e325460c3de2897f..fbb2c5ae79444b159547c7beb687bf58af50c26f 100644 (file)
@@ -9,8 +9,8 @@ extern "C" {
 
 PyAPI_DATA(PyTypeObject) PyModule_Type;
 
-#define PyModule_Check(op) PyObject_TypeCheck(op, &PyModule_Type)
-#define PyModule_CheckExact(op) Py_IS_TYPE(op, &PyModule_Type)
+#define PyModule_Check(op) PyObject_TypeCheck((op), &PyModule_Type)
+#define PyModule_CheckExact(op) Py_IS_TYPE((op), &PyModule_Type)
 
 #if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000
 PyAPI_FUNC(PyObject *) PyModule_NewObject(
index b2c7f1bb4309c6a8020d34f9ad3ded6f03844f01..e46b08e9cc414e722b2c4da7f83c41237f8dee96 100644 (file)
@@ -64,7 +64,7 @@ typedef struct {
     char *encoding;
 } PyCursesWindowObject;
 
-#define PyCursesWindow_Check(v) Py_IS_TYPE(v, &PyCursesWindow_Type)
+#define PyCursesWindow_Check(v) Py_IS_TYPE((v), &PyCursesWindow_Type)
 
 #define PyCurses_CAPSULE_NAME "_curses._C_API"
 
index fb5d503fea73f13a254dc51b003e703b511250dd..929a9a685259fb37d8169a7d7bc5b5a0dd3782f3 100644 (file)
@@ -22,7 +22,7 @@ PyAPI_DATA(PyTypeObject) PyCapsule_Type;
 
 typedef void (*PyCapsule_Destructor)(PyObject *);
 
-#define PyCapsule_CheckExact(op) Py_IS_TYPE(op, &PyCapsule_Type)
+#define PyCapsule_CheckExact(op) Py_IS_TYPE((op), &PyCapsule_Type)
 
 
 PyAPI_FUNC(PyObject *) PyCapsule_New(
index d6af8473f9e8d33f011c6c42d6350fa00ca6ac3d..d46ce7cd41b7417f877a5277c32bb3ef033c715a 100644 (file)
@@ -19,7 +19,7 @@ PyAPI_DATA(PyTypeObject) PyRange_Type;
 PyAPI_DATA(PyTypeObject) PyRangeIter_Type;
 PyAPI_DATA(PyTypeObject) PyLongRangeIter_Type;
 
-#define PyRange_Check(op) Py_IS_TYPE(op, &PyRange_Type)
+#define PyRange_Check(op) Py_IS_TYPE((op), &PyRange_Type)
 
 #ifdef __cplusplus
 }
index fdad70644c545cbda5b29ae94b99e8ff9dbcce37..62c9e6b13f89015c02c09463612c3e608e485d40 100644 (file)
@@ -20,21 +20,21 @@ PyAPI_FUNC(int) PySet_Discard(PyObject *set, PyObject *key);
 PyAPI_FUNC(PyObject *) PySet_Pop(PyObject *set);
 PyAPI_FUNC(Py_ssize_t) PySet_Size(PyObject *anyset);
 
-#define PyFrozenSet_CheckExact(ob) Py_IS_TYPE(ob, &PyFrozenSet_Type)
+#define PyFrozenSet_CheckExact(ob) Py_IS_TYPE((ob), &PyFrozenSet_Type)
 #define PyFrozenSet_Check(ob) \
-    (Py_IS_TYPE(ob, &PyFrozenSet_Type) || \
+    (Py_IS_TYPE((ob), &PyFrozenSet_Type) || \
       PyType_IsSubtype(Py_TYPE(ob), &PyFrozenSet_Type))
 
 #define PyAnySet_CheckExact(ob) \
-    (Py_IS_TYPE(ob, &PySet_Type) || Py_IS_TYPE(ob, &PyFrozenSet_Type))
+    (Py_IS_TYPE((ob), &PySet_Type) || Py_IS_TYPE((ob), &PyFrozenSet_Type))
 #define PyAnySet_Check(ob) \
-    (Py_IS_TYPE(ob, &PySet_Type) || Py_IS_TYPE(ob, &PyFrozenSet_Type) || \
+    (Py_IS_TYPE((ob), &PySet_Type) || Py_IS_TYPE((ob), &PyFrozenSet_Type) || \
       PyType_IsSubtype(Py_TYPE(ob), &PySet_Type) || \
       PyType_IsSubtype(Py_TYPE(ob), &PyFrozenSet_Type))
 
 #define PySet_CheckExact(op) Py_IS_TYPE(op, &PySet_Type)
 #define PySet_Check(ob) \
-    (Py_IS_TYPE(ob, &PySet_Type) || \
+    (Py_IS_TYPE((ob), &PySet_Type) || \
     PyType_IsSubtype(Py_TYPE(ob), &PySet_Type))
 
 #ifndef Py_LIMITED_API
index 2c889508b4b495b56df2fc034f6f6ad5baebba89..c13863f27c2e63846b643b0d848b93d544f8159b 100644 (file)
@@ -28,7 +28,7 @@ typedef struct {
 PyAPI_DATA(PyTypeObject) PySlice_Type;
 PyAPI_DATA(PyTypeObject) PyEllipsis_Type;
 
-#define PySlice_Check(op) Py_IS_TYPE(op, &PySlice_Type)
+#define PySlice_Check(op) Py_IS_TYPE((op), &PySlice_Type)
 
 PyAPI_FUNC(PyObject *) PySlice_New(PyObject* start, PyObject* stop,
                                   PyObject* step);
index 2dfa2ada4f2c375710b3150bacb358643b66a328..2b40cc9fc3261708db590f523dc767acf3742531 100644 (file)
@@ -11,7 +11,7 @@ PyAPI_FUNC(int) PyTraceBack_Print(PyObject *, PyObject *);
 
 /* Reveal traceback type so we can typecheck traceback objects */
 PyAPI_DATA(PyTypeObject) PyTraceBack_Type;
-#define PyTraceBack_Check(v) Py_IS_TYPE(v, &PyTraceBack_Type)
+#define PyTraceBack_Check(v) Py_IS_TYPE((v), &PyTraceBack_Type)
 
 
 #ifndef Py_LIMITED_API
index dc68e3fc5c6d8807a4bd6ca1b5c0368f03db0a1a..1f9ab54be65f87e5e78b1ea192a27886b2e2cbdb 100644 (file)
@@ -25,7 +25,7 @@ PyAPI_DATA(PyTypeObject) PyTupleIter_Type;
 
 #define PyTuple_Check(op) \
                  PyType_FastSubclass(Py_TYPE(op), Py_TPFLAGS_TUPLE_SUBCLASS)
-#define PyTuple_CheckExact(op) Py_IS_TYPE(op, &PyTuple_Type)
+#define PyTuple_CheckExact(op) Py_IS_TYPE((op), &PyTuple_Type)
 
 PyAPI_FUNC(PyObject *) PyTuple_New(Py_ssize_t size);
 PyAPI_FUNC(Py_ssize_t) PyTuple_Size(PyObject *);
index 27fde229022a1c19f1afbbaed6bce65c3cedc1b8..74474f5bb8f976f5b865be4b82ef2b10b3598bd2 100644 (file)
@@ -113,7 +113,7 @@ PyAPI_DATA(PyTypeObject) PyUnicodeIter_Type;
 
 #define PyUnicode_Check(op) \
     PyType_FastSubclass(Py_TYPE(op), Py_TPFLAGS_UNICODE_SUBCLASS)
-#define PyUnicode_CheckExact(op) Py_IS_TYPE(op, &PyUnicode_Type)
+#define PyUnicode_CheckExact(op) Py_IS_TYPE((op), &PyUnicode_Type)
 
 /* --- Constants ---------------------------------------------------------- */
 
index f071e9c759a64142e1c33c4c81c1c853a42282ff..8e1fa1b9286a77c3ea5405a061e3997ae84361b3 100644 (file)
@@ -12,12 +12,12 @@ PyAPI_DATA(PyTypeObject) _PyWeakref_RefType;
 PyAPI_DATA(PyTypeObject) _PyWeakref_ProxyType;
 PyAPI_DATA(PyTypeObject) _PyWeakref_CallableProxyType;
 
-#define PyWeakref_CheckRef(op) PyObject_TypeCheck(op, &_PyWeakref_RefType)
+#define PyWeakref_CheckRef(op) PyObject_TypeCheck((op), &_PyWeakref_RefType)
 #define PyWeakref_CheckRefExact(op) \
-        Py_IS_TYPE(op, &_PyWeakref_RefType)
+        Py_IS_TYPE((op), &_PyWeakref_RefType)
 #define PyWeakref_CheckProxy(op) \
-        (Py_IS_TYPE(op, &_PyWeakref_ProxyType) || \
-         Py_IS_TYPE(op, &_PyWeakref_CallableProxyType))
+        (Py_IS_TYPE((op), &_PyWeakref_ProxyType) \
+         || Py_IS_TYPE((op), &_PyWeakref_CallableProxyType))
 
 #define PyWeakref_Check(op) \
         (PyWeakref_CheckRef(op) || PyWeakref_CheckProxy(op))