updated for version 7.2b-019
diff --git a/src/os_mswin.c b/src/os_mswin.c
index 618fc80..d4a186d 100644
--- a/src/os_mswin.c
+++ b/src/os_mswin.c
@@ -1729,7 +1729,7 @@
 }
 
 /*ARGSUSED*/
-    static BOOL CALLBACK
+    static INT_PTR CALLBACK
 PrintDlgProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
 {
 #ifdef FEAT_GETTEXT
@@ -2125,8 +2125,8 @@
 	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);
     }