error C2440: 'reinterpret_cast' : InterlockedCompareExchange from detail\interlocked.hpp

Apparently, the signature of this function has changed. When we used it under Visual Studio 6.0 it compiled correctly however, the following happens in MS VS 2008: The following error appears error C2664: 'InterlockedCompareExchange' : cannot convert parameter 2 from 'PVOID' to 'LONG' If I just do a cast, I get: error C2440: 'reinterpret_cast' : cannot convert from 'DWORD' to 'long'. Does anyone have any suggestions? Thanks in advance. Joseph (-: The preceding e-mail message (including any attachments) contains information that may be confidential, or constitute non-public information. It is intended only for the designated recipient. If you are not the named addressee, you should not disseminate, distribute or copy this e-mail. If you have received this e-mail by mistake, please notify the sender immediately by replying to this message and delete this e-mail from your system. Use, dissemination, distribution or reproduction of this message by unintended recipients is not authorized and may be unlawful.

InterlockedCompareExchange only works with LONG, and casting is not a good way around the problem. Perhaps you want InterlockedCompareExchangePointer, which works with PVOID?
participants (2)
-
Adam Merz
-
Joseph Marks