New comment by mvf on void-packages repository https://github.com/void-linux/void-packages/pull/23498#issuecomment-656750681 Comment: Atomics are always used. It won't even compile without. From [lib/Alembic/AbcCoreOgawa/StreamManager.cpp](https://github.com/alembic/alembic/blob/HEAD/lib/Alembic/AbcCoreOgawa/StreamManager.cpp): ```c++ // C++11 std::atomics version #if !defined( ALEMBIC_LIB_USES_TR1 ) && __cplusplus >= 201103L #define COMPARE_EXCHANGE( V, COMP, EXCH ) V.compare_exchange_weak( COMP, EXCH, std::memory_order_seq_cst, std::memory_order_seq_cst ) ... // gcc 4.8 and above not using C++11 #elif defined(__GNUC__) && __GNUC__ >= 4 && __GNUC_MINOR__ >= 8 #define COMPARE_EXCHANGE( V, COMP, EXCH ) __atomic_compare_exchange_n( &V, &COMP, EXCH, false, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST ) // gcc 4.1 and above not using C++11 #elif defined(__GNUC__) && __GNUC__ >= 4 && __GNUC_MINOR__ >= 1 #define COMPARE_EXCHANGE( V, COMP, EXCH ) __sync_bool_compare_and_swap( &V, COMP, EXCH ) #else #error Please contact alembic-discuss@googlegroups.com for support. #endif ```