]> git.lyx.org Git - lyx.git/blobdiff - 3rdparty/boost/boost/smart_ptr/detail/spinlock_std_atomic.hpp
Update to boost 1.72
[lyx.git] / 3rdparty / boost / boost / smart_ptr / detail / spinlock_std_atomic.hpp
index a61c1cd96d1a20620ea455c0bd09200a1789e092..b1d1eea74bc92d9329116347f04ccb2274c2cab0 100644 (file)
@@ -16,6 +16,7 @@
 //
 
 #include <boost/smart_ptr/detail/yield_k.hpp>
+#include <boost/config.hpp>
 #include <atomic>
 
 namespace boost
@@ -32,12 +33,12 @@ public:
 
 public:
 
-    bool try_lock()
+    bool try_lock() BOOST_NOEXCEPT
     {
         return !v_.test_and_set( std::memory_order_acquire );
     }
 
-    void lock()
+    void lock() BOOST_NOEXCEPT
     {
         for( unsigned k = 0; !try_lock(); ++k )
         {
@@ -45,7 +46,7 @@ public:
         }
     }
 
-    void unlock()
+    void unlock() BOOST_NOEXCEPT
     {
         v_ .clear( std::memory_order_release );
     }
@@ -63,12 +64,12 @@ public:
 
     public:
 
-        explicit scoped_lock( spinlock & sp ): sp_( sp )
+        explicit scoped_lock( spinlock & sp ) BOOST_NOEXCEPT: sp_( sp )
         {
             sp.lock();
         }
 
-        ~scoped_lock()
+        ~scoped_lock() /*BOOST_NOEXCEPT*/
         {
             sp_.unlock();
         }