Patch contributed by Dev Dude for mingw64 port.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@162188 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/include/thread b/include/thread
index b6b7000..d81e853 100644
--- a/include/thread
+++ b/include/thread
@@ -227,7 +227,7 @@
_LIBCPP_INLINE_VISIBILITY
__thread_id(pthread_t __id) : __id_(__id) {}
- friend __thread_id this_thread::get_id();
+ friend __thread_id this_thread::get_id() _NOEXCEPT;
friend class _LIBCPP_VISIBLE thread;
friend struct _LIBCPP_VISIBLE hash<__thread_id>;
};
diff --git a/src/memory.cpp b/src/memory.cpp
index 1c108b8..3884a2b 100644
--- a/src/memory.cpp
+++ b/src/memory.cpp
@@ -119,6 +119,8 @@
#endif // _LIBCPP_NO_RTTI
+#if __has_feature(cxx_atomic)
+
static const std::size_t __sp_mut_count = 16;
static mutex mut_back[__sp_mut_count];
@@ -162,6 +164,7 @@
return muts[hash<const void*>()(p) & (__sp_mut_count-1)];
}
+#endif // __has_feature(cxx_atomic)
void
declare_reachable(void*)