Fix buildbot failures after r359159.
authorRichard Smith <richard-llvm@metafoo.co.uk>
Thu, 25 Apr 2019 20:00:06 +0000 (20:00 +0000)
committerRichard Smith <richard-llvm@metafoo.co.uk>
Thu, 25 Apr 2019 20:00:06 +0000 (20:00 +0000)
std::mutex was not actually is_nothrow_default_constructible in C++98/C++03,
because the variable declaration

  std::mutex M;

... could throw an exception from the mutex destructor. Fix it by marking the
destructor as non-throwing. This has no effect in C++11 onwards, because
destructors are non-throwing by default in those language modes.

llvm-svn: 359229

libcxx/include/__mutex_base

index 008be95..0c34a3b 100644 (file)
@@ -51,7 +51,7 @@ public:
 #else
     mutex() _NOEXCEPT {__m_ = (__libcpp_mutex_t)_LIBCPP_MUTEX_INITIALIZER;}
 #endif
-    ~mutex();
+    ~mutex() _NOEXCEPT;
 
 private:
     mutex(const mutex&);// = delete;