
As mentioned, it would appear that bundled atomic implementation has a lot of shortcomings, but one is particularly bad: atomic<tagged_ptr> is not actually lock-free for Visual C++. The DCAS implementation should be straightforward, but seems to be absent . in case you wonder I did an initial implementation of <(cstd)atomic> and added all required intrinsics for a simple implementation to the compiler. These made it all into VC++2010 RTM (IIRC, there was only one 64-bit, most where 8 & 16-bit variants)
i don't have access to any msvc compiler, do you think you could contribute the msvc-specific code for boost.atomic?
FWIW, we have 64 atomics support for MSVC implemented. It has been used in a bigger project for quite some time now. I can contribute those changes. Regards Hartmut --------------- http://boost-spirit.com