Revised noexcept expressions in back-off strategies
authorkhizmax <libcds.dev@gmail.com>
Wed, 26 Nov 2014 07:04:08 +0000 (10:04 +0300)
committerkhizmax <libcds.dev@gmail.com>
Wed, 26 Nov 2014 07:04:08 +0000 (10:04 +0300)
cds/algo/backoff_strategy.h
cds/intrusive/treiber_stack.h

index 6cb479efcd700dc23868310c4a1a48d4b61143c8..c80ea829d43d365d7a55d220c4a13dabb98b1b4e 100644 (file)
@@ -59,7 +59,7 @@ namespace cds {
             {}
 
             template <typename Predicate>
-            bool operator()(Predicate pr) CDS_NOEXCEPT_( noexcept(Predicate()()) )
+            bool operator()(Predicate pr) CDS_NOEXCEPT
             {
                 return pr();
             }
@@ -78,7 +78,7 @@ namespace cds {
             }
 
             template <typename Predicate>
-            bool operator()( Predicate pr ) CDS_NOEXCEPT_( noexcept( Predicate()() ) )
+            bool operator()( Predicate pr ) CDS_NOEXCEPT
             {
                 if ( pr() )
                     return true;
@@ -106,7 +106,7 @@ namespace cds {
             }
 
             template <typename Predicate>
-            bool operator()( Predicate pr ) CDS_NOEXCEPT_( noexcept( Predicate()() ) )
+            bool operator()( Predicate pr ) CDS_NOEXCEPT
             {
                 if ( pr() )
                     return true;
@@ -137,7 +137,7 @@ namespace cds {
             }
 
             template <typename Predicate>
-            bool operator()( Predicate pr ) CDS_NOEXCEPT_( noexcept( Predicate()() ) )
+            bool operator()( Predicate pr ) CDS_NOEXCEPT
             {
                 if ( pr() )
                     return true;
@@ -264,7 +264,7 @@ namespace cds {
             }
 
             template <typename Predicate>
-            bool operator()( Predicate pr ) CDS_NOEXCEPT_( noexcept(Predicate()()) && noexcept( spin_backoff()()) && noexcept( yield_backoff()()))
+            bool operator()( Predicate pr ) CDS_NOEXCEPT_(noexcept( spin_backoff()()) && noexcept( yield_backoff()()))
             {
                 if ( m_nExpCur <= m_nExpMax ) {
                     for ( size_t n = 0; n < m_nExpCur; ++n ) {
@@ -371,7 +371,7 @@ namespace cds {
             }
 
             template <typename Predicate>
-            bool operator()( Predicate pr ) const CDS_NOEXCEPT_( noexcept(Predicate()()))
+            bool operator()( Predicate pr ) const CDS_NOEXCEPT
             {
                 for ( unsigned int i = 0; i < m_nTimeout; i += 2 ) {
                     if ( pr() )
index 99c22cb2dfbff276fdd7bd17709f306c64cdcf57..9ccaa87e6b02fd4f7ba9046f0d761cb6d5318289 100644 (file)
@@ -391,7 +391,7 @@ namespace cds { namespace intrusive {
                     }
 
                     // Wait for colliding operation
-                    bkoff( [&op]() -> bool { return op.nStatus.load( atomics::memory_order_acquire ) != op_busy; } );
+                    bkoff( [&op]() CDS_NOEXCEPT -> bool { return op.nStatus.load( atomics::memory_order_acquire ) != op_busy; } );
                     {
                         slot_scoped_lock l( slot.lock );
                         if ( slot.pRec == myRec )