$include_dir="/home/hyper-archives/boost-commit/include"; include("$include_dir/msg-header.inc") ?>
Subject: [Boost-commit] svn:boost r75901 - trunk/boost/thread
From: vicente.botet_at_[hidden]
Date: 2011-12-11 08:32:42
Author: viboes
Date: 2011-12-11 08:32:41 EST (Sun, 11 Dec 2011)
New Revision: 75901
URL: http://svn.boost.org/trac/boost/changeset/75901
Log:
Thread: #5040 future.hpp in boost::thread does not compile with /clr
Text files modified: 
   trunk/boost/thread/future.hpp |    14 ++++++++++----                          
   1 files changed, 10 insertions(+), 4 deletions(-)
Modified: trunk/boost/thread/future.hpp
==============================================================================
--- trunk/boost/thread/future.hpp	(original)
+++ trunk/boost/thread/future.hpp	2011-12-11 08:32:41 EST (Sun, 11 Dec 2011)
@@ -413,13 +413,19 @@
 
             struct all_futures_lock
             {
-                count_type count;
+#ifdef _MANAGED
+                typedef std::ptrdiff_t count_type_portable;
+#else
+                typedef count_type count_type_portable;
+#endif
+                count_type_portable count;
+
                 boost::scoped_array<boost::unique_lock<boost::mutex> > locks;
 
                 all_futures_lock(std::vector<registered_waiter>& futures):
                     count(futures.size()),locks(new boost::unique_lock<boost::mutex>[count])
                 {
-                    for(count_type i=0;i<count;++i)
+                    for(count_type_portable i=0;i<count;++i)
                     {
 #if defined __DECCXX || defined __SUNPRO_CC
                         locks[i]=boost::unique_lock<boost::mutex>(futures[i].future->mutex).move();
@@ -436,7 +442,7 @@
 
                 void unlock()
                 {
-                    for(count_type i=0;i<count;++i)
+                    for(count_type_portable i=0;i<count;++i)
                     {
                         locks[i].unlock();
                     }
@@ -1341,7 +1347,7 @@
         }
 #endif
 
-        void swap(packaged_task& other)
+    void swap(packaged_task& other)
         {
             task.swap(other.task);
             std::swap(future_obtained,other.future_obtained);