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]
--------------------------------




Reply via email to