From 42df3d1b7e6cf2bc5c7bebe7aab37b445ec9a478 Mon Sep 17 00:00:00 2001 From: David Quintana Date: Sat, 22 Aug 2015 00:17:15 +0000 Subject: [PATCH] [BROWSEUI] [OLEAUT32] [DDK] [PSDK] [STLPORT] [CPPRT] Port the vs2015 fixes to also work on x64 [HHCOMP] Fix compilation with VS in x64 mode svn path=/trunk/; revision=68791 --- reactos/dll/win32/browseui/utility.cpp | 2 +- reactos/dll/win32/oleaut32/tmarshal.c | 4 ++++ reactos/include/ddk/stdunk.h | 2 +- reactos/include/psdk/kcom.h | 2 +- reactos/lib/3rdparty/stlport/test/eh/nc_alloc.cpp | 4 ++-- reactos/lib/sdk/cpprt/amd64/cpprt.s | 9 +++++++++ reactos/tools/hhpcomp/chmc/chm.h | 4 ++-- 7 files changed, 20 insertions(+), 7 deletions(-) diff --git a/reactos/dll/win32/browseui/utility.cpp b/reactos/dll/win32/browseui/utility.cpp index 15c891b672e..17a2ab42968 100644 --- a/reactos/dll/win32/browseui/utility.cpp +++ b/reactos/dll/win32/browseui/utility.cpp @@ -10,7 +10,7 @@ void operator delete(void *p) LocalFree(p); } -void operator delete(void *p, unsigned int) +void operator delete(void *p, UINT_PTR) { LocalFree(p); } diff --git a/reactos/dll/win32/oleaut32/tmarshal.c b/reactos/dll/win32/oleaut32/tmarshal.c index 4e08b213cb5..6381f1c1212 100644 --- a/reactos/dll/win32/oleaut32/tmarshal.c +++ b/reactos/dll/win32/oleaut32/tmarshal.c @@ -1785,7 +1785,11 @@ static HRESULT init_proxy_entry_point(TMProxyImpl *proxy, unsigned int num) /* nrofargs including This */ int nrofargs = 1; ITypeInfo *tinfo2; + +#ifdef __i386__ TMAsmProxy *xasm = proxy->asmstubs + num; +#endif + HRESULT hres; const FUNCDESC *fdesc; diff --git a/reactos/include/ddk/stdunk.h b/reactos/include/ddk/stdunk.h index 6b15a4a0a68..67ce3d8fcc8 100644 --- a/reactos/include/ddk/stdunk.h +++ b/reactos/include/ddk/stdunk.h @@ -206,7 +206,7 @@ operator delete( inline void __cdecl operator delete( - PVOID ptr, UINT) + PVOID ptr, UINT_PTR) { ExFreePool(ptr); } diff --git a/reactos/include/psdk/kcom.h b/reactos/include/psdk/kcom.h index f6f596f17c3..f5748a5b5cc 100644 --- a/reactos/include/psdk/kcom.h +++ b/reactos/include/psdk/kcom.h @@ -235,7 +235,7 @@ inline void __cdecl operator delete( } inline void __cdecl operator delete( - PVOID pVoid, UINT) + PVOID pVoid, UINT_PTR) { if (pVoid) ExFreePool(pVoid); } diff --git a/reactos/lib/3rdparty/stlport/test/eh/nc_alloc.cpp b/reactos/lib/3rdparty/stlport/test/eh/nc_alloc.cpp index c8e58915771..f76a2d7e2cc 100644 --- a/reactos/lib/3rdparty/stlport/test/eh/nc_alloc.cpp +++ b/reactos/lib/3rdparty/stlport/test/eh/nc_alloc.cpp @@ -265,9 +265,9 @@ void _STLP_CALL operator delete(void* s) } #if defined (EH_DELETE_HAS_THROW_SPEC) -void _STLP_CALL operator delete(void* s, unsigned int) throw() +void _STLP_CALL operator delete(void* s, uintptr_t) throw() #else -void _STLP_CALL operator delete(void* s, unsigned int) +void _STLP_CALL operator delete(void* s, uintptr_t) #endif { ::operator delete(s); diff --git a/reactos/lib/sdk/cpprt/amd64/cpprt.s b/reactos/lib/sdk/cpprt/amd64/cpprt.s index dec8f6a8a44..ebaebb9861d 100644 --- a/reactos/lib/sdk/cpprt/amd64/cpprt.s +++ b/reactos/lib/sdk/cpprt/amd64/cpprt.s @@ -10,6 +10,12 @@ ENDM ; void __cdecl `eh vector constructor iterator'(void * __ptr64,unsigned __int64,int,void (__cdecl*)(void * __ptr64),void (__cdecl*)(void * __ptr64)) DEFINE_ALIAS ??_L@YAXPEAX_KHP6AX0@Z2@Z, ?MSVCRTEX_eh_vector_constructor_iterator@@YAXPEAX_KHP6AX0@Z2@Z +; void __cdecl `eh vector constructor iterator'(void *,unsigned __int64,unsigned __int64,void (__cdecl*)(void *),void (__cdecl*)(void *))" +DEFINE_ALIAS ??_L@YAXPEAX_K1P6AX0@Z2@Z, ?MSVCRTEX_eh_vector_constructor_iterator@@YAXPEAX_KHP6AX0@Z2@Z + +; void __cdecl `eh vector destructor iterator'(void *,unsigned __int64,unsigned __int64,void (__cdecl*)(void *)) +DEFINE_ALIAS ??_M@YAXPEAX_K1P6AX0@Z@Z, ?MSVCRTEX_eh_vector_destructor_iterator@@YAXPEAX_KHP6AX0@Z@Z + ; void __cdecl `eh vector destructor iterator'(void * __ptr64,unsigned __int64,int,void (__cdecl*)(void * __ptr64)) DEFINE_ALIAS ??_M@YAXPEAX_KHP6AX0@Z@Z, ?MSVCRTEX_eh_vector_destructor_iterator@@YAXPEAX_KHP6AX0@Z@Z @@ -22,4 +28,7 @@ DEFINE_ALIAS ??3@YAXPEAXAEBUnothrow_t@std@@@Z, ??3@YAXPEAX@Z ; void __cdecl operator delete[](void * __ptr64,struct std::nothrow_t const & __ptr64) DEFINE_ALIAS ??_V@YAXPEAXAEBUnothrow_t@std@@@Z, ??3@YAXPEAX@Z +; void __cdecl operator delete(void *,unsigned __int64) +DEFINE_ALIAS ??3@YAXPEAX_K@Z, ??3@YAXPEAX@Z + END diff --git a/reactos/tools/hhpcomp/chmc/chm.h b/reactos/tools/hhpcomp/chmc/chm.h index 0c59feee358..27aa6f79901 100644 --- a/reactos/tools/hhpcomp/chmc/chm.h +++ b/reactos/tools/hhpcomp/chmc/chm.h @@ -35,8 +35,8 @@ * many bits as they specify. */ -/* i386, 32-bit, Windows */ -#ifdef WIN32 +/* i386, 32-bit/64-bit, Windows */ +#ifdef _MSC_VER typedef unsigned char UChar; typedef __int16 Int16; typedef unsigned __int16 UInt16;