Index: llvm-toolchain-snapshot_12~++20210126092700+956d8e02e8a5/libcxx/include/atomic =================================================================== --- llvm-toolchain-snapshot_12~++20210126092700+956d8e02e8a5.orig/libcxx/include/atomic +++ llvm-toolchain-snapshot_12~++20210126092700+956d8e02e8a5/libcxx/include/atomic @@ -2791,10 +2791,15 @@ typedef conditional<_LIBCPP_CONTENTION_L typedef conditional<_LIBCPP_CONTENTION_LOCK_FREE, __cxx_contention_t, unsigned char>::type __libcpp_unsigned_lock_free; #else // No signed/unsigned lock-free types +#define NO_LOCK_FREE #endif +#ifndef NO_LOCK_FREE typedef atomic<__libcpp_signed_lock_free> atomic_signed_lock_free; typedef atomic<__libcpp_unsigned_lock_free> atomic_unsigned_lock_free; +#endif + +#undef NO_LOCK_FREE #define ATOMIC_FLAG_INIT {false} #define ATOMIC_VAR_INIT(__v) {__v}