changeset 8090:54cfe888c627 v7.4.1339

commit https://github.com/vim/vim/commit/418f81b5fa400ed59793384f2f3d9df45390f080 Author: Bram Moolenaar <Bram@vim.org> Date: Tue Feb 16 20:12:02 2016 +0100 patch 7.4.1339 Problem: Warnings when building the GUI with MingW. (Cesar Romani) Solution: Add type cats. (Yasuhiro Matsumoto)
author Christian Brabandt <cb@256bit.org>
date Tue, 16 Feb 2016 20:15:05 +0100
parents e5d330ffb650
children 4d0827501e35
files src/edit.c src/gui_w32.c src/gui_w48.c src/os_mswin.c src/os_win32.c src/version.c
diffstat 6 files changed, 70 insertions(+), 59 deletions(-) [+]
line wrap: on
line diff
--- a/src/edit.c
+++ b/src/edit.c
@@ -328,7 +328,7 @@ edit(
 {
     int		c = 0;
     char_u	*ptr;
-    int		lastc;
+    int		lastc = 0;
     int		mincol;
     static linenr_T o_lnum = 0;
     int		i;
--- a/src/gui_w32.c
+++ b/src/gui_w32.c
@@ -1131,7 +1131,7 @@ set_tabline_font(void)
 
 			    if (STRLEN(str) < sizeof(lpdi->szText)
 				    || ((tt_text = vim_strsave(str)) == NULL))
-				vim_strncpy(lpdi->szText, str,
+				vim_strncpy((char_u *)lpdi->szText, str,
 						sizeof(lpdi->szText) - 1);
 			    else
 				lpdi->lpszText = tt_text;
@@ -1747,9 +1747,9 @@ gui_mch_init(void)
 
     /* Initialise the struct */
     s_findrep_struct.lStructSize = sizeof(s_findrep_struct);
-    s_findrep_struct.lpstrFindWhat = alloc(MSWIN_FR_BUFSIZE);
+    s_findrep_struct.lpstrFindWhat = (LPSTR)alloc(MSWIN_FR_BUFSIZE);
     s_findrep_struct.lpstrFindWhat[0] = NUL;
-    s_findrep_struct.lpstrReplaceWith = alloc(MSWIN_FR_BUFSIZE);
+    s_findrep_struct.lpstrReplaceWith = (LPSTR)alloc(MSWIN_FR_BUFSIZE);
     s_findrep_struct.lpstrReplaceWith[0] = NUL;
     s_findrep_struct.wFindWhatLen = MSWIN_FR_BUFSIZE;
     s_findrep_struct.wReplaceWithLen = MSWIN_FR_BUFSIZE;
@@ -2099,7 +2099,7 @@ GetCompositionString_inUCS2(HIMC hIMC, D
     pImmGetCompositionStringA(hIMC, GCS, buf, ret);
 
     /* convert from codepage to UCS-2 */
-    MultiByteToWideChar_alloc(GetACP(), 0, buf, ret, &wbuf, lenp);
+    MultiByteToWideChar_alloc(GetACP(), 0, (LPCSTR)buf, ret, &wbuf, lenp);
     vim_free(buf);
 
     return (short_u *)wbuf;
@@ -3028,7 +3028,7 @@ rebuild_tearoff(vimmenu_T *menu)
 
     HWND thwnd = menu->tearoff_handle;
 
-    GetWindowText(thwnd, tbuf, 127);
+    GetWindowText(thwnd, (LPSTR)tbuf, 127);
     if (GetWindowRect(thwnd, &trect)
 	    && GetWindowRect(s_hwnd, &rct)
 	    && GetClientRect(s_hwnd, &roct))
@@ -3174,7 +3174,7 @@ dialog_callback(
 	    else
 # endif
 		GetDlgItemText(hwnd, DLG_NONBUTTON_CONTROL + 2,
-							 s_textfield, IOSIZE);
+						(LPSTR)s_textfield, IOSIZE);
 	}
 
 	/*
@@ -3216,7 +3216,7 @@ dialog_callback(
  * If stubbing out this fn, return 1.
  */
 
-static const char_u *dlg_icons[] = /* must match names in resource file */
+static const char *dlg_icons[] = /* must match names in resource file */
 {
     "IDR_VIM",
     "IDR_VIM_ERROR",
@@ -3353,7 +3353,7 @@ gui_mch_dialog(
     fontHeight = fontInfo.tmHeight;
 
     /* Minimum width for horizontal button */
-    minButtonWidth = GetTextWidth(hdc, "Cancel", 6);
+    minButtonWidth = GetTextWidth(hdc, (char_u *)"Cancel", 6);
 
     /* Maximum width of a dialog, if possible */
     if (s_hwnd == NULL)
@@ -3617,7 +3617,7 @@ gui_mch_dialog(
 				   + 2 * fontHeight * i),
 		    PixelToDialogX(dlgwidth - 2 * DLG_VERT_PADDING_X),
 		    (WORD)(PixelToDialogY(2 * fontHeight) - 1),
-		    (WORD)(IDCANCEL + 1 + i), (WORD)0x0080, pstart);
+		    (WORD)(IDCANCEL + 1 + i), (WORD)0x0080, (char *)pstart);
 	}
 	else
 	{
@@ -3628,7 +3628,7 @@ gui_mch_dialog(
 		    PixelToDialogY(buttonYpos), /* TBK */
 		    PixelToDialogX(buttonWidths[i]),
 		    (WORD)(PixelToDialogY(2 * fontHeight) - 1),
-		    (WORD)(IDCANCEL + 1 + i), (WORD)0x0080, pstart);
+		    (WORD)(IDCANCEL + 1 + i), (WORD)0x0080, (char *)pstart);
 	}
 	pstart = pend + 1;	/*next button*/
     }
