Could you find out what header you are getting the prototype for this function from? The Win32 SDK clearly defines this function as taking void* type parameters. Something wierd is certainly going on. ---------------------------------------- Dean Roddey Software Weenie IBM Center for Java Technology - Silicon Valley [EMAIL PROTECTED] "Abhijit Savarkar" <[EMAIL PROTECTED]> on 01/19/2000 11:54:39 PM Please respond to [EMAIL PROTECTED] To: <[EMAIL PROTECTED]> cc: Subject: Xerces-C-src_1_0_1 win32 build error Hello, I am new to apache XML parser and have downloaded source code from xml apache site When I try to build the same on my Win NT4.0 VC6.0 it gives following error xerces-c-src_1_0_1\src\util\platforms\win32\win32platformutils.cpp(630) : error C2664: 'InterlockedCompareExchange' : cannot convert parameter 1 from 'void ** ' to 'long *' The code segment it refers to is <function name> // Miscellaneous synchronization methods // --------------------------------------------------- void* XMLPlatformUtils::compareAndSwap( void** toFill , const void* const newValue , const void* const toCompare) <affected lines> // // Note we have to cast off the constness of some of these because // the system APIs are not C++ aware in all cases. // return (void*)::InterlockedCompareExchange ( toFill , (void*)newValue , (void*)toCompare ) Any pointers on how to get it build correctly will be of great help. Thank you, Abhijit -------------------------------- [EMAIL PROTECTED] --------------------------------