diff --git a/include/etl/atomic/atomic_gcc_sync.h b/include/etl/atomic/atomic_gcc_sync.h index de19f443..ef673eb9 100644 --- a/include/etl/atomic/atomic_gcc_sync.h +++ b/include/etl/atomic/atomic_gcc_sync.h @@ -607,12 +607,12 @@ namespace etl // Exchange T* exchange(T* v, etl::memory_order order = etl::memory_order_seq_cst) { - return (T*)__sync_lock_test_and_set(&value, v); + return (T*)__sync_lock_test_and_set(&value, uintptr_t(v)); } T* exchange(T* v, etl::memory_order order = etl::memory_order_seq_cst) volatile { - return (T*)__sync_lock_test_and_set(&value, v); + return (T*)__sync_lock_test_and_set(&value, uintptr_t(v)); } // Compare exchange weak