gh-105059: Use GCC/clang extension for PyObject union (#107232)

Anonymous union is new in C11. To prevent compiler warning
when using -pedantic compiler option, use Clang and GCC
extension on C99 and older.
This commit is contained in:
Victor Stinner 2023-07-25 14:27:48 +02:00 committed by GitHub
parent 2425346fee
commit 6261585d63
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -165,6 +165,11 @@ check by comparing the reference count field to the immortality reference count.
*/
struct _object {
_PyObject_HEAD_EXTRA
#if (defined(__GNUC__) || defined(__clang__)) \
&& !(defined __STDC_VERSION__ && __STDC_VERSION__ >= 201112L)
// On C99 and older, anonymous union is a GCC and clang extension
__extension__
#endif
union {
Py_ssize_t ob_refcnt;
#if SIZEOF_VOID_P > 4