patch by Jesse Towner, and bug fix by Sebastian Redl
llvm-svn: 110724
Cr-Mirrored-From: sso://chromium.googlesource.com/_direct/external/github.com/llvm/llvm-project
Cr-Mirrored-Commit: eb2692571fab1cc9996c0b972aee5e1c48ae0989
diff --git a/include/thread b/include/thread
index 5fcd2c9..6bf3189 100644
--- a/include/thread
+++ b/include/thread
@@ -178,9 +178,12 @@
{
pthread_t __t_;
-#ifndef _LIBCPP_MOVE
- thread(const thread&); // = delete;
- thread& operator=(const thread&); // = delete;
+#ifndef _LIBCPP_HAS_NO_DELETED_FUNCTIONS
+ thread(const thread&) = delete;
+ thread& operator=(const thread&) = delete;
+#else
+ thread(const thread&);
+ thread& operator=(const thread&);
#endif
public:
typedef __thread_id id;
@@ -201,9 +204,7 @@
~thread();
#ifdef _LIBCPP_MOVE
- thread(const thread&) = delete;
thread(thread&& __t) : __t_(__t.__t_) {__t.__t_ = 0;}
- thread& operator=(const thread&) = delete;
thread& operator=(thread&& __t);
#endif