summaryrefslogtreecommitdiffstats
path: root/libcxx/include/shared_mutex
diff options
context:
space:
mode:
authorJonathan Roelofs <jonathan@codesourcery.com>2014-09-05 19:45:05 +0000
committerJonathan Roelofs <jonathan@codesourcery.com>2014-09-05 19:45:05 +0000
commitb3fcc67f8f13cd95d36ed29d0ae1308decb9e099 (patch)
tree0c01716be284ed8200fde073b145887bea7b4508 /libcxx/include/shared_mutex
parentd3e121331bafa274b654bf2e1691cde628b7ff55 (diff)
downloadbcm5719-llvm-b3fcc67f8f13cd95d36ed29d0ae1308decb9e099.tar.gz
bcm5719-llvm-b3fcc67f8f13cd95d36ed29d0ae1308decb9e099.zip
Allow libc++ to be built on systems without POSIX threads
If you're crazy enough to want this sort of thing, then add -D_LIBCPP_HAS_NO_THREADS to your CXXFLAGS and --param=additiona_features=libcpp-has-no-threads to your lit commnad line. http://reviews.llvm.org/D3969 llvm-svn: 217271
Diffstat (limited to 'libcxx/include/shared_mutex')
-rw-r--r--libcxx/include/shared_mutex6
1 files changed, 6 insertions, 0 deletions
diff --git a/libcxx/include/shared_mutex b/libcxx/include/shared_mutex
index 00f816dc4a0..9b7f0bf7735 100644
--- a/libcxx/include/shared_mutex
+++ b/libcxx/include/shared_mutex
@@ -112,6 +112,10 @@ template <class Mutex>
#pragma GCC system_header
#endif
+#ifdef _LIBCPP_HAS_NO_THREADS
+#error <shared_mutex> is not supported on this single threaded system
+#else // !_LIBCPP_HAS_NO_THREADS
+
_LIBCPP_BEGIN_NAMESPACE_STD
class _LIBCPP_TYPE_VIS shared_timed_mutex
@@ -414,6 +418,8 @@ swap(shared_lock<_Mutex>& __x, shared_lock<_Mutex>& __y) _NOEXCEPT
_LIBCPP_END_NAMESPACE_STD
+#endif // !_LIBCPP_HAS_NO_THREADS
+
#endif // _LIBCPP_STD_VER > 11
#endif // _LIBCPP_SHARED_MUTEX
OpenPOWER on IntegriCloud