From: Aaron Robinson Date: Fri, 24 Aug 2018 18:19:28 +0000 (-0700) Subject: Update interop test xplat header (#19576) X-Git-Tag: accepted/tizen/unified/20190422.045933~1367 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=28b3319c937c9fb0dcf4a5fa0223ace6f07a2bf3;p=platform%2Fupstream%2Fcoreclr.git Update interop test xplat header (#19576) * Remove no-op #define logic for Interop tests Remove single usage of #define for function remap * Consolidate all uses of CoTaskMem* functions into new CoreClr* functions for the Interop native tests. * Remove unused functions and make formatting consistent. * Remove '_cdecl' and replace all uses with '__cdecl' * Convert '__stdcall' to 'STDMETHODCALLTYPE' for all non-calling convention dependent tests * Replace 'CALLBACK' and 'NATIVEAPI' calling convention macros will well-defined 'STDMETHODCALLTYPE' --- diff --git a/tests/src/Interop/ArrayMarshalling/BoolArray/CMakeLists.txt b/tests/src/Interop/ArrayMarshalling/BoolArray/CMakeLists.txt index da43913..88dffee 100644 --- a/tests/src/Interop/ArrayMarshalling/BoolArray/CMakeLists.txt +++ b/tests/src/Interop/ArrayMarshalling/BoolArray/CMakeLists.txt @@ -5,7 +5,7 @@ set(SOURCES MarshalBoolArrayNative.cpp) # add the executable add_library (MarshalBoolArrayNative SHARED ${SOURCES}) -target_link_libraries(MarshalBoolArrayNative ${LINK_LIBRARIES_ADDITIONAL}) +target_link_libraries(MarshalBoolArrayNative ${LINK_LIBRARIES_ADDITIONAL}) # add the install targets install (TARGETS MarshalBoolArrayNative DESTINATION bin) diff --git a/tests/src/Interop/ArrayMarshalling/BoolArray/MarshalBoolArrayNative.cpp b/tests/src/Interop/ArrayMarshalling/BoolArray/MarshalBoolArrayNative.cpp index 0521e40..e5ae64a 100644 --- a/tests/src/Interop/ArrayMarshalling/BoolArray/MarshalBoolArrayNative.cpp +++ b/tests/src/Interop/ArrayMarshalling/BoolArray/MarshalBoolArrayNative.cpp @@ -19,11 +19,11 @@ const int ArraySIZE = 5; //Reverse PInvoke //Pass by value -typedef BOOL (CALLBACK *CallBackIn)(int size,bool arr[]); +typedef BOOL (STDMETHODCALLTYPE *CallBackIn)(int size,bool arr[]); extern "C" DLL_EXPORT BOOL DoCallBackIn(CallBackIn callback) { //Init - bool * arr = (bool*)CoTaskMemAlloc(ArraySIZE); + bool * arr = (bool*)CoreClrAlloc(ArraySIZE); for(int i = 0;i < ArraySIZE; i++ ) { if( 0 == i%2) @@ -48,24 +48,24 @@ extern "C" DLL_EXPORT BOOL DoCallBackIn(CallBackIn callback) if((0 == (i%2)) && !arr[i]) //expect true { printf("Native Side:Error in DoCallBackIn.The Item is %d\n",i+1); - CoTaskMemFree(arr); + CoreClrFree(arr); return false; } else if((1 == (i%2))&&arr[i]) //expect false { printf("Native Side:Error in DoCallBackIn.The Item is %d\n",i+1); - CoTaskMemFree(arr); + CoreClrFree(arr); return false; } } - CoTaskMemFree(arr); + CoreClrFree(arr); return true; } -typedef BOOL (CALLBACK *CallBackOut)(int size,bool arr[]); +typedef BOOL (STDMETHODCALLTYPE *CallBackOut)(int size,bool arr[]); extern "C" DLL_EXPORT BOOL DoCallBackOut(CallBackOut callback) { - bool * arr =(bool *)CoTaskMemAlloc(ArraySIZE); + bool * arr =(bool *)CoreClrAlloc(ArraySIZE); if(!callback(ArraySIZE,arr)) { @@ -79,19 +79,19 @@ extern "C" DLL_EXPORT BOOL DoCallBackOut(CallBackOut callback) if(!arr[i]) //expect true { printf("Native Side:Error in DoCallBackOut.The Item is %d\n",i+1); - CoTaskMemFree(arr); + CoreClrFree(arr); return false; } } - CoTaskMemFree(arr); + CoreClrFree(arr); return true; } -typedef BOOL (CALLBACK *CallBackInOut)(int size,bool arr[]); +typedef BOOL (STDMETHODCALLTYPE *CallBackInOut)(int size,bool arr[]); extern "C" DLL_EXPORT BOOL DoCallBackInOut(CallBackInOut callback) { //Init - bool * arr =(bool *)CoTaskMemAlloc(ArraySIZE); + bool * arr =(bool *)CoreClrAlloc(ArraySIZE); for(int i = 0;i < ArraySIZE; i++ ) { if( 0 == i%2) @@ -117,22 +117,22 @@ extern "C" DLL_EXPORT BOOL DoCallBackInOut(CallBackInOut callback) if(!arr[i]) //expect true { printf("Native Side:Error in DoCallBackInOut.The Item is %d\n",i+1); - CoTaskMemFree(arr); + CoreClrFree(arr); return false; } } - CoTaskMemFree(arr); + CoreClrFree(arr); return true; } //Reverse PInvoke //Pass by reference -typedef BOOL (CALLBACK *CallBackRefIn)(int size,bool ** arr); +typedef BOOL (STDMETHODCALLTYPE *CallBackRefIn)(int size,bool ** arr); extern "C" DLL_EXPORT BOOL DoCallBackRefIn(CallBackRefIn callback) { //Init:true,false,true,false,true - bool *parr = (bool *)CoTaskMemAlloc(ArraySIZE); + bool *parr = (bool *)CoreClrAlloc(ArraySIZE); for(int i = 0;i < ArraySIZE;++i) { @@ -158,21 +158,21 @@ extern "C" DLL_EXPORT BOOL DoCallBackRefIn(CallBackRefIn callback) if((0==(i%2)) && !parr[i]) //expect true { printf("Native Side:Error in DoCallBackInOut.The Item is %d\n",i+1); - CoTaskMemFree(parr); + CoreClrFree(parr); return false; } else if((1==(i%2))&&parr[i]) //expect false { printf("Native Side:Error in DoCallBackInOut.The Item is %d\n",i+1); - CoTaskMemFree(parr); + CoreClrFree(parr); return false; } } - CoTaskMemFree(parr); + CoreClrFree(parr); return true; } -typedef BOOL (CALLBACK *CallBackRefOut)(int size,bool ** arr); +typedef BOOL (STDMETHODCALLTYPE *CallBackRefOut)(int size,bool ** arr); extern "C" DLL_EXPORT BOOL DoCallBackRefOut(CallBackRefOut callback) { @@ -190,19 +190,19 @@ extern "C" DLL_EXPORT BOOL DoCallBackRefOut(CallBackRefOut callback) if(!(*(parr + i))) //expect true { printf("Native Side:Error in DoCallBackRefOut.The Item is %d\n",i+1); - CoTaskMemFree(parr); + CoreClrFree(parr); return false; } } - CoTaskMemFree(parr); + CoreClrFree(parr); return true; } -typedef BOOL (CALLBACK *CallBackRefInOut)(int size,bool ** arr); +typedef BOOL (STDMETHODCALLTYPE *CallBackRefInOut)(int size,bool ** arr); extern "C" DLL_EXPORT BOOL DoCallBackRefInOut(CallBackRefInOut callback) { //Init,true,false,true,false - bool* parr = (bool*)CoTaskMemAlloc(ArraySIZE); + bool* parr = (bool*)CoreClrAlloc(ArraySIZE); for(int i = 0;iarr[i] = (__array_type)i @@ -70,7 +70,7 @@ helper function LPSTR ToString(int i) { - CHAR *pBuffer = (CHAR *)::CoTaskMemAlloc(10 * sizeof(CHAR)); // 10 is enough for our case, WCHAR for BSTR + CHAR *pBuffer = (CHAR *)CoreClrAlloc(10 * sizeof(CHAR)); // 10 is enough for our case, WCHAR for BSTR snprintf(pBuffer, 10, "%d", i); return pBuffer; } @@ -79,7 +79,7 @@ LPSTR ToString(int i) TestStruct* InitTestStruct() { - TestStruct *expected = (TestStruct *)CoTaskMemAlloc( sizeof(TestStruct) * ARRAY_SIZE ); + TestStruct *expected = (TestStruct *)CoreClrAlloc( sizeof(TestStruct) * ARRAY_SIZE ); for ( int i = 0; i < ARRAY_SIZE; i++) { @@ -185,84 +185,84 @@ Function /*---------------------------------------------------------------------------- marshal sequential strut ----------------------------------------------------------------------------*/ -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeIntArraySeqStructByVal( S_INTArray s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeIntArraySeqStructByVal( S_INTArray s, int size ) { CHECK_PARAM_NOT_EMPTY( s.arr ); INIT_EXPECTED( INT, ARRAY_SIZE ); return Equals( s.arr, size, expected, ARRAY_SIZE ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeUIntArraySeqStructByVal( S_UINTArray s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeUIntArraySeqStructByVal( S_UINTArray s, int size ) { CHECK_PARAM_NOT_EMPTY( s.arr ); INIT_EXPECTED( UINT, ARRAY_SIZE ); return Equals( s.arr, size, expected, ARRAY_SIZE ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeShortArraySeqStructByVal( S_SHORTArray s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeShortArraySeqStructByVal( S_SHORTArray s, int size ) { CHECK_PARAM_NOT_EMPTY( s.arr ); INIT_EXPECTED( SHORT, ARRAY_SIZE ); return Equals( s.arr, size, expected, ARRAY_SIZE ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeWordArraySeqStructByVal( S_WORDArray s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeWordArraySeqStructByVal( S_WORDArray s, int size ) { CHECK_PARAM_NOT_EMPTY( s.arr ); INIT_EXPECTED( WORD, ARRAY_SIZE ); return Equals( s.arr, size, expected, ARRAY_SIZE ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeLong64ArraySeqStructByVal( S_LONG64Array s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeLong64ArraySeqStructByVal( S_LONG64Array s, int size ) { CHECK_PARAM_NOT_EMPTY( s.arr ); INIT_EXPECTED( LONG64, ARRAY_SIZE ); return Equals( s.arr, size, expected, ARRAY_SIZE ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeULong64ArraySeqStructByVal( S_ULONG64Array s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeULong64ArraySeqStructByVal( S_ULONG64Array s, int size ) { CHECK_PARAM_NOT_EMPTY( s.arr ); INIT_EXPECTED( ULONG64, ARRAY_SIZE ); return Equals( s.arr, size, expected, ARRAY_SIZE ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeDoubleArraySeqStructByVal( S_DOUBLEArray s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeDoubleArraySeqStructByVal( S_DOUBLEArray s, int size ) { CHECK_PARAM_NOT_EMPTY( s.arr ); INIT_EXPECTED( DOUBLE, ARRAY_SIZE ); return Equals( s.arr, size, expected, ARRAY_SIZE ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeFloatArraySeqStructByVal( S_FLOATArray s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeFloatArraySeqStructByVal( S_FLOATArray s, int size ) { CHECK_PARAM_NOT_EMPTY( s.arr ); INIT_EXPECTED( FLOAT, ARRAY_SIZE ); return Equals( s.arr, size, expected, ARRAY_SIZE ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeByteArraySeqStructByVal( S_BYTEArray s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeByteArraySeqStructByVal( S_BYTEArray s, int size ) { CHECK_PARAM_NOT_EMPTY( s.arr ); INIT_EXPECTED( BYTE, ARRAY_SIZE ); return Equals( s.arr, size, expected, ARRAY_SIZE ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeCharArraySeqStructByVal( S_CHARArray s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeCharArraySeqStructByVal( S_CHARArray s, int size ) { CHECK_PARAM_NOT_EMPTY( s.arr ); INIT_EXPECTED( CHAR, ARRAY_SIZE ); return Equals( s.arr, size, expected, ARRAY_SIZE ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeIntPtrArraySeqStructByVal(S_DWORD_PTRArray s, int size) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeIntPtrArraySeqStructByVal(S_DWORD_PTRArray s, int size) { CHECK_PARAM_NOT_EMPTY(s.arr); INIT_EXPECTED( DWORD_PTR, ARRAY_SIZE); return Equals(s.arr, size, expected, ARRAY_SIZE); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeLPSTRArraySeqStructByVal( S_LPSTRArray s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeLPSTRArraySeqStructByVal( S_LPSTRArray s, int size ) { CHECK_PARAM_NOT_EMPTY( s.arr ); @@ -273,7 +273,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI TakeLPSTRArraySeqStructByVal( S_LPSTRArray return Equals( s.arr, size, expected, ARRAY_SIZE ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeLPCSTRArraySeqStructByVal( S_LPCSTRArray s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeLPCSTRArraySeqStructByVal( S_LPCSTRArray s, int size ) { CHECK_PARAM_NOT_EMPTY( s.arr ); @@ -286,7 +286,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI TakeLPCSTRArraySeqStructByVal( S_LPCSTRArra -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeStructArraySeqStructByVal( S_StructArray s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeStructArraySeqStructByVal( S_StructArray s, int size ) { CHECK_PARAM_NOT_EMPTY( s.arr ); @@ -297,69 +297,69 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI TakeStructArraySeqStructByVal( S_StructArra /*---------------------------------------------------------------------------- marshal sequential class ----------------------------------------------------------------------------*/ -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeIntArraySeqClassByVal( S_INTArray *s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeIntArraySeqClassByVal( S_INTArray *s, int size ) { return TakeIntArraySeqStructByVal( *s, size ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeUIntArraySeqClassByVal( S_UINTArray *s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeUIntArraySeqClassByVal( S_UINTArray *s, int size ) { return TakeUIntArraySeqStructByVal( *s, size ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeShortArraySeqClassByVal( S_SHORTArray *s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeShortArraySeqClassByVal( S_SHORTArray *s, int size ) { return TakeShortArraySeqStructByVal( *s, size ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeWordArraySeqClassByVal( S_WORDArray *s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeWordArraySeqClassByVal( S_WORDArray *s, int size ) { return TakeWordArraySeqStructByVal( *s, size ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeLong64ArraySeqClassByVal( S_LONG64Array *s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeLong64ArraySeqClassByVal( S_LONG64Array *s, int size ) { return TakeLong64ArraySeqStructByVal( *s, size ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeULong64ArraySeqClassByVal( S_ULONG64Array *s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeULong64ArraySeqClassByVal( S_ULONG64Array *s, int size ) { return TakeULong64ArraySeqStructByVal( *s, size ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeDoubleArraySeqClassByVal( S_DOUBLEArray *s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeDoubleArraySeqClassByVal( S_DOUBLEArray *s, int size ) { return TakeDoubleArraySeqStructByVal( *s, size ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeFloatArraySeqClassByVal( S_FLOATArray *s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeFloatArraySeqClassByVal( S_FLOATArray *s, int size ) { return TakeFloatArraySeqStructByVal( *s, size ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeByteArraySeqClassByVal( S_BYTEArray *s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeByteArraySeqClassByVal( S_BYTEArray *s, int size ) { return TakeByteArraySeqStructByVal( *s, size ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeCharArraySeqClassByVal( S_CHARArray *s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeCharArraySeqClassByVal( S_CHARArray *s, int size ) { return TakeCharArraySeqStructByVal( *s, size ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeLPSTRArraySeqClassByVal( S_LPSTRArray *s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeLPSTRArraySeqClassByVal( S_LPSTRArray *s, int size ) { return TakeLPSTRArraySeqStructByVal( *s, size ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeLPCSTRArraySeqClassByVal( S_LPCSTRArray *s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeLPCSTRArraySeqClassByVal( S_LPCSTRArray *s, int size ) { return TakeLPCSTRArraySeqStructByVal( *s, size ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeStructArraySeqClassByVal( S_StructArray *s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeStructArraySeqClassByVal( S_StructArray *s, int size ) { return TakeStructArraySeqStructByVal( *s, size ); } @@ -367,69 +367,69 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI TakeStructArraySeqClassByVal( S_StructArray /*---------------------------------------------------------------------------- marshal explicit struct ----------------------------------------------------------------------------*/ -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeIntArrayExpStructByVal( S_INTArray s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeIntArrayExpStructByVal( S_INTArray s, int size ) { return TakeIntArraySeqStructByVal( s, size ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeUIntArrayExpStructByVal( S_UINTArray s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeUIntArrayExpStructByVal( S_UINTArray s, int size ) { return TakeUIntArraySeqStructByVal( s, size ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeShortArrayExpStructByVal( S_SHORTArray s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeShortArrayExpStructByVal( S_SHORTArray s, int size ) { return TakeShortArraySeqStructByVal( s, size ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeWordArrayExpStructByVal( S_WORDArray s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeWordArrayExpStructByVal( S_WORDArray s, int size ) { return TakeWordArraySeqStructByVal( s, size ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeLong64ArrayExpStructByVal( S_LONG64Array s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeLong64ArrayExpStructByVal( S_LONG64Array s, int size ) { return TakeLong64ArraySeqStructByVal( s, size ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeULong64ArrayExpStructByVal( S_ULONG64Array s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeULong64ArrayExpStructByVal( S_ULONG64Array s, int size ) { return TakeULong64ArraySeqStructByVal( s, size ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeDoubleArrayExpStructByVal( S_DOUBLEArray s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeDoubleArrayExpStructByVal( S_DOUBLEArray s, int size ) { return TakeDoubleArraySeqStructByVal( s, size ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeFloatArrayExpStructByVal( S_FLOATArray s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeFloatArrayExpStructByVal( S_FLOATArray s, int size ) { return TakeFloatArraySeqStructByVal( s, size ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeByteArrayExpStructByVal( S_BYTEArray s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeByteArrayExpStructByVal( S_BYTEArray s, int size ) { return TakeByteArraySeqStructByVal( s, size ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeCharArrayExpStructByVal( S_CHARArray s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeCharArrayExpStructByVal( S_CHARArray s, int size ) { return TakeCharArraySeqStructByVal( s, size ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeLPSTRArrayExpStructByVal( S_LPSTRArray s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeLPSTRArrayExpStructByVal( S_LPSTRArray s, int size ) { return TakeLPSTRArraySeqStructByVal( s, size ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeLPCSTRArrayExpStructByVal( S_LPCSTRArray s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeLPCSTRArrayExpStructByVal( S_LPCSTRArray s, int size ) { return TakeLPCSTRArraySeqStructByVal( s, size ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeStructArrayExpStructByVal( S_StructArray s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeStructArrayExpStructByVal( S_StructArray s, int size ) { return TakeStructArraySeqStructByVal( s, size ); } @@ -437,69 +437,69 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI TakeStructArrayExpStructByVal( S_StructArra /*---------------------------------------------------------------------------- marshal explicit class ----------------------------------------------------------------------------*/ -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeIntArrayExpClassByVal( S_INTArray *s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeIntArrayExpClassByVal( S_INTArray *s, int size ) { return TakeIntArraySeqStructByVal( *s, size ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeUIntArrayExpClassByVal( S_UINTArray *s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeUIntArrayExpClassByVal( S_UINTArray *s, int size ) { return TakeUIntArraySeqStructByVal( *s, size ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeShortArrayExpClassByVal( S_SHORTArray *s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeShortArrayExpClassByVal( S_SHORTArray *s, int size ) { return TakeShortArraySeqStructByVal( *s, size ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeWordArrayExpClassByVal( S_WORDArray *s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeWordArrayExpClassByVal( S_WORDArray *s, int size ) { return TakeWordArraySeqStructByVal( *s, size ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeLong64ArrayExpClassByVal( S_LONG64Array *s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeLong64ArrayExpClassByVal( S_LONG64Array *s, int size ) { return TakeLong64ArraySeqStructByVal( *s, size ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeULong64ArrayExpClassByVal( S_ULONG64Array *s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeULong64ArrayExpClassByVal( S_ULONG64Array *s, int size ) { return TakeULong64ArraySeqStructByVal( *s, size ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeDoubleArrayExpClassByVal( S_DOUBLEArray *s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeDoubleArrayExpClassByVal( S_DOUBLEArray *s, int size ) { return TakeDoubleArraySeqStructByVal( *s, size ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeFloatArrayExpClassByVal( S_FLOATArray *s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeFloatArrayExpClassByVal( S_FLOATArray *s, int size ) { return TakeFloatArraySeqStructByVal( *s, size ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeByteArrayExpClassByVal( S_BYTEArray *s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeByteArrayExpClassByVal( S_BYTEArray *s, int size ) { return TakeByteArraySeqStructByVal( *s, size ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeCharArrayExpClassByVal( S_CHARArray *s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeCharArrayExpClassByVal( S_CHARArray *s, int size ) { return TakeCharArraySeqStructByVal( *s, size ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeLPSTRArrayExpClassByVal( S_LPSTRArray *s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeLPSTRArrayExpClassByVal( S_LPSTRArray *s, int size ) { return TakeLPSTRArraySeqStructByVal( *s, size ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeLPCSTRArrayExpClassByVal( S_LPCSTRArray *s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeLPCSTRArrayExpClassByVal( S_LPCSTRArray *s, int size ) { return TakeLPCSTRArraySeqStructByVal( *s, size ); } -extern "C" DLL_EXPORT BOOL NATIVEAPI TakeStructArrayExpClassByVal( S_StructArray *s, int size ) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE TakeStructArrayExpClassByVal( S_StructArray *s, int size ) { return TakeStructArraySeqStructByVal( *s, size ); } @@ -507,79 +507,79 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI TakeStructArrayExpClassByVal( S_StructArray /*---------------------------------------------------------------------------- return a struct including a C array ----------------------------------------------------------------------------*/ -extern "C" DLL_EXPORT S_INTArray* NATIVEAPI S_INTArray_Ret() +extern "C" DLL_EXPORT S_INTArray* STDMETHODCALLTYPE S_INTArray_Ret() { INIT_EXPECTED_STRUCT( S_INTArray, ARRAY_SIZE, INT ); return expected; } -extern "C" DLL_EXPORT S_UINTArray* NATIVEAPI S_UINTArray_Ret() +extern "C" DLL_EXPORT S_UINTArray* STDMETHODCALLTYPE S_UINTArray_Ret() { INIT_EXPECTED_STRUCT( S_UINTArray, ARRAY_SIZE, UINT ); return expected; } -extern "C" DLL_EXPORT S_SHORTArray* NATIVEAPI S_SHORTArray_Ret() +extern "C" DLL_EXPORT S_SHORTArray* STDMETHODCALLTYPE S_SHORTArray_Ret() { INIT_EXPECTED_STRUCT( S_SHORTArray, ARRAY_SIZE, SHORT ); return expected; } -extern "C" DLL_EXPORT S_WORDArray* NATIVEAPI S_WORDArray_Ret() +extern "C" DLL_EXPORT S_WORDArray* STDMETHODCALLTYPE S_WORDArray_Ret() { INIT_EXPECTED_STRUCT( S_WORDArray, ARRAY_SIZE, WORD ); return expected; } -extern "C" DLL_EXPORT S_LONG64Array* NATIVEAPI S_LONG64Array_Ret() +extern "C" DLL_EXPORT S_LONG64Array* STDMETHODCALLTYPE S_LONG64Array_Ret() { INIT_EXPECTED_STRUCT( S_LONG64Array, ARRAY_SIZE, LONG64 ); return expected; } -extern "C" DLL_EXPORT S_ULONG64Array* NATIVEAPI S_ULONG64Array_Ret() +extern "C" DLL_EXPORT S_ULONG64Array* STDMETHODCALLTYPE S_ULONG64Array_Ret() { INIT_EXPECTED_STRUCT( S_ULONG64Array, ARRAY_SIZE, ULONG64 ); return expected; } -extern "C" DLL_EXPORT S_DOUBLEArray* NATIVEAPI S_DOUBLEArray_Ret() +extern "C" DLL_EXPORT S_DOUBLEArray* STDMETHODCALLTYPE S_DOUBLEArray_Ret() { INIT_EXPECTED_STRUCT( S_DOUBLEArray, ARRAY_SIZE, DOUBLE ); return expected; } -extern "C" DLL_EXPORT S_FLOATArray* NATIVEAPI S_FLOATArray_Ret() +extern "C" DLL_EXPORT S_FLOATArray* STDMETHODCALLTYPE S_FLOATArray_Ret() { INIT_EXPECTED_STRUCT( S_FLOATArray, ARRAY_SIZE, FLOAT ); return expected; } -extern "C" DLL_EXPORT S_BYTEArray* NATIVEAPI S_BYTEArray_Ret() +extern "C" DLL_EXPORT S_BYTEArray* STDMETHODCALLTYPE S_BYTEArray_Ret() { INIT_EXPECTED_STRUCT( S_BYTEArray, ARRAY_SIZE, BYTE ); return expected; } -extern "C" DLL_EXPORT S_CHARArray* NATIVEAPI S_CHARArray_Ret() +extern "C" DLL_EXPORT S_CHARArray* STDMETHODCALLTYPE S_CHARArray_Ret() { INIT_EXPECTED_STRUCT( S_CHARArray, ARRAY_SIZE, CHAR ); return expected; } -extern "C" DLL_EXPORT S_LPSTRArray* NATIVEAPI S_LPSTRArray_Ret() +extern "C" DLL_EXPORT S_LPSTRArray* STDMETHODCALLTYPE S_LPSTRArray_Ret() { - S_LPSTRArray *expected = (S_LPSTRArray *)::CoTaskMemAlloc( sizeof(S_LPSTRArray) ); + S_LPSTRArray *expected = (S_LPSTRArray *)CoreClrAlloc( sizeof(S_LPSTRArray) ); for ( int i = 0; i < ARRAY_SIZE; ++i ) expected->arr[i] = ToString(i); @@ -587,9 +587,9 @@ extern "C" DLL_EXPORT S_LPSTRArray* NATIVEAPI S_LPSTRArray_Ret() } -extern "C" DLL_EXPORT S_StructArray* NATIVEAPI S_StructArray_Ret() +extern "C" DLL_EXPORT S_StructArray* STDMETHODCALLTYPE S_StructArray_Ret() { - S_StructArray *expected = (S_StructArray *)::CoTaskMemAlloc( sizeof(S_StructArray) ); + S_StructArray *expected = (S_StructArray *)CoreClrAlloc( sizeof(S_StructArray) ); for ( int i = 0; i < ARRAY_SIZE; ++i ) { expected->arr[i].x = i; diff --git a/tests/src/Interop/BestFitMapping/BestFitMappingNative.cpp b/tests/src/Interop/BestFitMapping/BestFitMappingNative.cpp index 46ee1b2..35b4f0b 100755 --- a/tests/src/Interop/BestFitMapping/BestFitMappingNative.cpp +++ b/tests/src/Interop/BestFitMapping/BestFitMappingNative.cpp @@ -19,13 +19,13 @@ static int ReportFailure(const char* s) return (++fails); } -extern "C" DLL_EXPORT int _cdecl GetResult() +extern "C" DLL_EXPORT int __cdecl GetResult() { return fails; } //This method is used on Windows Only -extern "C" DLL_EXPORT char _cdecl GetByteForWideChar() +extern "C" DLL_EXPORT char __cdecl GetByteForWideChar() { #ifdef WINDOWS char * p = new char[3]; @@ -68,7 +68,7 @@ bool CheckInput(LPSTR str) p[2] = (char)0xbc; p[3] = (char)0; #endif - if (0 != _tcsncmp(str, p, 4)) + if (0 != strncmp(str, p, 4)) { printf("CheckInput:Expected:%s,Actual:%d\n", p, str[0]); delete[]p; @@ -80,7 +80,7 @@ bool CheckInput(LPSTR str) } //C Call,In attribute,LPstr -extern "C" DLL_EXPORT LPSTR _cdecl CLPStr_In(LPSTR pStr) +extern "C" DLL_EXPORT LPSTR __cdecl CLPStr_In(LPSTR pStr) { //Check the Input if (!CheckInput(pStr)) @@ -90,17 +90,17 @@ extern "C" DLL_EXPORT LPSTR _cdecl CLPStr_In(LPSTR pStr) //alloc,copy, since we cannot depend the Marshaler's activity. size_t len = strlen(pStr) + 1; //+1, Include the NULL Character. - LPSTR pBack = (LPSTR)CoTaskMemAlloc(sizeof(char) * len); + LPSTR pBack = (LPSTR)CoreClrAlloc(sizeof(char) * len); strncpy(pBack, pStr, len); return pBack; } -extern "C" DLL_EXPORT LPSTR _cdecl CLPStr_Out(LPSTR pStr) +extern "C" DLL_EXPORT LPSTR __cdecl CLPStr_Out(LPSTR pStr) { const char* pTemp = "AAAA"; size_t len = strlen(pTemp) + 1; //+1, Include the NULL Character. - LPSTR pBack = (LPSTR)CoTaskMemAlloc(sizeof(char) * len); + LPSTR pBack = (LPSTR)CoreClrAlloc(sizeof(char) * len); strncpy(pBack, pTemp, strlen(pTemp) + 1); strncpy(pStr, pTemp, strlen(pTemp) + 1); @@ -108,7 +108,7 @@ extern "C" DLL_EXPORT LPSTR _cdecl CLPStr_Out(LPSTR pStr) return pBack; } -extern "C" DLL_EXPORT LPSTR _cdecl CLPStr_InOut(LPSTR pStr) +extern "C" DLL_EXPORT LPSTR __cdecl CLPStr_InOut(LPSTR pStr) { //Check the Input if (!CheckInput(pStr)) @@ -118,13 +118,13 @@ extern "C" DLL_EXPORT LPSTR _cdecl CLPStr_InOut(LPSTR pStr) //alloc,copy, since we cannot depend the Marshaler's activity. size_t len = strlen(pStr) + 1; //+1, Include the NULL Character. - LPSTR pBack = (LPSTR)CoTaskMemAlloc(len); + LPSTR pBack = (LPSTR)CoreClrAlloc(len); strncpy(pBack, pStr, len); return pBack; } -extern "C" DLL_EXPORT LPSTR _cdecl CLPStr_InByRef(LPSTR* ppStr) +extern "C" DLL_EXPORT LPSTR __cdecl CLPStr_InByRef(LPSTR* ppStr) { //Check the Input if (!CheckInput(*ppStr)) @@ -134,25 +134,25 @@ extern "C" DLL_EXPORT LPSTR _cdecl CLPStr_InByRef(LPSTR* ppStr) //alloc,copy, since we cannot depend the Marshaler's activity. size_t len = strlen(*ppStr) + 1; //+1, Include the NULL Character. - LPSTR pBack = (LPSTR)CoTaskMemAlloc(len); + LPSTR pBack = (LPSTR)CoreClrAlloc(len); strncpy(pBack, *ppStr, len); return pBack; } -extern "C" DLL_EXPORT LPSTR _cdecl CLPStr_OutByRef(LPSTR* ppStr) +extern "C" DLL_EXPORT LPSTR __cdecl CLPStr_OutByRef(LPSTR* ppStr) { const char* pTemp = "AAAA"; size_t len = strlen(pTemp) + 1; //+1, Include the NULL Character. - LPSTR pBack = (LPSTR)CoTaskMemAlloc(sizeof(char) * len); + LPSTR pBack = (LPSTR)CoreClrAlloc(sizeof(char) * len); strncpy(pBack, pTemp, strlen(pTemp) + 1); - *ppStr = (LPSTR)CoTaskMemAlloc(sizeof(char) * len); + *ppStr = (LPSTR)CoreClrAlloc(sizeof(char) * len); strncpy(*ppStr, pTemp, strlen(pTemp) + 1); return pBack; } -extern "C" DLL_EXPORT LPSTR _cdecl CLPStr_InOutByRef(LPSTR* ppStr) +extern "C" DLL_EXPORT LPSTR __cdecl CLPStr_InOutByRef(LPSTR* ppStr) { //Check the Input if (!CheckInput(*ppStr)) @@ -162,21 +162,21 @@ extern "C" DLL_EXPORT LPSTR _cdecl CLPStr_InOutByRef(LPSTR* ppStr) //alloc,copy, since we cannot depend the Marshaler's activity. size_t len = strlen(*ppStr) + 1; //+1, Include the NULL Character. - LPSTR pBack = (LPSTR)CoTaskMemAlloc(len); + LPSTR pBack = (LPSTR)CoreClrAlloc(len); strncpy(pBack, *ppStr, len); return pBack; } -typedef LPSTR (_cdecl* delegate_cdecl)(LPSTR* ppstr); -extern "C" DLL_EXPORT delegate_cdecl _cdecl CLPStr_DelegatePInvoke() +typedef LPSTR (__cdecl* delegate_cdecl)(LPSTR* ppstr); +extern "C" DLL_EXPORT delegate_cdecl __cdecl CLPStr_DelegatePInvoke() { return CLPStr_InOutByRef; } //stdcall -extern "C" DLL_EXPORT LPSTR __stdcall SLPStr_In(LPSTR pStr) +extern "C" DLL_EXPORT LPSTR STDMETHODCALLTYPE SLPStr_In(LPSTR pStr) { //Check the Input if (!CheckInput(pStr)) @@ -186,23 +186,23 @@ extern "C" DLL_EXPORT LPSTR __stdcall SLPStr_In(LPSTR pStr) //alloc,copy, since we cannot depend the Marshaler's activity. size_t len = strlen(pStr) + 1; //+1, Include the NULL Character. - LPSTR pBack = (LPSTR)CoTaskMemAlloc(len); + LPSTR pBack = (LPSTR)CoreClrAlloc(len); strncpy(pBack, pStr, len); return pBack; } -extern "C" DLL_EXPORT LPSTR __stdcall SLPStr_Out(LPSTR pStr) +extern "C" DLL_EXPORT LPSTR STDMETHODCALLTYPE SLPStr_Out(LPSTR pStr) { const char* pTemp = "AAAA"; size_t len = strlen(pTemp) + 1; //+1, Include the NULL Character. - LPSTR pBack = (LPSTR)CoTaskMemAlloc(sizeof(char) * len); + LPSTR pBack = (LPSTR)CoreClrAlloc(sizeof(char) * len); strncpy(pBack, pTemp, strlen(pTemp) + 1); strncpy(pStr, pTemp, strlen(pTemp) + 1); return pBack; } -extern "C" DLL_EXPORT LPSTR __stdcall SLPStr_InOut(LPSTR pStr) +extern "C" DLL_EXPORT LPSTR STDMETHODCALLTYPE SLPStr_InOut(LPSTR pStr) { //Check the Input if (!CheckInput(pStr)) @@ -212,12 +212,12 @@ extern "C" DLL_EXPORT LPSTR __stdcall SLPStr_InOut(LPSTR pStr) //alloc,copy, since we cannot depend the Marshaler's activity. size_t len = strlen(pStr) + 1; //+1, Include the NULL Character. - LPSTR pBack = (LPSTR)CoTaskMemAlloc(len); + LPSTR pBack = (LPSTR)CoreClrAlloc(len); strncpy(pBack, pStr, len); return pBack; } -extern "C" DLL_EXPORT LPSTR __stdcall SLPStr_InByRef(LPSTR* ppStr) +extern "C" DLL_EXPORT LPSTR STDMETHODCALLTYPE SLPStr_InByRef(LPSTR* ppStr) { //Check the Input if (!CheckInput(*ppStr)) @@ -226,25 +226,25 @@ extern "C" DLL_EXPORT LPSTR __stdcall SLPStr_InByRef(LPSTR* ppStr) } //alloc,copy, since we cannot depend the Marshaler's activity. size_t len = strlen(*ppStr) + 1; //+1, Include the NULL Character. - LPSTR pBack = (LPSTR)CoTaskMemAlloc(len); + LPSTR pBack = (LPSTR)CoreClrAlloc(len); strncpy(pBack, *ppStr, len); return pBack; } -extern "C" DLL_EXPORT LPSTR __stdcall SLPStr_OutByRef(LPSTR* ppStr) +extern "C" DLL_EXPORT LPSTR STDMETHODCALLTYPE SLPStr_OutByRef(LPSTR* ppStr) { const char* pTemp = "AAAA"; size_t len = strlen(pTemp) + 1; //+1, Include the NULL Character. - LPSTR pBack = (LPSTR)CoTaskMemAlloc(sizeof(char) * len); + LPSTR pBack = (LPSTR)CoreClrAlloc(sizeof(char) * len); strncpy(pBack, pTemp, strlen(pTemp) + 1); - *ppStr = (LPSTR)CoTaskMemAlloc(sizeof(char) * len); + *ppStr = (LPSTR)CoreClrAlloc(sizeof(char) * len); strncpy(*ppStr, pTemp, strlen(pTemp) + 1); return pBack; } -extern "C" DLL_EXPORT LPSTR __stdcall SLPStr_InOutByRef(LPSTR* ppStr) +extern "C" DLL_EXPORT LPSTR STDMETHODCALLTYPE SLPStr_InOutByRef(LPSTR* ppStr) { //Check the Input if (!CheckInput(*ppStr)) @@ -254,12 +254,12 @@ extern "C" DLL_EXPORT LPSTR __stdcall SLPStr_InOutByRef(LPSTR* ppStr) //alloc,copy, since we cannot depend the Marshaler's activity. size_t len = strlen(*ppStr) + 1; //+1, Include the NULL Character. - LPSTR pBack = (LPSTR)CoTaskMemAlloc(len); + LPSTR pBack = (LPSTR)CoreClrAlloc(len); strncpy(pBack, *ppStr, len); return pBack; } -typedef LPSTR (__stdcall *delegate_stdcall)(LPSTR* ppstr); +typedef LPSTR (STDMETHODCALLTYPE *delegate_stdcall)(LPSTR* ppstr); extern "C" DLL_EXPORT delegate_stdcall SLPStr_DelegatePInvoke() { return SLPStr_InOutByRef; @@ -267,26 +267,26 @@ extern "C" DLL_EXPORT delegate_stdcall SLPStr_DelegatePInvoke() ///Cdecl, Reverse PInvoke -typedef LPSTR (_cdecl *CCallBackIn)(LPSTR pstr); -extern "C" DLL_EXPORT void _cdecl DoCCallBack_LPSTR_In(CCallBackIn callback) +typedef LPSTR (__cdecl *CCallBackIn)(LPSTR pstr); +extern "C" DLL_EXPORT void __cdecl DoCCallBack_LPSTR_In(CCallBackIn callback) { const char* pTemp = "AAAA"; size_t len = strlen(pTemp)+1; - LPSTR pStr = (LPSTR)CoTaskMemAlloc(len); + LPSTR pStr = (LPSTR)CoreClrAlloc(len); strncpy(pStr,pTemp,len); if(!CheckInput(callback(pStr))) { ReportFailure("DoCCallBack_LPSTR_In:NativeSide"); } - CoTaskMemFree(pStr); + CoreClrFree(pStr); } -typedef LPSTR (_cdecl *CCallBackOut)(LPSTR pstr); -extern "C" DLL_EXPORT void _cdecl DoCCallBack_LPSTR_Out(CCallBackOut callback) +typedef LPSTR (__cdecl *CCallBackOut)(LPSTR pstr); +extern "C" DLL_EXPORT void __cdecl DoCCallBack_LPSTR_Out(CCallBackOut callback) { size_t len = 10; - LPSTR pStr = (LPSTR)CoTaskMemAlloc(len); + LPSTR pStr = (LPSTR)CoreClrAlloc(len); //Check the return value if (!CheckInput(callback(pStr))) @@ -297,15 +297,15 @@ extern "C" DLL_EXPORT void _cdecl DoCCallBack_LPSTR_Out(CCallBackOut callback) { ReportFailure("DoCCallBack_LPSTR_Out:NativeSide,the Second Check"); } - CoTaskMemFree(pStr); + CoreClrFree(pStr); } -typedef LPSTR (_cdecl *CCallBackInOut)(LPSTR pstr); -extern "C" DLL_EXPORT void _cdecl DoCCallBack_LPSTR_InOut(CCallBackInOut callback) +typedef LPSTR (__cdecl *CCallBackInOut)(LPSTR pstr); +extern "C" DLL_EXPORT void __cdecl DoCCallBack_LPSTR_InOut(CCallBackInOut callback) { const char* pTemp = "AAAA"; size_t len = strlen(pTemp) + 1; - LPSTR pStr = (LPSTR)CoTaskMemAlloc(len); + LPSTR pStr = (LPSTR)CoreClrAlloc(len); strncpy(pStr, pTemp, len); if (!CheckInput(callback(pStr))) @@ -316,29 +316,29 @@ extern "C" DLL_EXPORT void _cdecl DoCCallBack_LPSTR_InOut(CCallBackInOut callbac { ReportFailure("DoCCallBack_LPSTR_InOut:NativeSide,the Second Check"); } - CoTaskMemFree(pStr); + CoreClrFree(pStr); } -typedef LPSTR (_cdecl *CallBackInByRef)(LPSTR* pstr); -extern "C" DLL_EXPORT void _cdecl DoCCallBack_LPSTR_InByRef(CallBackInByRef callback) +typedef LPSTR (__cdecl *CallBackInByRef)(LPSTR* pstr); +extern "C" DLL_EXPORT void __cdecl DoCCallBack_LPSTR_InByRef(CallBackInByRef callback) { const char* pTemp = "AAAA"; size_t len = strlen(pTemp) + 1; - LPSTR pStr = (LPSTR)CoTaskMemAlloc(len); + LPSTR pStr = (LPSTR)CoreClrAlloc(len); strncpy(pStr, pTemp, len); if (!CheckInput(callback(&pStr))) { ReportFailure("DoCCallBack_LPSTR_InByRef:NativeSide"); } - CoTaskMemFree(pStr); + CoreClrFree(pStr); } -typedef LPSTR (_cdecl *CCallBackOutByRef)(LPSTR* pstr); -extern "C" DLL_EXPORT void _cdecl DoCCallBack_LPSTR_OutByRef(CCallBackOutByRef callback) +typedef LPSTR (__cdecl *CCallBackOutByRef)(LPSTR* pstr); +extern "C" DLL_EXPORT void __cdecl DoCCallBack_LPSTR_OutByRef(CCallBackOutByRef callback) { size_t len = 10; - LPSTR pStr = (LPSTR)CoTaskMemAlloc(len); + LPSTR pStr = (LPSTR)CoreClrAlloc(len); if (!CheckInput(callback(&pStr))) { @@ -348,15 +348,15 @@ extern "C" DLL_EXPORT void _cdecl DoCCallBack_LPSTR_OutByRef(CCallBackOutByRef c { ReportFailure("DoCCallBack_LPSTR_OutByRef:NativeSide,the Second Check"); } - CoTaskMemFree(pStr); + CoreClrFree(pStr); } -typedef LPSTR (_cdecl *CCallBackInOutByRef)(LPSTR* pstr); -extern "C" DLL_EXPORT void _cdecl DoCCallBack_LPSTR_InOutByRef(CCallBackInOutByRef callback) +typedef LPSTR (__cdecl *CCallBackInOutByRef)(LPSTR* pstr); +extern "C" DLL_EXPORT void __cdecl DoCCallBack_LPSTR_InOutByRef(CCallBackInOutByRef callback) { const char* pTemp = "AAAA"; size_t len = strlen(pTemp) + 1; - LPSTR pStr = (LPSTR)CoTaskMemAlloc(len); + LPSTR pStr = (LPSTR)CoreClrAlloc(len); strncpy(pStr, pTemp, len); if (!CheckInput(callback(&pStr))) @@ -367,31 +367,31 @@ extern "C" DLL_EXPORT void _cdecl DoCCallBack_LPSTR_InOutByRef(CCallBackInOutByR { ReportFailure("DoCCallBack_LPSTR_InOutByRef:NativeSide,the Second Check"); } - CoTaskMemFree(pStr); + CoreClrFree(pStr); } ///STDCALL Reverse PInvoke -typedef LPSTR (__stdcall *SCallBackIn)(LPSTR pstr); -extern "C" DLL_EXPORT void _cdecl DoSCallBack_LPSTR_In(SCallBackIn callback) +typedef LPSTR (STDMETHODCALLTYPE *SCallBackIn)(LPSTR pstr); +extern "C" DLL_EXPORT void __cdecl DoSCallBack_LPSTR_In(SCallBackIn callback) { const char* pTemp = "AAAA"; size_t len = strlen(pTemp) + 1; - LPSTR pStr = (LPSTR)CoTaskMemAlloc(len); + LPSTR pStr = (LPSTR)CoreClrAlloc(len); strncpy(pStr, pTemp, len); if (!CheckInput(callback(pStr))) { ReportFailure("DoSCallBack_LPSTR_In:NativeSide"); } - CoTaskMemFree(pStr); + CoreClrFree(pStr); } -typedef LPSTR (__stdcall *SCallBackOut)(LPSTR pstr); -extern "C" DLL_EXPORT void _cdecl DoSCallBack_LPSTR_Out(SCallBackOut callback) +typedef LPSTR (STDMETHODCALLTYPE *SCallBackOut)(LPSTR pstr); +extern "C" DLL_EXPORT void __cdecl DoSCallBack_LPSTR_Out(SCallBackOut callback) { size_t len = 10; - LPSTR pStr = (LPSTR)CoTaskMemAlloc(len); + LPSTR pStr = (LPSTR)CoreClrAlloc(len); if (!CheckInput(callback(pStr))) { @@ -401,15 +401,15 @@ extern "C" DLL_EXPORT void _cdecl DoSCallBack_LPSTR_Out(SCallBackOut callback) { ReportFailure("DoSCallBack_LPSTR_Out:NativeSide,the Second Check"); } - CoTaskMemFree(pStr); + CoreClrFree(pStr); } -typedef LPSTR (__stdcall *SCallBackInOut)(LPSTR pstr); -extern "C" DLL_EXPORT void _cdecl DoSCallBack_LPSTR_InOut(SCallBackInOut callback) +typedef LPSTR (STDMETHODCALLTYPE *SCallBackInOut)(LPSTR pstr); +extern "C" DLL_EXPORT void __cdecl DoSCallBack_LPSTR_InOut(SCallBackInOut callback) { const char* pTemp = "AAAA"; size_t len = strlen(pTemp) + 1; - LPSTR pStr = (LPSTR)CoTaskMemAlloc(len); + LPSTR pStr = (LPSTR)CoreClrAlloc(len); strncpy(pStr, pTemp, len); if (!CheckInput(callback(pStr))) @@ -420,29 +420,29 @@ extern "C" DLL_EXPORT void _cdecl DoSCallBack_LPSTR_InOut(SCallBackInOut callbac { ReportFailure("DoSCallBack_LPSTR_InOut:NativeSide,the second Check"); } - CoTaskMemFree(pStr); + CoreClrFree(pStr); } -typedef LPSTR (__stdcall *SCallBackInByRef)(LPSTR* pstr); -extern "C" DLL_EXPORT void _cdecl DoSCallBack_LPSTR_InByRef(SCallBackInByRef callback) +typedef LPSTR (STDMETHODCALLTYPE *SCallBackInByRef)(LPSTR* pstr); +extern "C" DLL_EXPORT void __cdecl DoSCallBack_LPSTR_InByRef(SCallBackInByRef callback) { const char* pTemp = "AAAA"; size_t len = strlen(pTemp) + 1; - LPSTR pStr = (LPSTR)CoTaskMemAlloc(len); + LPSTR pStr = (LPSTR)CoreClrAlloc(len); strncpy(pStr, pTemp, len); if (!CheckInput(callback(&pStr))) { ReportFailure("DoSCallBack_LPSTR_InByRef:NativeSide"); } - CoTaskMemFree(pStr); + CoreClrFree(pStr); } -typedef LPSTR (__stdcall *SCallBackOutByRef)(LPSTR* pstr); -extern "C" DLL_EXPORT void _cdecl DoSCallBack_LPSTR_OutByRef(SCallBackOutByRef callback) +typedef LPSTR (STDMETHODCALLTYPE *SCallBackOutByRef)(LPSTR* pstr); +extern "C" DLL_EXPORT void __cdecl DoSCallBack_LPSTR_OutByRef(SCallBackOutByRef callback) { size_t len = 10; - LPSTR pStr = (LPSTR)CoTaskMemAlloc(len); + LPSTR pStr = (LPSTR)CoreClrAlloc(len); if (!CheckInput(callback(&pStr))) { @@ -452,15 +452,15 @@ extern "C" DLL_EXPORT void _cdecl DoSCallBack_LPSTR_OutByRef(SCallBackOutByRef c { ReportFailure("DoSCallBack_LPSTR_OutByRef:NativeSide,the second Check"); } - CoTaskMemFree(pStr); + CoreClrFree(pStr); } -typedef LPSTR (__stdcall *SCallBackInOutByRef)(LPSTR* pstr); -extern "C" DLL_EXPORT void _cdecl DoSCallBack_LPSTR_InOutByRef(SCallBackInOutByRef callback) +typedef LPSTR (STDMETHODCALLTYPE *SCallBackInOutByRef)(LPSTR* pstr); +extern "C" DLL_EXPORT void __cdecl DoSCallBack_LPSTR_InOutByRef(SCallBackInOutByRef callback) { const char* pTemp = "AAAA"; size_t len = strlen(pTemp) + 1; - LPSTR pStr = (LPSTR)CoTaskMemAlloc(len); + LPSTR pStr = (LPSTR)CoreClrAlloc(len); strncpy(pStr, pTemp, len); if (!CheckInput(callback(&pStr))) @@ -471,6 +471,6 @@ extern "C" DLL_EXPORT void _cdecl DoSCallBack_LPSTR_InOutByRef(SCallBackInOutByR { ReportFailure("DoSCallBack_LPSTR_InOutByRef:NativeSide,the second Check"); } - CoTaskMemFree(pStr); + CoreClrFree(pStr); } #pragma warning( pop ) \ No newline at end of file diff --git a/tests/src/Interop/COM/NativeServer/ErrorMarshalTesting.h b/tests/src/Interop/COM/NativeServer/ErrorMarshalTesting.h index 307abe4..36d758a 100644 --- a/tests/src/Interop/COM/NativeServer/ErrorMarshalTesting.h +++ b/tests/src/Interop/COM/NativeServer/ErrorMarshalTesting.h @@ -14,7 +14,7 @@ public: // IErrorMarshalTesting { return HRESULT{ hresultToReturn }; } - long __stdcall Return_As_HResult( + long STDMETHODCALLTYPE Return_As_HResult( /*[in]*/ long hresultToReturn) { return hresultToReturn; diff --git a/tests/src/Interop/COM/ServerContracts/Server.Contracts.tlh b/tests/src/Interop/COM/ServerContracts/Server.Contracts.tlh index 55597a9..9bc826d 100644 --- a/tests/src/Interop/COM/ServerContracts/Server.Contracts.tlh +++ b/tests/src/Interop/COM/ServerContracts/Server.Contracts.tlh @@ -144,111 +144,111 @@ INumericTesting : IUnknown // Raw methods provided by interface // - virtual HRESULT __stdcall raw_Add_Byte ( + virtual HRESULT STDMETHODCALLTYPE raw_Add_Byte ( /*[in]*/ unsigned char a, /*[in]*/ unsigned char b, /*[out,retval]*/ unsigned char * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Add_Short ( + virtual HRESULT STDMETHODCALLTYPE raw_Add_Short ( /*[in]*/ short a, /*[in]*/ short b, /*[out,retval]*/ short * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Add_UShort ( + virtual HRESULT STDMETHODCALLTYPE raw_Add_UShort ( /*[in]*/ unsigned short a, /*[in]*/ unsigned short b, /*[out,retval]*/ unsigned short * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Add_Int ( + virtual HRESULT STDMETHODCALLTYPE raw_Add_Int ( /*[in]*/ long a, /*[in]*/ long b, /*[out,retval]*/ long * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Add_UInt ( + virtual HRESULT STDMETHODCALLTYPE raw_Add_UInt ( /*[in]*/ unsigned long a, /*[in]*/ unsigned long b, /*[out,retval]*/ unsigned long * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Add_Long ( + virtual HRESULT STDMETHODCALLTYPE raw_Add_Long ( /*[in]*/ __int64 a, /*[in]*/ __int64 b, /*[out,retval]*/ __int64 * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Add_ULong ( + virtual HRESULT STDMETHODCALLTYPE raw_Add_ULong ( /*[in]*/ unsigned __int64 a, /*[in]*/ unsigned __int64 b, /*[out,retval]*/ unsigned __int64 * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Add_Float ( + virtual HRESULT STDMETHODCALLTYPE raw_Add_Float ( /*[in]*/ float a, /*[in]*/ float b, /*[out,retval]*/ float * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Add_Double ( + virtual HRESULT STDMETHODCALLTYPE raw_Add_Double ( /*[in]*/ double a, /*[in]*/ double b, /*[out,retval]*/ double * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Add_Byte_Ref ( + virtual HRESULT STDMETHODCALLTYPE raw_Add_Byte_Ref ( /*[in]*/ unsigned char a, /*[in]*/ unsigned char b, /*[in,out]*/ unsigned char * c ) = 0; - virtual HRESULT __stdcall raw_Add_Short_Ref ( + virtual HRESULT STDMETHODCALLTYPE raw_Add_Short_Ref ( /*[in]*/ short a, /*[in]*/ short b, /*[in,out]*/ short * c ) = 0; - virtual HRESULT __stdcall raw_Add_UShort_Ref ( + virtual HRESULT STDMETHODCALLTYPE raw_Add_UShort_Ref ( /*[in]*/ unsigned short a, /*[in]*/ unsigned short b, /*[in,out]*/ unsigned short * c ) = 0; - virtual HRESULT __stdcall raw_Add_Int_Ref ( + virtual HRESULT STDMETHODCALLTYPE raw_Add_Int_Ref ( /*[in]*/ long a, /*[in]*/ long b, /*[in,out]*/ long * c ) = 0; - virtual HRESULT __stdcall raw_Add_UInt_Ref ( + virtual HRESULT STDMETHODCALLTYPE raw_Add_UInt_Ref ( /*[in]*/ unsigned long a, /*[in]*/ unsigned long b, /*[in,out]*/ unsigned long * c ) = 0; - virtual HRESULT __stdcall raw_Add_Long_Ref ( + virtual HRESULT STDMETHODCALLTYPE raw_Add_Long_Ref ( /*[in]*/ __int64 a, /*[in]*/ __int64 b, /*[in,out]*/ __int64 * c ) = 0; - virtual HRESULT __stdcall raw_Add_ULong_Ref ( + virtual HRESULT STDMETHODCALLTYPE raw_Add_ULong_Ref ( /*[in]*/ unsigned __int64 a, /*[in]*/ unsigned __int64 b, /*[in,out]*/ unsigned __int64 * c ) = 0; - virtual HRESULT __stdcall raw_Add_Float_Ref ( + virtual HRESULT STDMETHODCALLTYPE raw_Add_Float_Ref ( /*[in]*/ float a, /*[in]*/ float b, /*[in,out]*/ float * c ) = 0; - virtual HRESULT __stdcall raw_Add_Double_Ref ( + virtual HRESULT STDMETHODCALLTYPE raw_Add_Double_Ref ( /*[in]*/ double a, /*[in]*/ double b, /*[in,out]*/ double * c ) = 0; - virtual HRESULT __stdcall raw_Add_Byte_Out ( + virtual HRESULT STDMETHODCALLTYPE raw_Add_Byte_Out ( /*[in]*/ unsigned char a, /*[in]*/ unsigned char b, /*[out]*/ unsigned char * c ) = 0; - virtual HRESULT __stdcall raw_Add_Short_Out ( + virtual HRESULT STDMETHODCALLTYPE raw_Add_Short_Out ( /*[in]*/ short a, /*[in]*/ short b, /*[out]*/ short * c ) = 0; - virtual HRESULT __stdcall raw_Add_UShort_Out ( + virtual HRESULT STDMETHODCALLTYPE raw_Add_UShort_Out ( /*[in]*/ unsigned short a, /*[in]*/ unsigned short b, /*[out]*/ unsigned short * c ) = 0; - virtual HRESULT __stdcall raw_Add_Int_Out ( + virtual HRESULT STDMETHODCALLTYPE raw_Add_Int_Out ( /*[in]*/ long a, /*[in]*/ long b, /*[out]*/ long * c ) = 0; - virtual HRESULT __stdcall raw_Add_UInt_Out ( + virtual HRESULT STDMETHODCALLTYPE raw_Add_UInt_Out ( /*[in]*/ unsigned long a, /*[in]*/ unsigned long b, /*[out]*/ unsigned long * c ) = 0; - virtual HRESULT __stdcall raw_Add_Long_Out ( + virtual HRESULT STDMETHODCALLTYPE raw_Add_Long_Out ( /*[in]*/ __int64 a, /*[in]*/ __int64 b, /*[out]*/ __int64 * c ) = 0; - virtual HRESULT __stdcall raw_Add_ULong_Out ( + virtual HRESULT STDMETHODCALLTYPE raw_Add_ULong_Out ( /*[in]*/ unsigned __int64 a, /*[in]*/ unsigned __int64 b, /*[out]*/ unsigned __int64 * c ) = 0; - virtual HRESULT __stdcall raw_Add_Float_Out ( + virtual HRESULT STDMETHODCALLTYPE raw_Add_Float_Out ( /*[in]*/ float a, /*[in]*/ float b, /*[out]*/ float * c ) = 0; - virtual HRESULT __stdcall raw_Add_Double_Out ( + virtual HRESULT STDMETHODCALLTYPE raw_Add_Double_Out ( /*[in]*/ double a, /*[in]*/ double b, /*[out]*/ double * c ) = 0; @@ -347,111 +347,111 @@ IArrayTesting : IUnknown // Raw methods provided by interface // - virtual HRESULT __stdcall raw_Mean_Byte_LP_PreLen ( + virtual HRESULT STDMETHODCALLTYPE raw_Mean_Byte_LP_PreLen ( /*[in]*/ long len, /*[in]*/ unsigned char * d, /*[out,retval]*/ double * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Mean_Short_LP_PreLen ( + virtual HRESULT STDMETHODCALLTYPE raw_Mean_Short_LP_PreLen ( /*[in]*/ long len, /*[in]*/ short * d, /*[out,retval]*/ double * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Mean_UShort_LP_PreLen ( + virtual HRESULT STDMETHODCALLTYPE raw_Mean_UShort_LP_PreLen ( /*[in]*/ long len, /*[in]*/ unsigned short * d, /*[out,retval]*/ double * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Mean_Int_LP_PreLen ( + virtual HRESULT STDMETHODCALLTYPE raw_Mean_Int_LP_PreLen ( /*[in]*/ long len, /*[in]*/ long * d, /*[out,retval]*/ double * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Mean_UInt_LP_PreLen ( + virtual HRESULT STDMETHODCALLTYPE raw_Mean_UInt_LP_PreLen ( /*[in]*/ long len, /*[in]*/ unsigned long * d, /*[out,retval]*/ double * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Mean_Long_LP_PreLen ( + virtual HRESULT STDMETHODCALLTYPE raw_Mean_Long_LP_PreLen ( /*[in]*/ long len, /*[in]*/ __int64 * d, /*[out,retval]*/ double * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Mean_ULong_LP_PreLen ( + virtual HRESULT STDMETHODCALLTYPE raw_Mean_ULong_LP_PreLen ( /*[in]*/ long len, /*[in]*/ unsigned __int64 * d, /*[out,retval]*/ double * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Mean_Float_LP_PreLen ( + virtual HRESULT STDMETHODCALLTYPE raw_Mean_Float_LP_PreLen ( /*[in]*/ long len, /*[in]*/ float * d, /*[out,retval]*/ double * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Mean_Double_LP_PreLen ( + virtual HRESULT STDMETHODCALLTYPE raw_Mean_Double_LP_PreLen ( /*[in]*/ long len, /*[in]*/ double * d, /*[out,retval]*/ double * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Mean_Byte_LP_PostLen ( + virtual HRESULT STDMETHODCALLTYPE raw_Mean_Byte_LP_PostLen ( /*[in]*/ unsigned char * d, /*[in]*/ long len, /*[out,retval]*/ double * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Mean_Short_LP_PostLen ( + virtual HRESULT STDMETHODCALLTYPE raw_Mean_Short_LP_PostLen ( /*[in]*/ short * d, /*[in]*/ long len, /*[out,retval]*/ double * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Mean_UShort_LP_PostLen ( + virtual HRESULT STDMETHODCALLTYPE raw_Mean_UShort_LP_PostLen ( /*[in]*/ unsigned short * d, /*[in]*/ long len, /*[out,retval]*/ double * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Mean_Int_LP_PostLen ( + virtual HRESULT STDMETHODCALLTYPE raw_Mean_Int_LP_PostLen ( /*[in]*/ long * d, /*[in]*/ long len, /*[out,retval]*/ double * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Mean_UInt_LP_PostLen ( + virtual HRESULT STDMETHODCALLTYPE raw_Mean_UInt_LP_PostLen ( /*[in]*/ unsigned long * d, /*[in]*/ long len, /*[out,retval]*/ double * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Mean_Long_LP_PostLen ( + virtual HRESULT STDMETHODCALLTYPE raw_Mean_Long_LP_PostLen ( /*[in]*/ __int64 * d, /*[in]*/ long len, /*[out,retval]*/ double * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Mean_ULong_LP_PostLen ( + virtual HRESULT STDMETHODCALLTYPE raw_Mean_ULong_LP_PostLen ( /*[in]*/ unsigned __int64 * d, /*[in]*/ long len, /*[out,retval]*/ double * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Mean_Float_LP_PostLen ( + virtual HRESULT STDMETHODCALLTYPE raw_Mean_Float_LP_PostLen ( /*[in]*/ float * d, /*[in]*/ long len, /*[out,retval]*/ double * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Mean_Double_LP_PostLen ( + virtual HRESULT STDMETHODCALLTYPE raw_Mean_Double_LP_PostLen ( /*[in]*/ double * d, /*[in]*/ long len, /*[out,retval]*/ double * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Mean_Byte_SafeArray_OutLen ( + virtual HRESULT STDMETHODCALLTYPE raw_Mean_Byte_SafeArray_OutLen ( /*[in]*/ SAFEARRAY * d, /*[out]*/ long * len, /*[out,retval]*/ double * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Mean_Short_SafeArray_OutLen ( + virtual HRESULT STDMETHODCALLTYPE raw_Mean_Short_SafeArray_OutLen ( /*[in]*/ SAFEARRAY * d, /*[out]*/ long * len, /*[out,retval]*/ double * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Mean_UShort_SafeArray_OutLen ( + virtual HRESULT STDMETHODCALLTYPE raw_Mean_UShort_SafeArray_OutLen ( /*[in]*/ SAFEARRAY * d, /*[out]*/ long * len, /*[out,retval]*/ double * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Mean_Int_SafeArray_OutLen ( + virtual HRESULT STDMETHODCALLTYPE raw_Mean_Int_SafeArray_OutLen ( /*[in]*/ SAFEARRAY * d, /*[out]*/ long * len, /*[out,retval]*/ double * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Mean_UInt_SafeArray_OutLen ( + virtual HRESULT STDMETHODCALLTYPE raw_Mean_UInt_SafeArray_OutLen ( /*[in]*/ SAFEARRAY * d, /*[out]*/ long * len, /*[out,retval]*/ double * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Mean_Long_SafeArray_OutLen ( + virtual HRESULT STDMETHODCALLTYPE raw_Mean_Long_SafeArray_OutLen ( /*[in]*/ SAFEARRAY * d, /*[out]*/ long * len, /*[out,retval]*/ double * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Mean_ULong_SafeArray_OutLen ( + virtual HRESULT STDMETHODCALLTYPE raw_Mean_ULong_SafeArray_OutLen ( /*[in]*/ SAFEARRAY * d, /*[out]*/ long * len, /*[out,retval]*/ double * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Mean_Float_SafeArray_OutLen ( + virtual HRESULT STDMETHODCALLTYPE raw_Mean_Float_SafeArray_OutLen ( /*[in]*/ SAFEARRAY * d, /*[out]*/ long * len, /*[out,retval]*/ double * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Mean_Double_SafeArray_OutLen ( + virtual HRESULT STDMETHODCALLTYPE raw_Mean_Double_SafeArray_OutLen ( /*[in]*/ SAFEARRAY * d, /*[out]*/ long * len, /*[out,retval]*/ double * pRetVal ) = 0; @@ -538,91 +538,91 @@ IStringTesting : IUnknown // Raw methods provided by interface // - virtual HRESULT __stdcall raw_Add_LPStr ( + virtual HRESULT STDMETHODCALLTYPE raw_Add_LPStr ( /*[in]*/ LPSTR a, /*[in]*/ LPSTR b, /*[out,retval]*/ LPSTR * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Add_LPWStr ( + virtual HRESULT STDMETHODCALLTYPE raw_Add_LPWStr ( /*[in]*/ LPWSTR a, /*[in]*/ LPWSTR b, /*[out,retval]*/ LPWSTR * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Add_BStr ( + virtual HRESULT STDMETHODCALLTYPE raw_Add_BStr ( /*[in]*/ BSTR a, /*[in]*/ BSTR b, /*[out,retval]*/ BSTR * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Reverse_LPStr ( + virtual HRESULT STDMETHODCALLTYPE raw_Reverse_LPStr ( /*[in]*/ LPSTR a, /*[out,retval]*/ LPSTR * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Reverse_LPStr_Ref ( + virtual HRESULT STDMETHODCALLTYPE raw_Reverse_LPStr_Ref ( /*[in,out]*/ LPSTR * a, /*[out,retval]*/ LPSTR * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Reverse_LPStr_InRef ( + virtual HRESULT STDMETHODCALLTYPE raw_Reverse_LPStr_InRef ( /*[in]*/ LPSTR * a, /*[out,retval]*/ LPSTR * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Reverse_LPStr_Out ( + virtual HRESULT STDMETHODCALLTYPE raw_Reverse_LPStr_Out ( /*[in]*/ LPSTR a, /*[out]*/ LPSTR * b ) = 0; - virtual HRESULT __stdcall raw_Reverse_LPStr_OutAttr ( + virtual HRESULT STDMETHODCALLTYPE raw_Reverse_LPStr_OutAttr ( /*[in]*/ LPSTR a, /*[out]*/ LPSTR b ) = 0; - virtual HRESULT __stdcall raw_Reverse_SB_LPStr ( + virtual HRESULT STDMETHODCALLTYPE raw_Reverse_SB_LPStr ( /*[in,out]*/ LPSTR a, /*[out,retval]*/ LPSTR * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Reverse_SB_LPStr_Ref ( + virtual HRESULT STDMETHODCALLTYPE raw_Reverse_SB_LPStr_Ref ( /*[in,out]*/ LPSTR * a, /*[out,retval]*/ LPSTR * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Reverse_SB_LPStr_InRef ( + virtual HRESULT STDMETHODCALLTYPE raw_Reverse_SB_LPStr_InRef ( /*[in]*/ LPSTR * a, /*[out,retval]*/ LPSTR * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Reverse_SB_LPStr_Out ( + virtual HRESULT STDMETHODCALLTYPE raw_Reverse_SB_LPStr_Out ( /*[in,out]*/ LPSTR a, /*[out]*/ LPSTR * b ) = 0; - virtual HRESULT __stdcall raw_Reverse_SB_LPStr_OutAttr ( + virtual HRESULT STDMETHODCALLTYPE raw_Reverse_SB_LPStr_OutAttr ( /*[in,out]*/ LPSTR a, /*[out]*/ LPSTR b ) = 0; - virtual HRESULT __stdcall raw_Reverse_LPWStr ( + virtual HRESULT STDMETHODCALLTYPE raw_Reverse_LPWStr ( /*[in]*/ LPWSTR a, /*[out,retval]*/ LPWSTR * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Reverse_LPWStr_Ref ( + virtual HRESULT STDMETHODCALLTYPE raw_Reverse_LPWStr_Ref ( /*[in,out]*/ LPWSTR * a, /*[out,retval]*/ LPWSTR * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Reverse_LPWStr_InRef ( + virtual HRESULT STDMETHODCALLTYPE raw_Reverse_LPWStr_InRef ( /*[in]*/ LPWSTR * a, /*[out,retval]*/ LPWSTR * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Reverse_LPWStr_Out ( + virtual HRESULT STDMETHODCALLTYPE raw_Reverse_LPWStr_Out ( /*[in]*/ LPWSTR a, /*[out]*/ LPWSTR * b ) = 0; - virtual HRESULT __stdcall raw_Reverse_LPWStr_OutAttr ( + virtual HRESULT STDMETHODCALLTYPE raw_Reverse_LPWStr_OutAttr ( /*[in]*/ LPWSTR a, /*[out]*/ LPWSTR b ) = 0; - virtual HRESULT __stdcall raw_Reverse_SB_LPWStr ( + virtual HRESULT STDMETHODCALLTYPE raw_Reverse_SB_LPWStr ( /*[in,out]*/ LPWSTR a, /*[out,retval]*/ LPWSTR * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Reverse_SB_LPWStr_Ref ( + virtual HRESULT STDMETHODCALLTYPE raw_Reverse_SB_LPWStr_Ref ( /*[in,out]*/ LPWSTR * a, /*[out,retval]*/ LPWSTR * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Reverse_SB_LPWStr_InRef ( + virtual HRESULT STDMETHODCALLTYPE raw_Reverse_SB_LPWStr_InRef ( /*[in]*/ LPWSTR * a, /*[out,retval]*/ LPWSTR * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Reverse_SB_LPWStr_Out ( + virtual HRESULT STDMETHODCALLTYPE raw_Reverse_SB_LPWStr_Out ( /*[in,out]*/ LPWSTR a, /*[out]*/ LPWSTR * b ) = 0; - virtual HRESULT __stdcall raw_Reverse_SB_LPWStr_OutAttr ( + virtual HRESULT STDMETHODCALLTYPE raw_Reverse_SB_LPWStr_OutAttr ( /*[in,out]*/ LPWSTR a, /*[out]*/ LPWSTR b ) = 0; - virtual HRESULT __stdcall raw_Reverse_BStr ( + virtual HRESULT STDMETHODCALLTYPE raw_Reverse_BStr ( /*[in]*/ BSTR a, /*[out,retval]*/ BSTR * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Reverse_BStr_Ref ( + virtual HRESULT STDMETHODCALLTYPE raw_Reverse_BStr_Ref ( /*[in,out]*/ BSTR * a, /*[out,retval]*/ BSTR * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Reverse_BStr_InRef ( + virtual HRESULT STDMETHODCALLTYPE raw_Reverse_BStr_InRef ( /*[in]*/ BSTR * a, /*[out,retval]*/ BSTR * pRetVal ) = 0; - virtual HRESULT __stdcall raw_Reverse_BStr_Out ( + virtual HRESULT STDMETHODCALLTYPE raw_Reverse_BStr_Out ( /*[in]*/ BSTR a, /*[out]*/ BSTR * b ) = 0; - virtual HRESULT __stdcall raw_Reverse_BStr_OutAttr ( + virtual HRESULT STDMETHODCALLTYPE raw_Reverse_BStr_OutAttr ( /*[in]*/ BSTR a, /*[out]*/ BSTR b ) = 0; }; @@ -641,9 +641,9 @@ IErrorMarshalTesting : IUnknown // Raw methods provided by interface // - virtual HRESULT __stdcall raw_Throw_HResult ( + virtual HRESULT STDMETHODCALLTYPE raw_Throw_HResult ( /*[in]*/ long hresultToReturn ) = 0; - virtual long __stdcall Return_As_HResult ( + virtual long STDMETHODCALLTYPE Return_As_HResult ( /*[in]*/ long hresultToReturn ) = 0; }; diff --git a/tests/src/Interop/DllImportAttribute/ExeFile/ExeFile.cpp b/tests/src/Interop/DllImportAttribute/ExeFile/ExeFile.cpp index 97b79d9..f6ce04f 100644 --- a/tests/src/Interop/DllImportAttribute/ExeFile/ExeFile.cpp +++ b/tests/src/Interop/DllImportAttribute/ExeFile/ExeFile.cpp @@ -10,12 +10,12 @@ #pragma warning( push ) #pragma warning( disable : 4996) -extern "C" DLL_EXPORT int _cdecl Sum(int a, int b) +extern "C" DLL_EXPORT int __cdecl Sum(int a, int b) { return a + b; } -extern "C" int _cdecl main(int argc, char **argv) +extern "C" int __cdecl main(int argc, char **argv) { return 0; } diff --git a/tests/src/Interop/DllImportAttribute/FileNameContainDot/DllFile.Probe.cpp b/tests/src/Interop/DllImportAttribute/FileNameContainDot/DllFile.Probe.cpp index d01fed0..4dcbe60 100644 --- a/tests/src/Interop/DllImportAttribute/FileNameContainDot/DllFile.Probe.cpp +++ b/tests/src/Interop/DllImportAttribute/FileNameContainDot/DllFile.Probe.cpp @@ -10,7 +10,7 @@ #pragma warning( push ) #pragma warning( disable : 4996) -extern "C" DLL_EXPORT int _cdecl Sum(int a, int b) +extern "C" DLL_EXPORT int __cdecl Sum(int a, int b) { return a + b; } \ No newline at end of file diff --git a/tests/src/Interop/DllImportAttribute/Simple/DllFileProbe.cpp b/tests/src/Interop/DllImportAttribute/Simple/DllFileProbe.cpp index d01fed0..4dcbe60 100644 --- a/tests/src/Interop/DllImportAttribute/Simple/DllFileProbe.cpp +++ b/tests/src/Interop/DllImportAttribute/Simple/DllFileProbe.cpp @@ -10,7 +10,7 @@ #pragma warning( push ) #pragma warning( disable : 4996) -extern "C" DLL_EXPORT int _cdecl Sum(int a, int b) +extern "C" DLL_EXPORT int __cdecl Sum(int a, int b) { return a + b; } \ No newline at end of file diff --git a/tests/src/Interop/FuncPtrAsDelegateParam/FuncPtrAsDelegateParamNative.cpp b/tests/src/Interop/FuncPtrAsDelegateParam/FuncPtrAsDelegateParamNative.cpp index 796f1ca..975f57b 100644 --- a/tests/src/Interop/FuncPtrAsDelegateParam/FuncPtrAsDelegateParamNative.cpp +++ b/tests/src/Interop/FuncPtrAsDelegateParam/FuncPtrAsDelegateParamNative.cpp @@ -8,14 +8,14 @@ //Cdecl -1 678 -int _cdecl CdeTest() +int __cdecl CdeTest() { return -1; } -typedef int (_cdecl *pFunc)(); -typedef int (_cdecl *Cdeclcaller)(pFunc); -extern "C" DLL_EXPORT BOOL _cdecl DoCallBack_Cdecl(Cdeclcaller caller) +typedef int (__cdecl *pFunc)(); +typedef int (__cdecl *Cdeclcaller)(pFunc); +extern "C" DLL_EXPORT BOOL __cdecl DoCallBack_Cdecl(Cdeclcaller caller) { printf("DoCallBack_Cdecl\n"); diff --git a/tests/src/Interop/MarshalAPI/FunctionPointer/CMakeLists.txt b/tests/src/Interop/MarshalAPI/FunctionPointer/CMakeLists.txt index 6a41f54..00d7fff 100644 --- a/tests/src/Interop/MarshalAPI/FunctionPointer/CMakeLists.txt +++ b/tests/src/Interop/MarshalAPI/FunctionPointer/CMakeLists.txt @@ -5,6 +5,7 @@ set(SOURCES FunctionPointerNative.cpp) # add the executable add_library (FunctionPointerNative SHARED ${SOURCES}) +target_link_libraries(FunctionPointerNative ${LINK_LIBRARIES_ADDITIONAL}) # add the install targets install (TARGETS FunctionPointerNative DESTINATION bin) diff --git a/tests/src/Interop/MarshalAPI/FunctionPointer/FunctionPointerNative.cpp b/tests/src/Interop/MarshalAPI/FunctionPointer/FunctionPointerNative.cpp index 2305957..96b8148 100644 --- a/tests/src/Interop/MarshalAPI/FunctionPointer/FunctionPointerNative.cpp +++ b/tests/src/Interop/MarshalAPI/FunctionPointer/FunctionPointerNative.cpp @@ -4,7 +4,7 @@ #include #include -extern "C" DLL_EXPORT bool __cdecl CheckFcnPtr(bool(CALLBACK *fcnptr)(__int64)) +extern "C" DLL_EXPORT bool __cdecl CheckFcnPtr(bool(STDMETHODCALLTYPE *fcnptr)(__int64)) { if (fcnptr == 0) { diff --git a/tests/src/Interop/MarshalAPI/IUnknown/CMakeLists.txt b/tests/src/Interop/MarshalAPI/IUnknown/CMakeLists.txt index af1afb5..218462f 100644 --- a/tests/src/Interop/MarshalAPI/IUnknown/CMakeLists.txt +++ b/tests/src/Interop/MarshalAPI/IUnknown/CMakeLists.txt @@ -5,6 +5,7 @@ set(SOURCES IUnknownNative.cpp) # add the executable add_library (IUnknownNative SHARED ${SOURCES}) +target_link_libraries(IUnknownNative ${LINK_LIBRARIES_ADDITIONAL}) # add the install targets install (TARGETS IUnknownNative DESTINATION bin) diff --git a/tests/src/Interop/MarshalAPI/IUnknown/IUnknownNative.cpp b/tests/src/Interop/MarshalAPI/IUnknown/IUnknownNative.cpp index bdc382b..7b37abe 100644 --- a/tests/src/Interop/MarshalAPI/IUnknown/IUnknownNative.cpp +++ b/tests/src/Interop/MarshalAPI/IUnknown/IUnknownNative.cpp @@ -4,7 +4,7 @@ #include #include -extern "C" DLL_EXPORT BOOL _cdecl Marshal_IUnknown(/*[in]*/IUnknown *o) +extern "C" DLL_EXPORT BOOL __cdecl Marshal_IUnknown(/*[in]*/IUnknown *o) { //Call AddRef and Release on the passed IUnknown //test if the ref counts get updated as expected diff --git a/tests/src/Interop/NativeCallable/NativeCallableDll.cpp b/tests/src/Interop/NativeCallable/NativeCallableDll.cpp index b9fa381..a90109b 100644 --- a/tests/src/Interop/NativeCallable/NativeCallableDll.cpp +++ b/tests/src/Interop/NativeCallable/NativeCallableDll.cpp @@ -4,9 +4,9 @@ #include -typedef int (NATIVEAPI *CALLBACKPROC)(int n); +typedef int (STDMETHODCALLTYPE *CALLBACKPROC)(int n); -extern "C" DLL_EXPORT int NATIVEAPI CallManagedProc(CALLBACKPROC pCallbackProc, int n) +extern "C" DLL_EXPORT int STDMETHODCALLTYPE CallManagedProc(CALLBACKPROC pCallbackProc, int n) { return pCallbackProc(n); } diff --git a/tests/src/Interop/PrimitiveMarshalling/Bool/BoolNative.cpp b/tests/src/Interop/PrimitiveMarshalling/Bool/BoolNative.cpp index 79ab5c9..23eeb2f 100644 --- a/tests/src/Interop/PrimitiveMarshalling/Bool/BoolNative.cpp +++ b/tests/src/Interop/PrimitiveMarshalling/Bool/BoolNative.cpp @@ -9,7 +9,7 @@ BOOL boolManaged = true; BOOL boolNative = false; -extern "C" DLL_EXPORT BOOL __stdcall Marshal_In(/*[in]*/BOOL boolValue) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE Marshal_In(/*[in]*/BOOL boolValue) { //Check the input if(boolValue != boolManaged) @@ -29,7 +29,7 @@ extern "C" DLL_EXPORT BOOL __stdcall Marshal_In(/*[in]*/BOOL boolValue) return true; } -extern "C" DLL_EXPORT BOOL __stdcall Marshal_InOut(/*[In,Out]*/BOOL boolValue) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE Marshal_InOut(/*[In,Out]*/BOOL boolValue) { //Check the input if(boolValue != boolManaged) @@ -53,7 +53,7 @@ extern "C" DLL_EXPORT BOOL __stdcall Marshal_InOut(/*[In,Out]*/BOOL boolValue) return true; } -extern "C" DLL_EXPORT BOOL __stdcall Marshal_Out(/*[Out]*/BOOL boolValue) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE Marshal_Out(/*[Out]*/BOOL boolValue) { //In-Place Change boolValue = boolNative; @@ -62,7 +62,7 @@ extern "C" DLL_EXPORT BOOL __stdcall Marshal_Out(/*[Out]*/BOOL boolValue) return true; } -extern "C" DLL_EXPORT BOOL __stdcall MarshalPointer_In(/*[in]*/BOOL *pboolValue) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalPointer_In(/*[in]*/BOOL *pboolValue) { //Check the input if(*pboolValue != boolManaged) @@ -82,7 +82,7 @@ extern "C" DLL_EXPORT BOOL __stdcall MarshalPointer_In(/*[in]*/BOOL *pboolValue) return true; } -extern "C" DLL_EXPORT BOOL __stdcall MarshalPointer_InOut(/*[in,out]*/BOOL *pboolValue) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalPointer_InOut(/*[in,out]*/BOOL *pboolValue) { //Check the input if(*pboolValue != boolManaged) @@ -106,7 +106,7 @@ extern "C" DLL_EXPORT BOOL __stdcall MarshalPointer_InOut(/*[in,out]*/BOOL *pboo return true; } -extern "C" DLL_EXPORT BOOL __stdcall MarshalPointer_Out(/*[out]*/ BOOL *pboolValue) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalPointer_Out(/*[out]*/ BOOL *pboolValue) { //In-Place Change *pboolValue = boolNative; @@ -121,7 +121,7 @@ extern "C" DLL_EXPORT BOOL __stdcall MarshalPointer_Out(/*[out]*/ BOOL *pboolVal #pragma warning(disable: 4800) #endif -extern "C" DLL_EXPORT bool __stdcall Marshal_As_In(/*[in]*/bool boolValue) +extern "C" DLL_EXPORT bool STDMETHODCALLTYPE Marshal_As_In(/*[in]*/bool boolValue) { //Check the input if(boolValue != (bool)boolManaged) @@ -141,7 +141,7 @@ extern "C" DLL_EXPORT bool __stdcall Marshal_As_In(/*[in]*/bool boolValue) return true; } -extern "C" DLL_EXPORT bool __stdcall Marshal_As_InOut(/*[In,Out]*/bool boolValue) +extern "C" DLL_EXPORT bool STDMETHODCALLTYPE Marshal_As_InOut(/*[In,Out]*/bool boolValue) { //Check the input if(boolValue != (bool)boolManaged) @@ -165,7 +165,7 @@ extern "C" DLL_EXPORT bool __stdcall Marshal_As_InOut(/*[In,Out]*/bool boolValue return true; } -extern "C" DLL_EXPORT bool __stdcall Marshal_As_Out(/*[Out]*/bool boolValue) +extern "C" DLL_EXPORT bool STDMETHODCALLTYPE Marshal_As_Out(/*[Out]*/bool boolValue) { //In-Place Change boolValue = (bool)boolNative; diff --git a/tests/src/Interop/PrimitiveMarshalling/EnumMarshalling/MarshalEnumNative.cpp b/tests/src/Interop/PrimitiveMarshalling/EnumMarshalling/MarshalEnumNative.cpp index 3d8f861..f46eb6a 100644 --- a/tests/src/Interop/PrimitiveMarshalling/EnumMarshalling/MarshalEnumNative.cpp +++ b/tests/src/Interop/PrimitiveMarshalling/EnumMarshalling/MarshalEnumNative.cpp @@ -5,7 +5,7 @@ typedef void *voidPtr; -extern "C" DLL_EXPORT long _cdecl CdeclEnum(int r,BOOL *result) +extern "C" DLL_EXPORT long __cdecl CdeclEnum(int r,BOOL *result) { if(r != 3) { @@ -17,7 +17,7 @@ extern "C" DLL_EXPORT long _cdecl CdeclEnum(int r,BOOL *result) } -extern "C" DLL_EXPORT voidPtr _cdecl GetFptr(int i) +extern "C" DLL_EXPORT voidPtr __cdecl GetFptr(int i) { return (voidPtr) &CdeclEnum; } diff --git a/tests/src/Interop/PrimitiveMarshalling/UIntPtr/UIntPtrNative.cpp b/tests/src/Interop/PrimitiveMarshalling/UIntPtr/UIntPtrNative.cpp index 43cde25..35f8123 100644 --- a/tests/src/Interop/PrimitiveMarshalling/UIntPtr/UIntPtrNative.cpp +++ b/tests/src/Interop/PrimitiveMarshalling/UIntPtr/UIntPtrNative.cpp @@ -13,7 +13,7 @@ UINT_PTR uintPtrErrReturn = 4000; // // PInvokeUIntPtrTest.cs declares that all of these APIs use STDCALL. // -extern "C" DLL_EXPORT UINT_PTR __stdcall Marshal_In(/*[in]*/UINT_PTR uintPtr) +extern "C" DLL_EXPORT UINT_PTR STDMETHODCALLTYPE Marshal_In(/*[in]*/UINT_PTR uintPtr) { //Check the input if(uintPtr != uintPtrManaged) @@ -27,7 +27,7 @@ extern "C" DLL_EXPORT UINT_PTR __stdcall Marshal_In(/*[in]*/UINT_PTR uintPtr) return uintPtrReturn; } -extern "C" DLL_EXPORT UINT_PTR __stdcall Marshal_InOut(/*[In,Out]*/UINT_PTR uintPtr) +extern "C" DLL_EXPORT UINT_PTR STDMETHODCALLTYPE Marshal_InOut(/*[In,Out]*/UINT_PTR uintPtr) { //Check the input if(uintPtr != uintPtrManaged) @@ -45,7 +45,7 @@ extern "C" DLL_EXPORT UINT_PTR __stdcall Marshal_InOut(/*[In,Out]*/UINT_PTR uint return uintPtrReturn; } -extern "C" DLL_EXPORT UINT_PTR __stdcall Marshal_Out(/*[Out]*/UINT_PTR uintPtr) +extern "C" DLL_EXPORT UINT_PTR STDMETHODCALLTYPE Marshal_Out(/*[Out]*/UINT_PTR uintPtr) { uintPtr = uintPtrNative; @@ -53,7 +53,7 @@ extern "C" DLL_EXPORT UINT_PTR __stdcall Marshal_Out(/*[Out]*/UINT_PTR uintPtr) return uintPtrReturn; } -extern "C" DLL_EXPORT UINT_PTR __stdcall MarshalPointer_In(/*[in]*/UINT_PTR *puintPtr) +extern "C" DLL_EXPORT UINT_PTR STDMETHODCALLTYPE MarshalPointer_In(/*[in]*/UINT_PTR *puintPtr) { //Check the input if(*puintPtr != uintPtrManaged) @@ -66,7 +66,7 @@ extern "C" DLL_EXPORT UINT_PTR __stdcall MarshalPointer_In(/*[in]*/UINT_PTR *pui return uintPtrReturn; } -extern "C" DLL_EXPORT UINT_PTR __stdcall MarshalPointer_InOut(/*[in,out]*/UINT_PTR *puintPtr) +extern "C" DLL_EXPORT UINT_PTR STDMETHODCALLTYPE MarshalPointer_InOut(/*[in,out]*/UINT_PTR *puintPtr) { //Check the input if(*puintPtr != uintPtrManaged) @@ -83,7 +83,7 @@ extern "C" DLL_EXPORT UINT_PTR __stdcall MarshalPointer_InOut(/*[in,out]*/UINT_P return uintPtrReturn; } -extern "C" DLL_EXPORT UINT_PTR __stdcall MarshalPointer_Out(/*[out]*/ UINT_PTR *puintPtr) +extern "C" DLL_EXPORT UINT_PTR STDMETHODCALLTYPE MarshalPointer_Out(/*[out]*/ UINT_PTR *puintPtr) { *puintPtr = uintPtrNative; diff --git a/tests/src/Interop/RefCharArray/RefCharArrayNative.cpp b/tests/src/Interop/RefCharArray/RefCharArrayNative.cpp index 3762b7a..e5972cb 100755 --- a/tests/src/Interop/RefCharArray/RefCharArrayNative.cpp +++ b/tests/src/Interop/RefCharArray/RefCharArrayNative.cpp @@ -7,7 +7,7 @@ #include const int LEN = 10; -extern "C" BOOL DLL_EXPORT _cdecl MarshalRefCharArray_Cdecl(char ** pstr) +extern "C" BOOL DLL_EXPORT __cdecl MarshalRefCharArray_Cdecl(char ** pstr) { //Check the Input for(int i = 0; i < LEN; i++) @@ -46,10 +46,10 @@ extern "C" BOOL DLL_EXPORT __stdcall MarshalRefCharArray_Stdcall(char ** pstr) return TRUE; } -typedef BOOL(_cdecl *CdeclCallBack)(char ** pstr); -extern "C" BOOL DLL_EXPORT _cdecl DoCallBack_MarshalRefCharArray_Cdecl(CdeclCallBack caller) +typedef BOOL(__cdecl *CdeclCallBack)(char ** pstr); +extern "C" BOOL DLL_EXPORT __cdecl DoCallBack_MarshalRefCharArray_Cdecl(CdeclCallBack caller) { - char * str = (char*)CoTaskMemAlloc(LEN); + char * str = (char*)CoreClrAlloc(LEN); for(int i = 0;ia = 100; p->b=1; @@ -35,7 +35,7 @@ DLL_EXPORT BOOL _cdecl CdeclSimpleStructByRef(Sstr *p) } extern "C" -DLL_EXPORT BOOL _cdecl CdeclSimpleExplStructByRef(ExplStruct *p) +DLL_EXPORT BOOL __cdecl CdeclSimpleExplStructByRef(ExplStruct *p) { if((p->a != 0) || (p->udata.i != 10)) { @@ -48,7 +48,7 @@ DLL_EXPORT BOOL _cdecl CdeclSimpleExplStructByRef(ExplStruct *p) } extern "C" -DLL_EXPORT Sstr_simple* _cdecl CdeclSimpleStruct(Sstr_simple p,BOOL *result) +DLL_EXPORT Sstr_simple* __cdecl CdeclSimpleStruct(Sstr_simple p,BOOL *result) { Sstr_simple *pSimpleStruct; if((p.a !=100) || (p.b != FALSE) || (p.c != 3.142)) @@ -56,7 +56,7 @@ DLL_EXPORT Sstr_simple* _cdecl CdeclSimpleStruct(Sstr_simple p,BOOL *result) *(result)= FALSE; return NULL; } - pSimpleStruct = (Sstr_simple*) TP_CoTaskMemAlloc(sizeof(Sstr_simple) * 1); + pSimpleStruct = (Sstr_simple*) CoreClrAlloc(sizeof(Sstr_simple) * 1); pSimpleStruct->a = 101; pSimpleStruct->b = TRUE; pSimpleStruct->c = 10.11; @@ -65,7 +65,7 @@ DLL_EXPORT Sstr_simple* _cdecl CdeclSimpleStruct(Sstr_simple p,BOOL *result) } extern "C" -DLL_EXPORT ExplStruct* _cdecl CdeclSimpleExplStruct(ExplStruct p,BOOL *result) +DLL_EXPORT ExplStruct* __cdecl CdeclSimpleExplStruct(ExplStruct p,BOOL *result) { ExplStruct *pExplStruct; if((p.a !=1) || (p.udata.b != FALSE)) @@ -73,7 +73,7 @@ DLL_EXPORT ExplStruct* _cdecl CdeclSimpleExplStruct(ExplStruct p,BOOL *result) *(result)= FALSE; return NULL; } - pExplStruct = (ExplStruct*) TP_CoTaskMemAlloc(sizeof(ExplStruct) * 1); + pExplStruct = (ExplStruct*) CoreClrAlloc(sizeof(ExplStruct) * 1); pExplStruct->a = 2; pExplStruct->udata.d = 3.142; *(result)= TRUE; @@ -81,7 +81,7 @@ DLL_EXPORT ExplStruct* _cdecl CdeclSimpleExplStruct(ExplStruct p,BOOL *result) } extern "C" -DLL_EXPORT voidPtr NATIVEAPI GetFptr(int i) +DLL_EXPORT voidPtr STDMETHODCALLTYPE GetFptr(int i) { switch(i) { diff --git a/tests/src/Interop/SizeConst/CMakeLists.txt b/tests/src/Interop/SizeConst/CMakeLists.txt index 3ec7dd3..c162365 100644 --- a/tests/src/Interop/SizeConst/CMakeLists.txt +++ b/tests/src/Interop/SizeConst/CMakeLists.txt @@ -4,6 +4,7 @@ set(SOURCES SizeConstNative.cpp) # add the executable add_library (SizeConstNative SHARED ${SOURCES}) +target_link_libraries(SizeConstNative ${LINK_LIBRARIES_ADDITIONAL}) # add the install targets install (TARGETS SizeConstNative DESTINATION bin) diff --git a/tests/src/Interop/SizeConst/SizeConstNative.cpp b/tests/src/Interop/SizeConst/SizeConstNative.cpp index 2a9e661..05288f0 100644 --- a/tests/src/Interop/SizeConst/SizeConstNative.cpp +++ b/tests/src/Interop/SizeConst/SizeConstNative.cpp @@ -6,7 +6,7 @@ const int ARRAY_SIZE = 100; typedef struct { char arr[ARRAY_SIZE]; } S_CHARByValArray; -extern "C" DLL_EXPORT BOOL _cdecl TakeByValTStr(S_CHARByValArray s, int size) +extern "C" DLL_EXPORT BOOL __cdecl TakeByValTStr(S_CHARByValArray s, int size) { return true; } diff --git a/tests/src/Interop/StringMarshalling/LPSTR/LPSTRTestNative.cpp b/tests/src/Interop/StringMarshalling/LPSTR/LPSTRTestNative.cpp index 485d949..5a03672 100644 --- a/tests/src/Interop/StringMarshalling/LPSTR/LPSTRTestNative.cpp +++ b/tests/src/Interop/StringMarshalling/LPSTR/LPSTRTestNative.cpp @@ -17,7 +17,7 @@ size_t lenstrNative = 7; //the len of strNative extern "C" LPSTR ReturnString() { size_t strLength = strlen(strReturn); - LPSTR ret = (LPSTR)(CoTaskMemAlloc(sizeof(char)* (strLength +1))); + LPSTR ret = (LPSTR)(CoreClrAlloc(sizeof(char)* (strLength +1))); memset(ret,'\0',strLength+1); strncpy_s(ret,strLength + 1, strReturn, strLength); return ret; @@ -26,7 +26,7 @@ extern "C" LPSTR ReturnString() extern "C" LPSTR ReturnErrorString() { size_t strLength = strlen(strerrReturn); - LPSTR ret = (LPSTR)(CoTaskMemAlloc(sizeof(char)*(strLength + 1))); + LPSTR ret = (LPSTR)(CoreClrAlloc(sizeof(char)*(strLength + 1))); memset(ret,'\0',strLength + 1); strncpy_s(ret,strLength + 1,strerrReturn,strLength); return ret; @@ -60,7 +60,7 @@ extern "C" DLL_EXPORT LPSTR Marshal_InOut(/*[In,Out]*/LPSTR s) extern "C" DLL_EXPORT LPSTR Marshal_Out(/*[Out]*/LPSTR s) { - s = (LPSTR)(CoTaskMemAlloc(sizeof(char)*(lenstrNative+1))); + s = (LPSTR)(CoreClrAlloc(sizeof(char)*(lenstrNative+1))); memset(s,0,lenstrNative+1); //In-Place Change @@ -90,8 +90,8 @@ extern "C" DLL_EXPORT LPSTR MarshalPointer_InOut(/*[in,out]*/LPSTR *s) } //Allocate New - CoTaskMemFree(*s); - *s = (LPSTR)CoTaskMemAlloc(sizeof(char)*(lenstrNative+1)); + CoreClrFree(*s); + *s = (LPSTR)CoreClrAlloc(sizeof(char)*(lenstrNative+1)); memset(*s,0,lenstrNative+1); strncpy_s(*s,len + 1,strNative,lenstrNative); @@ -101,7 +101,7 @@ extern "C" DLL_EXPORT LPSTR MarshalPointer_InOut(/*[in,out]*/LPSTR *s) extern "C" DLL_EXPORT LPSTR MarshalPointer_Out(/*[out]*/ LPSTR *s) { - *s = (LPSTR)CoTaskMemAlloc(sizeof(char)*(lenstrNative+1)); + *s = (LPSTR)CoreClrAlloc(sizeof(char)*(lenstrNative+1)); memset(*s,0,lenstrNative+1); strncpy_s(*s,lenstrNative+1,strNative,lenstrNative); @@ -138,7 +138,7 @@ extern "C" DLL_EXPORT BOOL __cdecl RPinvoke_DelMarshal_InOut(Test_DelMarshal_InO return FALSE; } - CoTaskMemFree((LPVOID)str); + CoreClrFree((LPVOID)str); return TRUE; } diff --git a/tests/src/Interop/StringMarshalling/LPTSTR/LPTSTRTestNative.cpp b/tests/src/Interop/StringMarshalling/LPTSTR/LPTSTRTestNative.cpp index 15b6038..df9a6d3 100644 --- a/tests/src/Interop/StringMarshalling/LPTSTR/LPTSTRTestNative.cpp +++ b/tests/src/Interop/StringMarshalling/LPTSTR/LPTSTRTestNative.cpp @@ -17,7 +17,7 @@ size_t lenstrNative = 7; //the len of strNative extern "C" LPWSTR ReturnString() { size_t length = wcslen(strReturn)+1; - LPWSTR ret = (LPWSTR)CoTaskMemAlloc(sizeof(WCHAR)*length); + LPWSTR ret = (LPWSTR)CoreClrAlloc(sizeof(WCHAR)*length); memset(ret,'\0', sizeof(WCHAR)*length); wcsncpy_s(ret,length,strReturn,length-1); return ret; @@ -26,7 +26,7 @@ extern "C" LPWSTR ReturnString() extern "C" LPWSTR ReturnErrString() { size_t length = wcslen(strErrReturn)+1; - LPWSTR ret = (LPWSTR)CoTaskMemAlloc(sizeof(WCHAR)*length); + LPWSTR ret = (LPWSTR)CoreClrAlloc(sizeof(WCHAR)*length); memset(ret,'\0', sizeof(WCHAR)*length); wcsncpy_s(ret,length,strErrReturn,length-1); return ret; @@ -56,7 +56,7 @@ extern "C" DLL_EXPORT LPWSTR Marshal_InOut(/*[In,Out]*/LPWSTR s) extern "C" DLL_EXPORT LPWSTR Marshal_Out(/*[Out]*/LPWSTR s) { - s = (LPWSTR)CoTaskMemAlloc(sizeof(WCHAR)*(lenstrNative+1));; + s = (LPWSTR)CoreClrAlloc(sizeof(WCHAR)*(lenstrNative+1));; memset(s,0, sizeof(WCHAR)*(lenstrNative + 1)); //In-Place Change @@ -78,11 +78,11 @@ extern "C" DLL_EXPORT LPWSTR MarshalPointer_InOut(/*[in,out]*/LPWSTR *s) } //Allocate New - CoTaskMemFree(*s); + CoreClrFree(*s); //Alloc New size_t length = lenstrNative + 1; - *s = (LPWSTR)CoTaskMemAlloc(length * sizeof(WCHAR)); + *s = (LPWSTR)CoreClrAlloc(length * sizeof(WCHAR)); memset(*s,'\0',length * sizeof(WCHAR)); wcsncpy_s(*s,length,strNative,lenstrNative); @@ -93,7 +93,7 @@ extern "C" DLL_EXPORT LPWSTR MarshalPointer_InOut(/*[in,out]*/LPWSTR *s) extern "C" DLL_EXPORT LPWSTR MarshalPointer_Out(/*[out]*/ LPWSTR *s) { size_t length = lenstrNative+1; - *s = (LPWSTR)CoTaskMemAlloc(sizeof(WCHAR)*length); + *s = (LPWSTR)CoreClrAlloc(sizeof(WCHAR)*length); memset(*s, '\0', length * sizeof(WCHAR)); wcsncpy_s(*s,length,strNative,lenstrNative); @@ -101,7 +101,7 @@ extern "C" DLL_EXPORT LPWSTR MarshalPointer_Out(/*[out]*/ LPWSTR *s) } typedef LPWSTR (__stdcall * Test_Del_MarshalStrB_InOut)(/*[in,out]*/ LPWSTR s); -extern "C" DLL_EXPORT BOOL NATIVEAPI ReverseP_MarshalStrB_InOut(Test_Del_MarshalStrB_InOut d, /*[in]*/ LPCWSTR s) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE ReverseP_MarshalStrB_InOut(Test_Del_MarshalStrB_InOut d, /*[in]*/ LPCWSTR s) { LPWSTR ret = d((LPWSTR)s); LPWSTR expectedret =(LPWSTR)W("Native"); @@ -127,7 +127,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI ReverseP_MarshalStrB_InOut(Test_Del_Marshal } typedef LPWSTR (__cdecl * Test_Del_MarshalStrB_Out)(/*[out]*/ LPWSTR * s); -extern "C" DLL_EXPORT BOOL NATIVEAPI ReverseP_MarshalStrB_Out(Test_Del_MarshalStrB_Out d) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE ReverseP_MarshalStrB_Out(Test_Del_MarshalStrB_Out d) { LPWSTR s; LPWSTR ret = d((LPWSTR*)&s); diff --git a/tests/src/Interop/StringMarshalling/UTF8/UTF8TestNative.cpp b/tests/src/Interop/StringMarshalling/UTF8/UTF8TestNative.cpp index 7007651..3dde7f8 100644 --- a/tests/src/Interop/StringMarshalling/UTF8/UTF8TestNative.cpp +++ b/tests/src/Interop/StringMarshalling/UTF8/UTF8TestNative.cpp @@ -31,7 +31,7 @@ char* utf16_to_utf8(const wchar_t *srcstring) NULL, NULL); - char *pszUTF8 = (char*)CoTaskMemAlloc(sizeof(char) * (cbUTF8 + 1)); + char *pszUTF8 = (char*)CoreClrAlloc(sizeof(char) * (cbUTF8 + 1)); int nc = WideCharToMultiByte(CP_UTF8, // convert to UTF-8 0, //default flags srcstring, //source wide string @@ -69,7 +69,7 @@ wchar_t* utf8_to_utf16(const char *utf8) 0 // request size of destination buffer, in wchar_t's ); - wszTextUTF16 = (wchar_t*)(CoTaskMemAlloc((cbUTF16 + 1) * sizeof(wchar_t))); + wszTextUTF16 = (wchar_t*)(CoreClrAlloc((cbUTF16 + 1) * sizeof(wchar_t))); // Do the actual conversion from UTF-8 to UTF-16 int nc = ::MultiByteToWideChar( CP_UTF8, // convert from UTF-8 @@ -95,7 +95,7 @@ char *get_utf8_string(int index) { void free_utf8_string(char *str) { - CoTaskMemFree(str); + CoreClrFree(str); } #else //Not WIndows @@ -128,7 +128,7 @@ LPSTR build_return_string(const char* pReturn) return ret; size_t strLength = strlen(pReturn); - ret = (LPSTR)(CoTaskMemAlloc(sizeof(char)* (strLength + 1))); + ret = (LPSTR)(CoreClrAlloc(sizeof(char)* (strLength + 1))); memset(ret, '\0', strLength + 1); strncpy_s(ret, strLength + 1, pReturn, strLength); return ret; @@ -181,7 +181,7 @@ extern "C" DLL_EXPORT char* __cdecl StringBuilderParameterReturn(int index) { char *pszTextutf8 = get_utf8_string(index); size_t strLength = strlen(pszTextutf8); - LPSTR ret = (LPSTR)(CoTaskMemAlloc(sizeof(char)* (strLength + 1))); + LPSTR ret = (LPSTR)(CoreClrAlloc(sizeof(char)* (strLength + 1))); memcpy(ret, pszTextutf8, strLength); ret[strLength] = '\0'; free_utf8_string(pszTextutf8); @@ -209,7 +209,7 @@ typedef struct FieldWithUtf8 }FieldWithUtf8; //utf8 struct field -extern "C" DLL_EXPORT void _cdecl TestStructWithUtf8Field(struct FieldWithUtf8 fieldStruct) +extern "C" DLL_EXPORT void __cdecl TestStructWithUtf8Field(struct FieldWithUtf8 fieldStruct) { char *pszManagedutf8 = fieldStruct.pFirst; int stringIndex = fieldStruct.index; @@ -238,7 +238,7 @@ extern "C" DLL_EXPORT void __cdecl StringParameterRefOut(/*out*/ char **s, int i { char *pszTextutf8 = get_utf8_string(index); size_t strLength = strlen(pszTextutf8); - *s = (LPSTR)(CoTaskMemAlloc(sizeof(char)* (strLength + 1))); + *s = (LPSTR)(CoreClrAlloc(sizeof(char)* (strLength + 1))); memcpy(*s, pszTextutf8, strLength); (*s)[strLength] = '\0'; free_utf8_string(pszTextutf8); @@ -262,10 +262,10 @@ extern "C" DLL_EXPORT void __cdecl StringParameterRef(/*ref*/ char **s, int inde if (*s) { - CoTaskMemFree(*s); + CoreClrFree(*s); } // overwrite the orginal - *s = (LPSTR)(CoTaskMemAlloc(sizeof(char)* (strLength + 1))); + *s = (LPSTR)(CoreClrAlloc(sizeof(char)* (strLength + 1))); memcpy(*s, pszTextutf8, strLength); (*s)[strLength] = '\0'; free_utf8_string(pszTextutf8); @@ -273,7 +273,7 @@ extern "C" DLL_EXPORT void __cdecl StringParameterRef(/*ref*/ char **s, int inde // delegate test typedef void (__cdecl * Callback)(char *text, int index); -extern "C" DLL_EXPORT void _cdecl Utf8DelegateAsParameter(Callback managedCallback) +extern "C" DLL_EXPORT void __cdecl Utf8DelegateAsParameter(Callback managedCallback) { for (int i = 0; i < NSTRINGS; ++i) { diff --git a/tests/src/Interop/StructMarshalling/PInvoke/MarshalStructAsParamDLL.cpp b/tests/src/Interop/StructMarshalling/PInvoke/MarshalStructAsParamDLL.cpp index abf8798..2cdc05e 100644 --- a/tests/src/Interop/StructMarshalling/PInvoke/MarshalStructAsParamDLL.cpp +++ b/tests/src/Interop/StructMarshalling/PInvoke/MarshalStructAsParamDLL.cpp @@ -3,7 +3,7 @@ /////////////////////////////////////////////////////////////////////////////////// // EXPORTED METHODS /////////////////////////////////////////////////////////////////////////////////// -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByVal(InnerSequential inner) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByVal(InnerSequential inner) { if(!IsCorrectInnerSequential(&inner)) { @@ -15,7 +15,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByVal(InnerSequen return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRef(InnerSequential* inner) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByRef(InnerSequential* inner) { if(!IsCorrectInnerSequential(inner)) { @@ -26,7 +26,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRef(InnerSequen ChangeInnerSequential(inner); return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRefIn(InnerSequential* inner) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByRefIn(InnerSequential* inner) { if(!IsCorrectInnerSequential(inner)) { @@ -38,7 +38,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRefIn(InnerSequ return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByValOut(InnerSequential inner) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByValOut(InnerSequential inner) { if(!IsCorrectInnerSequential(&inner)) { @@ -50,14 +50,14 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByValOut(InnerSeq return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRefOut(InnerSequential* inner) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByRefOut(InnerSequential* inner) { ChangeInnerSequential(inner); return TRUE; } /////////////////////////////////////////////////////////////////////////////////////////// -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByVal2(InnerArraySequential outer) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByVal2(InnerArraySequential outer) { if(!IsCorrectInnerArraySequential(&outer)) { @@ -69,7 +69,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByVal2(InnerArray return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRef2(InnerArraySequential* outer) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByRef2(InnerArraySequential* outer) { if(!IsCorrectInnerArraySequential(outer)) { @@ -80,7 +80,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRef2(InnerArray ChangeInnerArraySequential(outer); return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRefIn2(InnerArraySequential* outer) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByRefIn2(InnerArraySequential* outer) { if(!IsCorrectInnerArraySequential(outer)) { @@ -91,7 +91,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRefIn2(InnerArr ChangeInnerArraySequential(outer); return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByValOut2(InnerArraySequential outer) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByValOut2(InnerArraySequential outer) { if(!IsCorrectInnerArraySequential(&outer)) { @@ -106,7 +106,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByValOut2(InnerAr } return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRefOut2(InnerArraySequential* outer) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByRefOut2(InnerArraySequential* outer) { for(int i = 0;if1)); + CoreClrFree((void*)(str1->f1)); str1->f1 = CoStrDup("change string"); str1->f2 = 'n'; return TRUE; } //////////////////////////////////////////////////////////////////////////////////////////////// -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByVal4(CharSetUnicodeSequential str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByVal4(CharSetUnicodeSequential str1) { if(!IsCorrectCharSetUnicodeSequential(&str1)) { @@ -185,7 +185,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByVal4(CharSetUni ChangeCharSetUnicodeSequential(&str1); return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRef4(CharSetUnicodeSequential* str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByRef4(CharSetUnicodeSequential* str1) { if(!IsCorrectCharSetUnicodeSequential(str1)) { @@ -196,7 +196,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRef4(CharSetUni ChangeCharSetUnicodeSequential(str1); return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRefIn4(CharSetUnicodeSequential* str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByRefIn4(CharSetUnicodeSequential* str1) { if(!IsCorrectCharSetUnicodeSequential(str1)) { @@ -207,7 +207,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRefIn4(CharSetU ChangeCharSetUnicodeSequential(str1); return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByValOut4(CharSetUnicodeSequential str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByValOut4(CharSetUnicodeSequential str1) { if(!IsCorrectCharSetUnicodeSequential(&str1)) { @@ -218,7 +218,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByValOut4(CharSet str1.f2 = L'n'; return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRefOut4(CharSetUnicodeSequential* str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByRefOut4(CharSetUnicodeSequential* str1) { if(str1->f1 != 0 || str1->f2 != 0) return false; @@ -227,7 +227,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRefOut4(CharSet } //////////////////////////////////////////////////////////////////////////////////////////////////////// -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByVal6(NumberSequential str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByVal6(NumberSequential str1) { if(!IsCorrectNumberSequential(&str1)) { @@ -238,7 +238,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByVal6(NumberSequ ChangeNumberSequential(&str1); return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRef6(NumberSequential* str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByRef6(NumberSequential* str1) { if(!IsCorrectNumberSequential(str1)) { @@ -249,7 +249,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRef6(NumberSequ ChangeNumberSequential(str1); return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRefIn6(NumberSequential* str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByRefIn6(NumberSequential* str1) { if(!IsCorrectNumberSequential(str1)) { @@ -261,7 +261,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRefIn6(NumberSe return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByValOut6(NumberSequential str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByValOut6(NumberSequential str1) { if(!IsCorrectNumberSequential(&str1)) { @@ -271,14 +271,14 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByValOut6(NumberS } return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRefOut6(NumberSequential* str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByRefOut6(NumberSequential* str1) { ChangeNumberSequential(str1); return TRUE; } //////////////////////////////////////////////////////////////////////////////////// -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByVal7(S3 str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByVal7(S3 str1) { if(!IsCorrectS3(&str1)) { @@ -290,7 +290,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByVal7(S3 str1) return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRef7(S3* str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByRef7(S3* str1) { if(!IsCorrectS3(str1)) { @@ -300,7 +300,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRef7(S3* str1) ChangeS3(str1); return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRefIn7(S3* str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByRefIn7(S3* str1) { if(!IsCorrectS3(str1)) { @@ -312,7 +312,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRefIn7(S3* str1 return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByValOut7(S3 str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByValOut7(S3 str1) { if(!IsCorrectS3(&str1)) { @@ -324,13 +324,13 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByValOut7(S3 str1 return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRefOut7(S3* str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByRefOut7(S3* str1) { ChangeS3(str1); return TRUE; } //////////////////////////////////////////////////////////////////////////////////////// -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByVal8(S5 str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByVal8(S5 str1) { if(!IsCorrectS5(&str1)) { @@ -341,7 +341,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByVal8(S5 str1) ChangeS5(&str1); return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRef8(S5* str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByRef8(S5* str1) { if(!IsCorrectS5(str1)) { @@ -353,7 +353,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRef8(S5* str1) return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRefIn8(S5* str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByRefIn8(S5* str1) { if(!IsCorrectS5(str1)) { @@ -364,7 +364,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRefIn8(S5* str1 ChangeS5(str1); return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRefOut8(S5* str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByRefOut8(S5* str1) { ChangeS5(str1); return TRUE; @@ -372,7 +372,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRefOut8(S5* str ///////////////////////////////////////////////////////////////////////////////////////////////////////////// -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByVal9(StringStructSequentialAnsi str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByVal9(StringStructSequentialAnsi str1) { if(!IsCorrectStringStructSequentialAnsi(&str1)) { @@ -383,7 +383,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByVal9(StringStru ChangeStringStructSequentialAnsi(&str1); return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRef9(StringStructSequentialAnsi* str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByRef9(StringStructSequentialAnsi* str1) { if(!IsCorrectStringStructSequentialAnsi(str1)) { @@ -395,7 +395,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRef9(StringStru return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRefIn9(StringStructSequentialAnsi* str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByRefIn9(StringStructSequentialAnsi* str1) { if(!IsCorrectStringStructSequentialAnsi(str1)) { @@ -406,7 +406,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRefIn9(StringSt ChangeStringStructSequentialAnsi(str1); return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByValOut9(StringStructSequentialAnsi str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByValOut9(StringStructSequentialAnsi str1) { if(!IsCorrectStringStructSequentialAnsi(&str1)) { @@ -416,7 +416,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByValOut9(StringS } return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRefOut9(StringStructSequentialAnsi* str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByRefOut9(StringStructSequentialAnsi* str1) { ChangeStringStructSequentialAnsi(str1); @@ -425,7 +425,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRefOut9(StringS ///////////////////////////////////////////////////////////////////////////////////////////////////////////// -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByVal10(StringStructSequentialUnicode str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByVal10(StringStructSequentialUnicode str1) { if(!IsCorrectStringStructSequentialUnicode(&str1)) { @@ -436,7 +436,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByVal10(StringStr ChangeStringStructSequentialUnicode(&str1); return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRef10(StringStructSequentialUnicode* str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByRef10(StringStructSequentialUnicode* str1) { if(!IsCorrectStringStructSequentialUnicode(str1)) { @@ -448,7 +448,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRef10(StringStr return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRefIn10(StringStructSequentialUnicode* str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByRefIn10(StringStructSequentialUnicode* str1) { if(!IsCorrectStringStructSequentialUnicode(str1)) { @@ -459,7 +459,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRefIn10(StringS ChangeStringStructSequentialUnicode(str1); return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByValOut10(StringStructSequentialUnicode str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByValOut10(StringStructSequentialUnicode str1) { if(!IsCorrectStringStructSequentialUnicode(&str1)) { @@ -469,7 +469,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByValOut10(String } return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRefOut10(StringStructSequentialUnicode* str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByRefOut10(StringStructSequentialUnicode* str1) { ChangeStringStructSequentialUnicode(str1); @@ -477,7 +477,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRefOut10(String } //////////////////////////////////////////////////////////////////////////////////////////////////////////// -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByVal11(S8 str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByVal11(S8 str1) { if(!IsCorrectS8(&str1)) { @@ -488,7 +488,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByVal11(S8 str1) ChangeS8(&str1); return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRef11(S8* str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByRef11(S8* str1) { if(!IsCorrectS8(str1)) { @@ -500,7 +500,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRef11(S8* str1) return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRefIn11(S8* str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByRefIn11(S8* str1) { if(!IsCorrectS8(str1)) { @@ -511,7 +511,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRefIn11(S8* str ChangeS8(str1); return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByValOut11(S8 str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByValOut11(S8 str1) { if(!IsCorrectS8(&str1)) { @@ -523,7 +523,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByValOut11(S8 str str1.ui32 = 256; return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRefOut11(S8* str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByRefOut11(S8* str1) { ChangeS8(str1); @@ -535,7 +535,7 @@ extern "C" void NtestMethod(S9 str1) { printf("\tAction of the delegate"); } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByVal12(S9 str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByVal12(S9 str1) { if(str1.i32 != 128 || str1.myDelegate1 == NULL) @@ -546,7 +546,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByVal12(S9 str1) str1.myDelegate1 = NULL; return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRef12(S9* str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByRef12(S9* str1) { if(str1->i32 != 128 || str1->myDelegate1 == NULL) @@ -560,7 +560,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRef12(S9* str1) } return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRefIn12(S9* str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByRefIn12(S9* str1) { if(str1->i32 != 128 || str1->myDelegate1 == NULL) @@ -574,7 +574,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRefIn12(S9* str } return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByValOut12(S9 str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByValOut12(S9 str1) { if(str1.i32 != 128 || str1.myDelegate1 == NULL) @@ -585,7 +585,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByValOut12(S9 str str1.myDelegate1 = NULL; return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRefOut12(S9* str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByRefOut12(S9* str1) { str1->i32 = 256; str1->myDelegate1 = NtestMethod; @@ -594,7 +594,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRefOut12(S9* st /////////////////////////////////////////////////////////////////////////////////////////////////////////// -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByVal13(S10 str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByVal13(S10 str1) { if(!IsCorrectS10(&str1)) { @@ -605,7 +605,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByVal13(S10 str1) ChangeS10(&str1); return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRef13(S10* str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByRef13(S10* str1) { if(!IsCorrectS10(str1)) { @@ -617,7 +617,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRef13(S10* str1 return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRefIn13(S10* str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByRefIn13(S10* str1) { if(!IsCorrectS10(str1)) { @@ -628,7 +628,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRefIn13(S10* st ChangeS10(str1); return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByValOut13(S10 str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByValOut13(S10 str1) { if(!IsCorrectS10(&str1)) { @@ -639,7 +639,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByValOut13(S10 st str1.s.i = 64; return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRefOut13(S10* str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByRefOut13(S10* str1) { ChangeS10(str1); @@ -647,7 +647,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRefOut13(S10* s } ////////////////////////////////////////////////////////////////////////////////////////////////////////// -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByVal14(S11 str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByVal14(S11 str1) { if( str1.i32 != 0 || str1.i != 32 ) return FALSE; @@ -655,7 +655,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByVal14(S11 str1) str1.i = 64; return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRef14(S11* str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByRef14(S11* str1) { if(str1->i32 != 0 || str1->i != 32) return FALSE; @@ -666,7 +666,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRef14(S11* str1 return TRUE; } } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRefIn14(S11* str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByRefIn14(S11* str1) { if(str1->i32 != 0 || str1->i != 32) return FALSE; @@ -677,21 +677,21 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRefIn14(S11* st return TRUE; } } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByValOut14(S11 str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByValOut14(S11 str1) { if( str1.i32 != (LPINT)32 || str1.i != 32 ) return FALSE; str1.i = 64; return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsSeqByRefOut14(S11* str1) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsSeqByRefOut14(S11* str1) { str1->i32 = reinterpret_cast(static_cast(str1->i)); str1->i = 64; return TRUE; } ////////////////////////////////////////////////////////////////////////////////////// -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsExpByValINNER2(INNER2 inner) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsExpByValINNER2(INNER2 inner) { if(!IsCorrectINNER2(&inner)) { @@ -703,7 +703,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsExpByValINNER2(INNER return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsExpByRefINNER2(INNER2* inner) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsExpByRefINNER2(INNER2* inner) { if(!IsCorrectINNER2(inner)) { @@ -714,7 +714,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsExpByRefINNER2(INNER ChangeINNER2(inner); return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsExpByRefInINNER2(INNER2* inner) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsExpByRefInINNER2(INNER2* inner) { if(!IsCorrectINNER2(inner)) { @@ -726,7 +726,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsExpByRefInINNER2(INN return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsExpByValOutINNER2(INNER2 inner) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsExpByValOutINNER2(INNER2 inner) { if(!IsCorrectINNER2(&inner)) { @@ -738,14 +738,14 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsExpByValOutINNER2(IN return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsExpByRefOutINNER2(INNER2* inner) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsExpByRefOutINNER2(INNER2* inner) { //change struct ChangeINNER2(inner); return TRUE; } ///////////////////////////////////////////////////////////////////////////////////////////////////// -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsExpByValInnerExplicit(InnerExplicit inner) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsExpByValInnerExplicit(InnerExplicit inner) { if((&inner)->f1 != 1 || memcmp((&inner)->f3, "some string",11*sizeof(char)) != 0) { @@ -757,7 +757,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsExpByValInnerExplici return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsExpByRefInnerExplicit(InnerExplicit* inner) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsExpByRefInnerExplicit(InnerExplicit* inner) { if(inner->f1 != 1 || memcmp(inner->f3, "some string",11*sizeof(char)) != 0) { @@ -769,7 +769,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsExpByRefInnerExplici return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsExpByRefInInnerExplicit(InnerExplicit* inner) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsExpByRefInInnerExplicit(InnerExplicit* inner) { if(inner->f1 != 1 || memcmp(inner->f3, "some string",11*sizeof(char)) != 0) { @@ -781,7 +781,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsExpByRefInInnerExpli return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsExpByRefOutInnerExplicit(InnerExplicit* inner) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsExpByRefOutInnerExplicit(InnerExplicit* inner) { if(inner->f1 != 0 || inner->f2 != 0.0) { @@ -795,7 +795,7 @@ extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsExpByRefOutInnerExpl //////////////////////////////////////////////////////////////////////////////////////////////////// -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsExpByValInnerArrayExplicit(InnerArrayExplicit outer2) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsExpByValInnerArrayExplicit(InnerArrayExplicit outer2) { for(int i = 0;is.f4 = CoStrDup("change string2"); return TRUE; } -extern "C" DLL_EXPORT BOOL NATIVEAPI MarshalStructAsParam_AsExpByRefOutInnerArrayExplicit(InnerArrayExplicit* outer2) +extern "C" DLL_EXPORT BOOL STDMETHODCALLTYPE MarshalStructAsParam_AsExpByRefOutInnerArrayExplicit(InnerArrayExplicit* outer2) { for(int i =0;iflag = false; - /*CoTaskMemFree((void *)p->str);*/ + /*CoreClrFree((void *)p->str);*/ p->str = CoStrDup("change string"); for(int i = 1;i<257;i++) @@ -505,8 +505,8 @@ bool IsCorrectStringStructSequentialAnsi(StringStructSequentialAnsi* str) void ChangeStringStructSequentialAnsi(StringStructSequentialAnsi* str) { - char* newFirst = (char*)CoTaskMemAlloc(sizeof(char)*513); - char* newLast = (char*)CoTaskMemAlloc(sizeof(char)*513); + char* newFirst = (char*)CoreClrAlloc(sizeof(char)*513); + char* newLast = (char*)CoreClrAlloc(sizeof(char)*513); for (int i = 0; i < 512; ++i) { newFirst[i] = 'b'; @@ -558,8 +558,8 @@ bool IsCorrectStringStructSequentialUnicode(StringStructSequentialUnicode* str) void ChangeStringStructSequentialUnicode(StringStructSequentialUnicode* str) { - WCHAR* newFirst = (WCHAR*)CoTaskMemAlloc(sizeof(WCHAR)*257); - WCHAR* newLast = (WCHAR*)CoTaskMemAlloc(sizeof(WCHAR)*257); + WCHAR* newFirst = (WCHAR*)CoreClrAlloc(sizeof(WCHAR)*257); + WCHAR* newLast = (WCHAR*)CoreClrAlloc(sizeof(WCHAR)*257); for (int i = 0; i < 256; ++i) { newFirst[i] = L'b'; diff --git a/tests/src/Interop/common/xplatform.h b/tests/src/Interop/common/xplatform.h index 370ebe8..e262cd7 100644 --- a/tests/src/Interop/common/xplatform.h +++ b/tests/src/Interop/common/xplatform.h @@ -28,24 +28,25 @@ // include #ifdef _WIN32 - #include - #include + #include + + #ifndef snprintf + #define snprintf _snprintf + #endif //snprintf + #else - #include "types.h" + #include "types.h" + #endif #include - // dllexport #if defined _WIN32 #define DLL_EXPORT __declspec(dllexport) -#ifndef snprintf -#define snprintf _snprintf -#endif //snprintf - #else //!_Win32 -#if __GNUC__ >= 4 + +#if __GNUC__ >= 4 #define DLL_EXPORT __attribute__ ((visibility ("default"))) #else #define DLL_EXPORT @@ -53,174 +54,125 @@ #endif //_WIN32 -// The default P/Invoke calling convetion is STDCALL on Window, but CDECL on Unix. -#ifdef _WIN32 -#define CALLBACK __stdcall -#define NATIVEAPI __stdcall -#else // _WIN32 -#define CALLBACK -#define NATIVEAPI -#endif // !_WIN32 - -#ifndef _MSC_VER +// Calling conventions +#ifndef _WIN32 + +#define STDMETHODCALLTYPE + #if __i386__ #define __stdcall __attribute__((stdcall)) -#define _cdecl __attribute__((cdecl)) #define __cdecl __attribute__((cdecl)) #else #define __stdcall -#define _cdecl #define __cdecl #endif -#endif - - - - +#endif //!_WIN32 // Ensure that both UNICODE and _UNICODE are set. -#ifdef UNICODE #ifndef _UNICODE -#define _UNICODE -#endif -#else -#ifdef _UNICODE -#define UNICODE + #define _UNICODE #endif +#ifndef UNICODE + #define UNICODE #endif - -// redirected functions -#ifdef UNICODE -#define _tcslen wcslen -#define _tcsncmp wcsncmp +void *CoreClrAlloc(size_t cb) +{ +#ifdef _WIN32 + return ::CoTaskMemAlloc(cb); #else -#define _tcslen strlen -#define _tcsncmp strncmp -#endif // UNICODE - + return ::malloc(cb); +#endif +} +void CoreClrFree(void *p) +{ +#ifdef _WIN32 + return ::CoTaskMemFree(p); +#else + return ::free(p); +#endif +} // redirected types not-windows only #ifndef _WIN32 -typedef union tagCY { - struct { - unsigned long Lo; - long Hi; - }; - long int64; -} CY, CURRENCY; - - class IUnknown { public: - virtual int QueryInterface(void* riid,void** ppvObject); - virtual unsigned long AddRef(); - virtual unsigned long Release(); + virtual int QueryInterface(void* riid,void** ppvObject) = 0; + virtual unsigned long AddRef() = 0; + virtual unsigned long Release() = 0; }; -#define CoTaskMemAlloc(p) malloc(p) -#define CoTaskMemFree(p) free(p) - // function implementation size_t strncpy_s(char* strDest, size_t numberOfElements, const char *strSource, size_t count) { // NOTE: Need to pass count + 1 since strncpy_s does not count null, // while snprintf does. - return snprintf(strDest, count + 1, "%s", strSource); + return snprintf(strDest, count + 1, "%s", strSource); } size_t strcpy_s(char *dest, size_t n, char const *src) { - return snprintf(dest, n, "%s", src); -} - -void SysFreeString(char* str) -{ - free(str); + return snprintf(dest, n, "%s", src); } - -char* SysAllocString( const char* str) -{ - size_t nz = strlen(str); - char *cArr = (char*) malloc(nz); - memcpy(cArr, str, nz); - return cArr; -} - - size_t wcslen(const WCHAR *str) { - int len; - if (!str) return 0; - len = 0; - while ('\0' != *(str + len)) len++; - return len; -} - -WCHAR* SysAllocString(const WCHAR* str) -{ - size_t nz = wcslen(str); - nz *= 2; - WCHAR *cArr = (WCHAR*)malloc(nz); - memcpy(cArr, str, nz); - return cArr; + size_t len = 0; + while ('\0' != *(str + len)) len++; + return len; } - - int wcsncpy_s(LPWSTR strDestination, size_t size1, LPCWSTR strSource, size_t size2) { - int cnt; - // copy sizeInBytes bytes of strSource into strDestination - if (NULL == strDestination || NULL == strSource) return 1; - - cnt = 0; - while (cnt < size1 && '\0' != strSource[cnt]) - { - strDestination[cnt] = strSource[cnt]; - cnt++; - } - strDestination[cnt] = '\0'; - return 0; + // copy sizeInBytes bytes of strSource into strDestination + if (NULL == strDestination || NULL == strSource) return 1; + + int cnt = 0; + while (cnt < size1 && '\0' != strSource[cnt]) + { + strDestination[cnt] = strSource[cnt]; + cnt++; + } + + strDestination[cnt] = '\0'; + return 0; } int wcsncpy_s(LPWSTR strDestination, size_t size1, LPCWSTR strSource) { - return wcsncpy_s(strDestination, size1, strSource, 0); - + return wcsncpy_s(strDestination, size1, strSource, 0); } -#define wcsncmp wmemcmp +int wcsncmp(LPCWSTR str1, LPCWSTR str2,size_t len) +{ + // < 0 str1 less than str2 + // 0 str1 identical to str2 + // > 0 str1 greater than str2 + if (NULL == str1 && NULL != str2) return -1; + if (NULL != str1 && NULL == str2) return 1; + if (NULL == str1 && NULL == str2) return 0; + + while (*str1 == *str2 && '\0' != *str1 && '\0' != *str2 && len--!= 0) + { + str1++; + str2++; + } + + if ('\0' == *str1 && '\0' == *str2) return 0; + if ('\0' != *str1) return -1; + if ('\0' != *str2) return 1; + + return (*str1 > *str2) ? 1 : -1; +} int wmemcmp(LPCWSTR str1, LPCWSTR str2,size_t len) { - // < 0 str1 less than str2 - // 0 str1 identical to str2 - // > 0 str1 greater than str2 - - if (NULL == str1 && NULL != str2) return -1; - if (NULL != str1 && NULL == str2) return 1; - if (NULL == str1 && NULL == str2) return 0; - - while (*str1 == *str2 && '\0' != *str1 && '\0' != *str2 && len--!= 0) - { - str1++; - str2++; - } - - if ('\0' == *str1 && '\0' == *str2) return 0; - - if ('\0' != *str1) return -1; - if ('\0' != *str2) return 1; - - return (*str1 > *str2) ? 1 : -1; + return wcsncmp(str1, str2, len); } - #endif //!_Win32 #endif // __XPLAT_H__