Boost logo

Boost :

From: Sergey Skorniakov (s.skorniakov_at_[hidden])
Date: 2005-01-17 03:57:22


Hello, All!

When I tried to compile thread library for AMD 64 with DDK compiler, I got a
linker error:
once.obj : error LNK2019: unresolved external symbol
_InterlockedCompareExchange referenced in function "long __cdecl `anonymous
namespace'::compare_exchange(long * volatile,long,long)"
(?compare_exchange@?A0x21094b06@@YAJRAJJJ_at_Z)

I guess, this is because InterlockedCompareExchange has only intrinsic form
on AMD64 platform and used by pointer in compare_exchange
(thread/src/once.cpp) function. Test code that also uses
InterlockedCompareExchange by pointer failed to link too, but code that just
calls this function works.

With best regards, Sergey Skorniakov.


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