@@ -3649,7 +3649,7 @@ gui_mch_dialog(
 	    PixelToDialogY(dlgPaddingY),
 	    (WORD)(PixelToDialogX(messageWidth) + 1),
 	    PixelToDialogY(msgheight),
-	    DLG_NONBUTTON_CONTROL + 1, (WORD)0x0081, message);
+	    DLG_NONBUTTON_CONTROL + 1, (WORD)0x0081, (char *)message);
 
     /* Edit box */
     if (textfield != NULL)
@@ -3659,7 +3659,7 @@ gui_mch_dialog(
 		PixelToDialogY(2 * dlgPaddingY + msgheight),
 		PixelToDialogX(dlgwidth - 4 * dlgPaddingX),
 		PixelToDialogY(fontHeight + dlgPaddingY),
-		DLG_NONBUTTON_CONTROL + 2, (WORD)0x0081, textfield);
+		DLG_NONBUTTON_CONTROL + 2, (WORD)0x0081, (char *)textfield);
 	*pnumitems += 1;
     }
 
@@ -3798,7 +3798,7 @@ nCopyAnsiToWideChar(
     if (enc_codepage == 0 && (int)GetACP() != enc_codepage)
     {
 	/* Not a codepage, use our own conversion function. */
-	wn = enc_to_utf16(lpAnsiIn, NULL);
+	wn = enc_to_utf16((char_u *)lpAnsiIn, NULL);
 	if (wn != NULL)
 	{
 	    wcscpy(lpWCStr, wn);
@@ -4043,7 +4043,7 @@ gui_mch_tearoff(
 
     /* Calculate width of a single space.  Used for padding columns to the
      * right width. */
-    spaceWidth = GetTextWidth(hdc, " ", 1);
+    spaceWidth = GetTextWidth(hdc, (char_u *)" ", 1);
 
     /* Figure out max width of the text column, the accelerator column and the
      * optional submenu column. */
@@ -4086,7 +4086,7 @@ gui_mch_tearoff(
     textWidth = columnWidths[0] + columnWidths[1];
     if (submenuWidth != 0)
     {
-	submenuWidth = GetTextWidth(hdc, TEAROFF_SUBMENU_LABEL,
+	submenuWidth = GetTextWidth(hdc, (char_u *)TEAROFF_SUBMENU_LABEL,
 					  (int)STRLEN(TEAROFF_SUBMENU_LABEL));
 	textWidth += submenuWidth;
     }
@@ -4262,7 +4262,7 @@ gui_mch_tearoff(
 		(WORD)(sepPadding + 1 + 13 * (*pnumitems)),
 		(WORD)PixelToDialogX(dlgwidth - 2 * TEAROFF_PADDING_X),
 		(WORD)12,
-		menuID, (WORD)0x0080, label);
+		menuID, (WORD)0x0080, (char *)label);
 	vim_free(label);
 	(*pnumitems)++;
     }
@@ -4360,7 +4360,7 @@ get_toolbar_bitmap(vimmenu_T *menu)
 	    gui_find_iconfile(menu->iconfile, fname, "bmp");
 	    hbitmap = LoadImage(
 			NULL,
-			fname,
+			(LPCSTR)fname,
 			IMAGE_BITMAP,
 			TOOLBAR_BUTTON_WIDTH,
 			TOOLBAR_BUTTON_HEIGHT,
@@ -4381,7 +4381,7 @@ get_toolbar_bitmap(vimmenu_T *menu)
 					menu->dname, fname, "bmp") == OK))
 	    hbitmap = LoadImage(
 		    NULL,
-		    fname,
+		    (LPCSTR)fname,
 		    IMAGE_BITMAP,
 		    TOOLBAR_BUTTON_WIDTH,
 		    TOOLBAR_BUTTON_HEIGHT,
@@ -4629,14 +4629,15 @@ gui_mch_register_sign(char_u *signfile)
 	    do_load = 0;
 
 	if (do_load)
-	    sign.hImage = (HANDLE)LoadImage(NULL, signfile, sign.uType,
+	    sign.hImage = (HANDLE)LoadImage(NULL, (LPCSTR)signfile, sign.uType,
 		    gui.char_width * 2, gui.char_height,
 		    LR_LOADFROMFILE | LR_CREATEDIBSECTION);
 #ifdef FEAT_XPM_W32
 	if (!STRICMP(ext, ".xpm"))
 	{
 	    sign.uType = IMAGE_XPM;
-	    LoadXpmImage(signfile, (HBITMAP *)&sign.hImage, (HBITMAP *)&sign.hShape);
+	    LoadXpmImage((char *)signfile, (HBITMAP *)&sign.hImage,
+		    (HBITMAP *)&sign.hShape);
 	}
 #endif
     }
@@ -4740,13 +4741,13 @@ multiline_balloon_available(void)
 		UINT vlen = 0;
 		void *data = alloc(len);
 
-		if (data != NULL
+		if ((data != NULL
 			&& GetFileVersionInfo(comctl_dll, 0, len, data)
 			&& VerQueryValue(data, "\\", (void **)&ver, &vlen)
 			&& vlen
-			&& HIWORD(ver->dwFileVersionMS) > 4
-			|| (HIWORD(ver->dwFileVersionMS) == 4
-			    && LOWORD(ver->dwFileVersionMS) >= 70))
+			&& HIWORD(ver->dwFileVersionMS) > 4)
+			|| ((HIWORD(ver->dwFileVersionMS) == 4
+			    && LOWORD(ver->dwFileVersionMS) >= 70)))
 		{
 		    vim_free(data);
 		    multiline_tip = TRUE;
@@ -4908,7 +4909,7 @@ gui_mch_post_balloon(BalloonEval *beval,
     {
 	gui_mch_disable_beval_area(cur_beval);
 	beval->showState = ShS_SHOWING;
-	make_tooltip(beval, mesg, pt);
+	make_tooltip(beval, (char *)mesg, pt);
     }
     // TRACE0("gui_mch_post_balloon }}}");
 }
--- a/src/gui_w48.c
+++ b/src/gui_w48.c
@@ -534,7 +534,8 @@ char_to_string(int ch, char_u *string, i
 	else
 	{
 	    string[0] = ch;
-	    len = MultiByteToWideChar(GetACP(), 0, string, 1, wstring, 2);
+	    len = MultiByteToWideChar(GetACP(), 0, (LPCSTR)string,
+		    1, wstring, 2);
 	}
     }
     else
@@ -551,7 +552,7 @@ char_to_string(int ch, char_u *string, i
 	if (enc_codepage > 0)
 	{
 	    len = WideCharToMultiByte(enc_codepage, 0, wstring, len,
-						       string, slen, 0, NULL);
+					       (LPSTR)string, slen, 0, NULL);
 	    /* If we had included the ALT key into the character but now the
 	     * upper bit is no longer set, that probably means the conversion
 	     * failed.  Convert the original character and set the upper bit
@@ -560,7 +561,7 @@ char_to_string(int ch, char_u *string, i
 	    {
 		wstring[0] = ch & 0x7f;
 		len = WideCharToMultiByte(enc_codepage, 0, wstring, len,
-						       string, slen, 0, NULL);
+					       (LPSTR)string, slen, 0, NULL);
 		if (len == 1) /* safety check */
 		    string[0] |= 0x80;
 	    }
@@ -921,7 +922,7 @@ findrep_atow(LPFINDREPLACEW lpfrw, LPFIN
     lpfrw->hwndOwner = lpfr->hwndOwner;
     lpfrw->Flags = lpfr->Flags;
 
-    wp = enc_to_utf16(lpfr->lpstrFindWhat, NULL);
+    wp = enc_to_utf16((char_u *)lpfr->lpstrFindWhat, NULL);
     wcsncpy(lpfrw->lpstrFindWhat, wp, lpfrw->wFindWhatLen - 1);
     vim_free(wp);
 
@@ -938,12 +939,12 @@ findrep_wtoa(LPFINDREPLACE lpfr, LPFINDR
 
     lpfr->Flags = lpfrw->Flags;
 
-    p = utf16_to_enc(lpfrw->lpstrFindWhat, NULL);
-    vim_strncpy(lpfr->lpstrFindWhat, p, lpfr->wFindWhatLen - 1);
+    p = utf16_to_enc((short_u*)lpfrw->lpstrFindWhat, NULL);
+    vim_strncpy((char_u *)lpfr->lpstrFindWhat, p, lpfr->wFindWhatLen - 1);
     vim_free(p);
 
-    p = utf16_to_enc(lpfrw->lpstrReplaceWith, NULL);
-    vim_strncpy(lpfr->lpstrReplaceWith, p, lpfr->wReplaceWithLen - 1);
+    p = utf16_to_enc((short_u*)lpfrw->lpstrReplaceWith, NULL);
+    vim_strncpy((char_u *)lpfr->lpstrReplaceWith, p, lpfr->wReplaceWithLen - 1);
     vim_free(p);
 }
 # endif
@@ -1000,8 +1001,8 @@ findrep_wtoa(LPFINDREPLACE lpfr, LPFINDR
 	if (s_findrep_struct.Flags & FR_MATCHCASE)
 	    flags |= FRD_MATCH_CASE;
 	down = (s_findrep_struct.Flags & FR_DOWN) != 0;
-	gui_do_findrepl(flags, s_findrep_struct.lpstrFindWhat,
-				     s_findrep_struct.lpstrReplaceWith, down);
+	gui_do_findrepl(flags, (char_u *)s_findrep_struct.lpstrFindWhat,
+			     (char_u *)s_findrep_struct.lpstrReplaceWith, down);
     }
 }
 #endif
@@ -1530,7 +1531,7 @@ gui_mch_get_color(char_u *name)
     int		    r, g, b;
     int		    i;
 
-    if (name[0] == '#' && strlen(name) == 7)
+    if (name[0] == '#' && STRLEN(name) == 7)
     {
 	/* Name is in "#rrggbb" format */
 	r = hex_digit(name[1]) * 16 + hex_digit(name[2]);
@@ -2268,7 +2269,7 @@ GetTextWidth(HDC hdc, char_u *str, int l
 {
     SIZE    size;
 
-    GetTextExtentPoint(hdc, str, len, &size);
+    GetTextExtentPoint(hdc, (LPCSTR)str, len, &size);
     return size.cx;
 }
 
@@ -2468,10 +2469,11 @@ show_tabline_popup_menu(void)
 
     if (first_tabpage->tp_next != NULL)
 	add_tabline_popup_menu_entry(tab_pmenu,
-					  TABLINE_MENU_CLOSE, _("Close tab"));
-    add_tabline_popup_menu_entry(tab_pmenu, TABLINE_MENU_NEW, _("New tab"));
-    add_tabline_popup_menu_entry(tab_pmenu, TABLINE_MENU_OPEN,
-				 _("Open tab..."));
+				TABLINE_MENU_CLOSE, (char_u *)_("Close tab"));
+    add_tabline_popup_menu_entry(tab_pmenu,
+				TABLINE_MENU_NEW, (char_u *)_("New tab"));
+    add_tabline_popup_menu_entry(tab_pmenu,
+				TABLINE_MENU_OPEN, (char_u *)_("Open tab..."));
 
     GetCursorPos(&pt);
     rval = TrackPopupMenuEx(tab_pmenu, TPM_RETURNCMD, pt.x, pt.y, s_tabhwnd,
@@ -2583,7 +2585,7 @@ gui_mch_update_tabline(void)
 	}
 
 	get_tabline_label(tp, FALSE);
-	tie.pszText = NameBuff;
+	tie.pszText = (LPSTR)NameBuff;
 #ifdef FEAT_MBYTE
 	wstr = NULL;
 	if (use_unicode)
@@ -2680,7 +2682,7 @@ initialise_findrep(char_u *initial_strin
     if (wword)
 	s_findrep_struct.Flags |= FR_WHOLEWORD;
     if (entry_text != NULL && *entry_text != NUL)
-	vim_strncpy(s_findrep_struct.lpstrFindWhat, entry_text,
+	vim_strncpy((char_u *)s_findrep_struct.lpstrFindWhat, entry_text,
 					   s_findrep_struct.wFindWhatLen - 1);
     vim_free(entry_text);
 }
@@ -3194,11 +3196,11 @@ logfont2name(LOGFONT lf)
     if (enc_codepage >= 0 && (int)GetACP() != enc_codepage)
     {
 	int	len;
-	acp_to_enc(lf.lfFaceName, (int)strlen(lf.lfFaceName),
+	acp_to_enc((char_u *)lf.lfFaceName, (int)strlen(lf.lfFaceName),
 						(char_u **)&font_name, &len);
     }
 #endif
-    res = alloc((unsigned)(strlen(font_name) + 20
+    res = (char *)alloc((unsigned)(strlen(font_name) + 20
 		    + (charset_name == NULL ? 0 : strlen(charset_name) + 2)));
     if (res != NULL)
     {
@@ -3233,7 +3235,7 @@ logfont2name(LOGFONT lf)
     if (font_name != lf.lfFaceName)
 	vim_free(font_name);
 #endif
-    return res;
+    return (char_u *)res;
 }
 
 
@@ -3323,7 +3325,7 @@ gui_mch_init_font(char_u *font_name, int
 	return FAIL;
 
     if (font_name == NULL)
-	font_name = lf.lfFaceName;
+	font_name = (char_u *)lf.lfFaceName;
 #if defined(FEAT_MBYTE_IME) || defined(GLOBAL_IME)
     norm_logfont = lf;
     sub_logfont = lf;
@@ -3753,12 +3755,12 @@ gui_mch_browse(
     fileStruct.lStructSize = sizeof(fileStruct);
 #endif
 
-    fileStruct.lpstrTitle = title;
-    fileStruct.lpstrDefExt = ext;
-
-    fileStruct.lpstrFile = fileBuf;
+    fileStruct.lpstrTitle = (LPSTR)title;
+    fileStruct.lpstrDefExt = (LPSTR)ext;
+
+    fileStruct.lpstrFile = (LPSTR)fileBuf;
     fileStruct.nMaxFile = MAXPATHL;
-    fileStruct.lpstrFilter = filterp;
+    fileStruct.lpstrFilter = (LPSTR)filterp;
     fileStruct.hwndOwner = s_hwnd;		/* main Vim window is owner*/
     /* has an initial dir been specified? */
     if (initdir != NULL && *initdir != NUL)
@@ -3769,7 +3771,7 @@ gui_mch_browse(
 	    for (p = initdirp; *p != NUL; ++p)
 		if (*p == '/')
 		    *p = '\\';
-	fileStruct.lpstrInitialDir = initdirp;
+	fileStruct.lpstrInitialDir = (LPSTR)initdirp;
     }
 
     /*
@@ -3851,7 +3853,7 @@ gui_mch_browse(
 #endif
 	    {
 		DragQueryFile(hDrop, i, szFile, BUFPATHLEN);
-		fnames[i] = vim_strsave(szFile);
+		fnames[i] = vim_strsave((char_u *)szFile);
 	    }
 	}
 
--- a/src/os_mswin.c
+++ b/src/os_mswin.c
@@ -741,7 +741,8 @@ display_errors(void)
 				     gui.starting ? (char_u *)_("Message") :
 #endif
 					     (char_u *)_("Error"),
-				     p, (char_u *)_("&Ok"), 1, NULL, FALSE);
+				     (char_u *)p, (char_u *)_("&Ok"),
+					1, NULL, FALSE);
 		break;
 	    }
 	ga_clear(&error_ga);
@@ -2951,7 +2952,7 @@ get_logfont(
     if (enc_codepage >= 0 && (int)GetACP() != enc_codepage)
     {
 	int	len;
-	enc_to_acp(name, (int)strlen((char *)name), &acpname, &len);
+	enc_to_acp(name, (int)STRLEN(name), &acpname, &len);
 	name = acpname;
     }
 #endif
--- a/src/os_win32.c
+++ b/src/os_win32.c
@@ -236,6 +236,7 @@ static char_u *exe_path = NULL;
 
 static BOOL win8_or_later = FALSE;
 
+#ifndef FEAT_GUI_W32
 /*
  * Version of ReadConsoleInput() that works with IME.
  * Works around problems on Windows 8.
@@ -325,6 +326,7 @@ peek_console_input(
     return read_console_input(hInput, lpBuffer, -1, lpEvents);
 }
 
+# ifdef FEAT_CLIENTSERVER
     static DWORD
 msg_wait_for_multiple_objects(
     DWORD    nCount,
@@ -338,8 +340,9 @@ msg_wait_for_multiple_objects(
     return MsgWaitForMultipleObjects(nCount, pHandles, fWaitAll,
 				     dwMilliseconds, dwWakeMask);
 }
-
-#ifndef FEAT_CLIENTSERVER
+# endif
+
+# ifndef FEAT_CLIENTSERVER
     static DWORD
 wait_for_single_object(
     HANDLE hHandle,
@@ -349,6 +352,8 @@ wait_for_single_object(
 	return WAIT_OBJECT_0;
     return WaitForSingleObject(hHandle, dwMilliseconds);
 }
+# endif
+#endif
 #endif
 
     static void
--- a/src/version.c
+++ b/src/version.c
@@ -748,6 +748,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1339,
+/**/
     1338,
 /**/
     1337,