diff options
author | James Almer <jamrial@gmail.com> | 2017-03-07 00:04:46 -0300 |
---|---|---|
committer | James Almer <jamrial@gmail.com> | 2017-03-18 12:13:46 -0300 |
commit | 824d4062a172bd435fea7cbf8d6b55583c73e70e (patch) | |
tree | cb8ff7b85a582745e5366c10949acc420c383a51 | |
parent | 3796fb2692f87d0000fc0aa4572ac025a6469c2b (diff) | |
download | ffmpeg-streaming-824d4062a172bd435fea7cbf8d6b55583c73e70e.zip ffmpeg-streaming-824d4062a172bd435fea7cbf8d6b55583c73e70e.tar.gz |
compat/atomics/gcc: use __typeof__ instead of typeof
The typeof keyword is apparently not available when using the -std=c99 option.
Fixes the use of C11 atomic functions with old GCC.
Reviewed-by: Muhammad Faiz <mfcc64@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
-rw-r--r-- | compat/atomics/gcc/stdatomic.h | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/compat/atomics/gcc/stdatomic.h b/compat/atomics/gcc/stdatomic.h index 41cadde..2b64687 100644 --- a/compat/atomics/gcc/stdatomic.h +++ b/compat/atomics/gcc/stdatomic.h @@ -100,8 +100,8 @@ do { \ #define atomic_exchange(object, desired) \ ({ \ - typeof(object) _obj = (object); \ - typeof(*object) _old; \ + __typeof__(object) _obj = (object); \ + __typeof__(*object) _old; \ do \ _old = atomic_load(_obj); \ while (!__sync_bool_compare_and_swap(_obj, _old, (desired))); \ @@ -113,8 +113,8 @@ do { \ #define atomic_compare_exchange_strong(object, expected, desired) \ ({ \ - typeof(object) _exp = (expected); \ - typeof(*object) _old = *_exp; \ + __typeof__(object) _exp = (expected); \ + __typeof__(*object) _old = *_exp; \ *_exp = __sync_val_compare_and_swap((object), _old, (desired)); \ *_exp == _old; \ }) |