# HG changeset patch # User vimboss # Date 1216925471 0 # Node ID c7c53db66b5521d2deed3b889fbfb13030868942 # Parent 7015ddf8105575fcf48eac35b14c61a24fc38d7f updated for version 7.2b-019 diff --git a/src/GvimExt/gvimext.cpp b/src/GvimExt/gvimext.cpp --- a/src/GvimExt/gvimext.cpp +++ b/src/GvimExt/gvimext.cpp @@ -205,13 +205,13 @@ null_libintl_gettext(const char *msgid) } static char * -null_libintl_bindtextdomain(const char *domainname, const char *dirname) +null_libintl_bindtextdomain(const char * /* domainname */, const char * /* dirname */) { return NULL; } static char * -null_libintl_textdomain(const char* domainname) +null_libintl_textdomain(const char* /* domainname */) { return NULL; } @@ -308,7 +308,7 @@ HINSTANCE g_hmodThisDll = NULL; // Handl // DllMain //--------------------------------------------------------------------------- extern "C" int APIENTRY -DllMain(HINSTANCE hInstance, DWORD dwReason, LPVOID lpReserved) +DllMain(HINSTANCE hInstance, DWORD dwReason, LPVOID /* lpReserved */) { switch (dwReason) { @@ -438,7 +438,7 @@ STDMETHODIMP CShellExtClassFactory::Crea } -STDMETHODIMP CShellExtClassFactory::LockServer(BOOL fLock) +STDMETHODIMP CShellExtClassFactory::LockServer(BOOL /* fLock */) { return NOERROR; } @@ -520,9 +520,9 @@ STDMETHODIMP_(ULONG) CShellExt::Release( // It could be a context menu or a property sheet. // -STDMETHODIMP CShellExt::Initialize(LPCITEMIDLIST pIDFolder, +STDMETHODIMP CShellExt::Initialize(LPCITEMIDLIST /* pIDFolder */, LPDATAOBJECT pDataObj, - HKEY hRegKey) + HKEY /* hRegKey */) { // Initialize can be called more than once if (m_pDataObj) @@ -562,8 +562,8 @@ STDMETHODIMP CShellExt::Initialize(LPCIT STDMETHODIMP CShellExt::QueryContextMenu(HMENU hMenu, UINT indexMenu, UINT idCmdFirst, - UINT idCmdLast, - UINT uFlags) + UINT /* idCmdLast */, + UINT /* uFlags */) { UINT idCmd = idCmdFirst; @@ -718,11 +718,11 @@ STDMETHODIMP CShellExt::InvokeCommand(LP return hr; } -STDMETHODIMP CShellExt::PushToWindow(HWND hParent, - LPCSTR pszWorkingDir, - LPCSTR pszCmd, - LPCSTR pszParam, - int iShowCmd, +STDMETHODIMP CShellExt::PushToWindow(HWND /* hParent */, + LPCSTR /* pszWorkingDir */, + LPCSTR /* pszCmd */, + LPCSTR /* pszParam */, + int /* iShowCmd */, int idHWnd) { HWND hWnd = m_hWnd[idHWnd]; @@ -740,9 +740,9 @@ STDMETHODIMP CShellExt::PushToWindow(HWN return NOERROR; } -STDMETHODIMP CShellExt::GetCommandString(UINT_PTR idCmd, +STDMETHODIMP CShellExt::GetCommandString(UINT_PTR /* idCmd */, UINT uFlags, - UINT FAR *reserved, + UINT FAR * /* reserved */, LPSTR pszName, UINT cchMax) { @@ -841,10 +841,10 @@ searchpath(char *name) #endif STDMETHODIMP CShellExt::InvokeGvim(HWND hParent, - LPCSTR pszWorkingDir, - LPCSTR pszCmd, - LPCSTR pszParam, - int iShowCmd) + LPCSTR /* pszWorkingDir */, + LPCSTR /* pszCmd */, + LPCSTR /* pszParam */, + int /* iShowCmd */) { char m_szFileUserClickedOn[BUFSIZE]; char cmdStr[BUFSIZE]; @@ -911,10 +911,10 @@ STDMETHODIMP CShellExt::InvokeGvim(HWND STDMETHODIMP CShellExt::InvokeSingleGvim(HWND hParent, - LPCSTR pszWorkingDir, - LPCSTR pszCmd, - LPCSTR pszParam, - int iShowCmd, + LPCSTR /* pszWorkingDir */, + LPCSTR /* pszCmd */, + LPCSTR /* pszParam */, + int /* iShowCmd */, int useDiff) { char m_szFileUserClickedOn[BUFSIZE]; diff --git a/src/Make_mvc.mak b/src/Make_mvc.mak --- a/src/Make_mvc.mak +++ b/src/Make_mvc.mak @@ -207,9 +207,9 @@ MAKEFLAGS_GVIMEXT = DEBUG=yes !include -# Turn on Win64 compatibility warnings for 32-bit compiler in VC8. (/Wp64 is -# deprecated in VC9.) -!if ("$(MSVCVER)" == "8.0") +# Turn on Win64 compatibility warnings for VC7.x and VC8. +# (/Wp64 is deprecated in VC9 and generates an obnoxious warning.) +!if ("$(MSVCVER)" == "7.0") || ("$(MSVCVER)" == "7.1") || ("$(MSVCVER)" == "8.0") DEFINES=$(DEFINES) /Wp64 !endif diff --git a/src/gui_w48.c b/src/gui_w48.c --- a/src/gui_w48.c +++ b/src/gui_w48.c @@ -3154,12 +3154,12 @@ mch_set_mouse_shape(int shape) idc = MAKEINTRESOURCE(IDC_ARROW); else idc = mshape_idcs[shape]; -#ifdef _WIN64 - SetClassLongPtr(s_textArea, GCLP_HCURSOR, (LONG_PTR)LoadCursor(NULL, idc)); +#ifdef SetClassLongPtr + SetClassLongPtr(s_textArea, GCLP_HCURSOR, (__int3264)(LONG_PTR)LoadCursor(NULL, idc)); #else # ifdef WIN32 - SetClassLong(s_textArea, GCL_HCURSOR, (LONG)LoadCursor(NULL, idc)); -# else + SetClassLong(s_textArea, GCL_HCURSOR, (long_u)LoadCursor(NULL, idc)); +# else /* Win16 */ SetClassWord(s_textArea, GCW_HCURSOR, (WORD)LoadCursor(NULL, idc)); # endif #endif diff --git a/src/os_mswin.c b/src/os_mswin.c --- a/src/os_mswin.c +++ b/src/os_mswin.c @@ -1729,7 +1729,7 @@ swap_me(COLORREF colorref) } /*ARGSUSED*/ - static BOOL CALLBACK + static INT_PTR CALLBACK PrintDlgProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam) { #ifdef FEAT_GETTEXT @@ -2125,8 +2125,8 @@ mch_print_init(prt_settings_T *psettings char_u *port_name = (char_u *)devname +devname->wOutputOffset; char_u *text = _("to %s on %s"); - prt_name = alloc(STRLEN(printer_name) + STRLEN(port_name) - + STRLEN(text)); + prt_name = alloc((unsigned)(STRLEN(printer_name) + STRLEN(port_name) + + STRLEN(text))); if (prt_name != NULL) wsprintf(prt_name, text, printer_name, port_name); } diff --git a/src/os_win32.c b/src/os_win32.c --- a/src/os_win32.c +++ b/src/os_win32.c @@ -4663,7 +4663,7 @@ mch_fopen(char *name, char *mode) # endif ) { -# if defined(DEBUG) && _MSC_VER > 1200 +# if defined(DEBUG) && _MSC_VER >= 1400 /* Work around an annoying assertion in the Microsoft debug CRT * when mode's text/binary setting doesn't match _get_fmode(). */ char newMode = mode[strlen(mode) - 1]; @@ -4682,7 +4682,7 @@ mch_fopen(char *name, char *mode) vim_free(wn); vim_free(wm); -# if defined(DEBUG) && _MSC_VER > 1200 +# if defined(DEBUG) && _MSC_VER >= 1400 _set_fmode(oldMode); # endif diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -677,6 +677,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 19, +/**/ 18, /**/ 17, diff --git a/src/vim.h b/src/vim.h --- a/src/vim.h +++ b/src/vim.h @@ -352,8 +352,8 @@ typedef unsigned char char_u; typedef unsigned short short_u; typedef unsigned int int_u; /* Make sure long_u is big enough to hold a pointer. - * On Win64 longs are 32 bit and pointers 64 bit. - * For printf() and scanf() we need to take care of long_u specifically. */ + * On Win64, longs are 32 bits and pointers are 64 bits. + * For printf() and scanf(), we need to take care of long_u specifically. */ #ifdef _WIN64 typedef unsigned __int64 long_u; typedef __int64 long_i; @@ -361,8 +361,16 @@ typedef __int64 long_i; # define SCANF_DECIMAL_LONG_U "%Iu" # define PRINTF_HEX_LONG_U "0x%Ix" #else -typedef unsigned long long_u; -typedef long long_i; + /* Microsoft-specific. The __w64 keyword should be specified on any typedefs + * that change size between 32-bit and 64-bit platforms. For any such type, + * __w64 should appear only on the 32-bit definition of the typedef. + * Define __w64 as an empty token for everything but MSVC 7.x or later. + */ +# if !defined(_MSC_VER) || (_MSC_VER < 1300) +# define __w64 +# endif +typedef unsigned long __w64 long_u; +typedef long __w64 long_i; # define SCANF_HEX_LONG_U "%lx" # define SCANF_DECIMAL_LONG_U "%lu" # define PRINTF_HEX_LONG_U "0x%lx"