$include_dir="/home/hyper-archives/boost-commit/include"; include("$include_dir/msg-header.inc") ?>
Subject: [Boost-commit] svn:boost r57024 - sandbox/stm/branches/vbe/boost/synchro/pthread
From: vicente.botet_at_[hidden]
Date: 2009-10-20 16:29:04
Author: viboes
Date: 2009-10-20 16:29:03 EDT (Tue, 20 Oct 2009)
New Revision: 57024
URL: http://svn.boost.org/trac/boost/changeset/57024
Log:
TBoost.STM vbe: Checking with VERIFY and ASSERT mutex errors
Text files modified: 
   sandbox/stm/branches/vbe/boost/synchro/pthread/mutex.hpp |    20 ++++++++++++++++----                    
   1 files changed, 16 insertions(+), 4 deletions(-)
Modified: sandbox/stm/branches/vbe/boost/synchro/pthread/mutex.hpp
==============================================================================
--- sandbox/stm/branches/vbe/boost/synchro/pthread/mutex.hpp	(original)
+++ sandbox/stm/branches/vbe/boost/synchro/pthread/mutex.hpp	2009-10-20 16:29:03 EDT (Tue, 20 Oct 2009)
@@ -25,26 +25,38 @@
 #include <boost/synchro/lockable.hpp>
 //-----------------------------------------------------------------------------
 
+#define BOOST_SYNCHRO_CHECK
+
+#ifdef BOOST_SYNCHRO_CHECK
+#define BOOST_STM_ASSERT(expr) assert(expr)
+
+# define BOOST_STM_VERIFY(expr) BOOST_STM_ASSERT(expr)
+
+#else
+
+#define BOOST_STM_ASSERT(expr) ((void)0)
+#define BOOST_STM_VERIFY(expr) ((void)(expr))
+#endif
 namespace boost { namespace synchro {
 
     template<>
     inline void lock<pthread_mutex_t>(pthread_mutex_t& lockable) {
         int const res = pthread_mutex_lock(&lockable);
-        assert(res==0);
+        BOOST_STM_VERIFY(res==0);
         //if (res!=0) throw lock_error();
     }
 
     template<>
     inline void unlock<pthread_mutex_t>(pthread_mutex_t& lockable) {
         int const res= pthread_mutex_unlock(&lockable);
-        assert(res==0);
+        BOOST_STM_VERIFY(res==0);
         //if (res!=0) throw lock_error();
     }
 
     template<>
     inline bool try_lock<pthread_mutex_t>(pthread_mutex_t& lockable) {
         int const res=pthread_mutex_trylock(&lockable);
-        //BOOST_ASSERT(!res || res==EBUSY);
+        //BOOST_STM_VERIFY(!res || res==EBUSY);
         return (!res);
     }
 
@@ -54,7 +66,7 @@
                 pthread_mutex_t& lockable, system_time const& abs_time) {
         struct timespec const timeout=detail::get_timespec(abs_time);
         int const res=pthread_mutex_timedlock(&lockable,&timeout);
-        assert(!res || res==ETIMEDOUT);
+        BOOST_STM_VERIFY(!res || res==ETIMEDOUT);
         return !res;
     }   
 #endif