Boost logo

Boost :

From: David Deakins (ddeakins_at_[hidden])
Date: 2007-11-01 23:21:56


David Deakins wrote:
> Attached are some Windows CE patches for the thread rewrite code:
>
> - boost\thread\win32\thread_primitives.hpp:
> - boost\thread\win32\thread_heap_alloc.hpp:
> - libs\thread\src\win32\thread.cpp:
> - libs\thread\src\win32\tss.cpp:
> - libs\thread\src\win32\tss_hooks.cpp:
> - libs\thread\src\tss_null.cpp:
> - libs\thread\src\win32\tss_pe.cpp:

Oops, there is also a patch to boost\detail\interlocked.hpp:

The WinCE section in this file omits definitions for
BOOST_INTERLOCKED_COMPARE_EXCHANGE_POINTER and
BOOST_INTERLOCKED_EXCHANGE_POINTER.

Thanks,
-Dave

Index: interlocked.hpp
===================================================================
--- interlocked.hpp (revision 40132)
+++ interlocked.hpp (working copy)
@@ -47,6 +47,11 @@
 # define BOOST_INTERLOCKED_EXCHANGE InterlockedExchange
 # define BOOST_INTERLOCKED_EXCHANGE_ADD InterlockedExchangeAdd
 
+# define BOOST_INTERLOCKED_COMPARE_EXCHANGE_POINTER(dest,exchange,compare) \
+ ((void*)BOOST_INTERLOCKED_COMPARE_EXCHANGE((long*)(dest),(long)(exchange),(long)(compare)))
+# define BOOST_INTERLOCKED_EXCHANGE_POINTER(dest,exchange) \
+ ((void*)BOOST_INTERLOCKED_EXCHANGE((long*)(dest),(long)(exchange)))
+
 #elif defined( BOOST_MSVC ) || defined( BOOST_INTEL_WIN )
 
 extern "C" long __cdecl _InterlockedIncrement( long volatile * );


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk