
Rene Rivera <grafikrobot@gmail.com> writes:
On 6/17/2011 11:53 AM, Anthony Williams wrote:
Rene Rivera<grafikrobot@gmail.com> writes:
I mean this compile problem:
tss_pte.cpp#14 #if #if (defined(__MINGW32__)&& !defined(_WIN64)) || defined(__MINGW64__)
I.e. the double #if.
That's not present in the actual code (which is already merged to release anyway).
OK, so now I'm confused.. Could you please post a patch of what the change to the release branch is? From what I understand now is that neither the changeset nor the current state of threads files is telling me what the merge is.
The only file to be merged is boost/detail/interlocked.hpp, with the following changes: anthony@lothlorien:~/boost$ diff release/boost/detail/interlocked.hpp trunk/boost/detail/interlocked.hpp 108a109,115
#if defined(__MINGW64__) #define BOOST_INTERLOCKED_IMPORT #else #define BOOST_INTERLOCKED_IMPORT __declspec(dllimport) #endif
115,119c122,131 < extern "C" __declspec(dllimport) long __stdcall InterlockedIncrement( long volatile * ); < extern "C" __declspec(dllimport) long __stdcall InterlockedDecrement( long volatile * ); < extern "C" __declspec(dllimport) long __stdcall InterlockedCompareExchange( long volatile *, long, long ); < extern "C" __declspec(dllimport) long __stdcall InterlockedExchange( long volatile *, long ); < extern "C" __declspec(dllimport) long __stdcall InterlockedExchangeAdd( long volatile *, long ); ---
extern "C"BOOST_INTERLOCKED_IMPORT long __stdcall InterlockedIncrement( long volatile * ); extern "C"BOOST_INTERLOCKED_IMPORT long __stdcall InterlockedDecrement( long volatile * ); extern "C"BOOST_INTERLOCKED_IMPORT long __stdcall InterlockedCompareExchange( long volatile *, long, long ); extern "C"BOOST_INTERLOCKED_IMPORT long __stdcall InterlockedExchange( long volatile *, long ); extern "C"BOOST_INTERLOCKED_IMPORT long __stdcall InterlockedExchangeAdd( long volatile *, long );
# if defined(_M_IA64) || defined(_M_AMD64) extern "C"BOOST_INTERLOCKED_IMPORT void* __stdcall InterlockedCompareExchangePointer( void* volatile *, void*, void* ); extern "C"BOOST_INTERLOCKED_IMPORT void* __stdcall InterlockedExchangePointer( void* volatile *, void* ); # endif 131c143,147 < # define BOOST_INTERLOCKED_COMPARE_EXCHANGE_POINTER(dest,exchange,compare) \
# if defined(_M_IA64) || defined(_M_AMD64) # define BOOST_INTERLOCKED_COMPARE_EXCHANGE_POINTER ::boost::detail::InterlockedCompareExchangePointer # define BOOST_INTERLOCKED_EXCHANGE_POINTER ::boost::detail::InterlockedExchangePointer # else # define BOOST_INTERLOCKED_COMPARE_EXCHANGE_POINTER(dest,exchange,compare) \ 133c149 < # define BOOST_INTERLOCKED_EXCHANGE_POINTER(dest,exchange) \
# define BOOST_INTERLOCKED_EXCHANGE_POINTER(dest,exchange) \ 134a151 # endif
Anthony -- Author of C++ Concurrency in Action http://www.stdthread.co.uk/book/ just::thread C++0x thread library http://www.stdthread.co.uk Just Software Solutions Ltd http://www.justsoftwaresolutions.co.uk 15 Carrallack Mews, St Just, Cornwall, TR19 7UL, UK. Company No. 5478976