aboutsummaryrefslogtreecommitdiff
path: root/gcc/ginclude/stdatomic.h
diff options
context:
space:
mode:
authorThomas Koenig <tkoenig@gcc.gnu.org>2021-01-03 21:40:04 +0100
committerThomas Koenig <tkoenig@gcc.gnu.org>2021-01-03 21:40:04 +0100
commitafae4a55ccaa0de95ea11e5f634084db6ab2f444 (patch)
treed632cc867d10410ba9fb750523be790b86846ac4 /gcc/ginclude/stdatomic.h
parent9d9a82ec8478ff52c7a9d61f58cd2a7b6295b5f9 (diff)
parentd2eb616a0f7bea78164912aa438c29fe1ef5774a (diff)
downloadgcc-afae4a55ccaa0de95ea11e5f634084db6ab2f444.zip
gcc-afae4a55ccaa0de95ea11e5f634084db6ab2f444.tar.gz
gcc-afae4a55ccaa0de95ea11e5f634084db6ab2f444.tar.bz2
Merge branch 'master' into devel/coarray_native
Diffstat (limited to 'gcc/ginclude/stdatomic.h')
-rw-r--r--gcc/ginclude/stdatomic.h14
1 files changed, 7 insertions, 7 deletions
diff --git a/gcc/ginclude/stdatomic.h b/gcc/ginclude/stdatomic.h
index b968164..7c2e08a 100644
--- a/gcc/ginclude/stdatomic.h
+++ b/gcc/ginclude/stdatomic.h
@@ -107,7 +107,7 @@ extern void atomic_signal_fence (memory_order);
#define ATOMIC_POINTER_LOCK_FREE __GCC_ATOMIC_POINTER_LOCK_FREE
-/* Note that these macros require __typeof__ and __auto_type to remove
+/* Note that these macros require __auto_type to remove
_Atomic qualifiers (and const qualifiers, if those are valid on
macro operands).
@@ -122,7 +122,7 @@ extern void atomic_signal_fence (memory_order);
__extension__ \
({ \
__auto_type __atomic_store_ptr = (PTR); \
- __typeof__ (*__atomic_store_ptr) __atomic_store_tmp = (VAL); \
+ __typeof__ ((void)0, *__atomic_store_ptr) __atomic_store_tmp = (VAL); \
__atomic_store (__atomic_store_ptr, &__atomic_store_tmp, (MO)); \
})
@@ -134,7 +134,7 @@ extern void atomic_signal_fence (memory_order);
__extension__ \
({ \
__auto_type __atomic_load_ptr = (PTR); \
- __typeof__ (*__atomic_load_ptr) __atomic_load_tmp; \
+ __typeof__ ((void)0, *__atomic_load_ptr) __atomic_load_tmp; \
__atomic_load (__atomic_load_ptr, &__atomic_load_tmp, (MO)); \
__atomic_load_tmp; \
})
@@ -146,8 +146,8 @@ extern void atomic_signal_fence (memory_order);
__extension__ \
({ \
__auto_type __atomic_exchange_ptr = (PTR); \
- __typeof__ (*__atomic_exchange_ptr) __atomic_exchange_val = (VAL); \
- __typeof__ (*__atomic_exchange_ptr) __atomic_exchange_tmp; \
+ __typeof__ ((void)0, *__atomic_exchange_ptr) __atomic_exchange_val = (VAL); \
+ __typeof__ ((void)0, *__atomic_exchange_ptr) __atomic_exchange_tmp; \
__atomic_exchange (__atomic_exchange_ptr, &__atomic_exchange_val, \
&__atomic_exchange_tmp, (MO)); \
__atomic_exchange_tmp; \
@@ -161,7 +161,7 @@ extern void atomic_signal_fence (memory_order);
__extension__ \
({ \
__auto_type __atomic_compare_exchange_ptr = (PTR); \
- __typeof__ (*__atomic_compare_exchange_ptr) __atomic_compare_exchange_tmp \
+ __typeof__ ((void)0, *__atomic_compare_exchange_ptr) __atomic_compare_exchange_tmp \
= (DES); \
__atomic_compare_exchange (__atomic_compare_exchange_ptr, (VAL), \
&__atomic_compare_exchange_tmp, 0, \
@@ -176,7 +176,7 @@ extern void atomic_signal_fence (memory_order);
__extension__ \
({ \
__auto_type __atomic_compare_exchange_ptr = (PTR); \
- __typeof__ (*__atomic_compare_exchange_ptr) __atomic_compare_exchange_tmp \
+ __typeof__ ((void)0, *__atomic_compare_exchange_ptr) __atomic_compare_exchange_tmp \
= (DES); \
__atomic_compare_exchange (__atomic_compare_exchange_ptr, (VAL), \
&__atomic_compare_exchange_tmp, 1, \