aboutsummaryrefslogtreecommitdiff
path: root/src/future.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/future.cpp')
-rw-r--r--src/future.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/future.cpp b/src/future.cpp
index 70919ab7df84..0c5c2c4488d2 100644
--- a/src/future.cpp
+++ b/src/future.cpp
@@ -7,6 +7,10 @@
//
//===----------------------------------------------------------------------===//
+#include "__config"
+
+#ifndef _LIBCPP_HAS_NO_THREADS
+
#include "future"
#include "string"
@@ -26,8 +30,13 @@ __future_error_category::name() const _NOEXCEPT
return "future";
}
+#if defined(__clang__)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wswitch"
+#elif defined(__GNUC__) || defined(__GNUG__)
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wswitch"
+#endif
string
__future_error_category::message(int ev) const
@@ -50,7 +59,11 @@ __future_error_category::message(int ev) const
return string("unspecified future_errc value\n");
}
+#if defined(__clang__)
#pragma clang diagnostic pop
+#elif defined(__GNUC__) || defined(__GNUG__)
+#pragma GCC diagnostic pop
+#endif
const error_category&
future_category() _NOEXCEPT
@@ -289,3 +302,5 @@ shared_future<void>::operator=(const shared_future& __rhs)
}
_LIBCPP_END_NAMESPACE_STD
+
+#endif // !_LIBCPP_HAS_NO_THREADS