updated for version 7.1b
diff --git a/src/gui_w32.c b/src/gui_w32.c
index 11330a9..c8f409c 100644
--- a/src/gui_w32.c
+++ b/src/gui_w32.c
@@ -1,4 +1,4 @@
-/* vi:set ts=8 sts=4 sw=4:
+s, if any./* vi:set ts=8 sts=4 sw=4:
  *
  * VIM - Vi IMproved		by Bram Moolenaar
  *				GUI support by Robert Webb
@@ -232,27 +232,6 @@
     LPARAM     lParam;
 } NMTTDISPINFO_NEW;
 
-#ifndef LPNMTTDISPINFO
-typedef struct tagNMTTDISPINFOA {
-    NMHDR	hdr;
-    LPSTR	lpszText;
-    char	szText[80];
-    HINSTANCE	hinst;
-    UINT	uFlags;
-    LPARAM	lParam;
-} NMTTDISPINFOA, *LPNMTTDISPINFOA;
-# define LPNMTTDISPINFO LPNMTTDISPINFOA
-
-typedef struct tagNMTTDISPINFOW {
-    NMHDR	hdr;
-    LPWSTR	lpszText;
-    WCHAR	szText[80];
-    HINSTANCE	hinst;
-    UINT	uFlags;
-    LPARAM	lParam;
-} NMTTDISPINFOW, *LPNMTTDISPINFOW;
-#endif
-
 #include <poppack.h>
 
 typedef HRESULT (WINAPI* DLLGETVERSIONPROC)(DLLVERSIONINFO *);
@@ -270,6 +249,35 @@
 
 #endif /* defined(FEAT_BEVAL) */
 
+#if defined(FEAT_TOOLBAR) || defined(FEAT_GUI_TABLINE)
+/* Older MSVC compilers don't have LPNMTTDISPINFO[AW] thus we need to define
+ * it here if LPNMTTDISPINFO isn't defined.
+ * MingW doesn't define LPNMTTDISPINFO but typedefs it.  Thus we need to check
+ * _MSC_VER. */
+# if !defined(LPNMTTDISPINFO) && defined(_MSC_VER)
+typedef struct tagNMTTDISPINFOA {
+    NMHDR	hdr;
+    LPSTR	lpszText;
+    char	szText[80];
+    HINSTANCE	hinst;
+    UINT	uFlags;
+    LPARAM	lParam;
+} NMTTDISPINFOA, *LPNMTTDISPINFOA;
+#  define LPNMTTDISPINFO LPNMTTDISPINFOA
+
+#  ifdef FEAT_MBYTE
+typedef struct tagNMTTDISPINFOW {
+    NMHDR	hdr;
+    LPWSTR	lpszText;
+    WCHAR	szText[80];
+    HINSTANCE	hinst;
+    UINT	uFlags;
+    LPARAM	lParam;
+} NMTTDISPINFOW, *LPNMTTDISPINFOW;
+#  endif
+# endif
+#endif
+
 #ifndef TTN_GETDISPINFOW
 # define TTN_GETDISPINFOW	(TTN_FIRST - 10)
 #endif
@@ -3326,7 +3334,7 @@
 	 * he/she can use arrow keys.
 	 *
 	 * new NOTE: BS_DEFPUSHBUTTON is required to be able to select the
-	 * right buttun when hitting <Enter>.  E.g., for the ":confirm quit"
+	 * right button when hitting <Enter>.  E.g., for the ":confirm quit"
 	 * dialog.  Also needed for when the textfield is the default control.
 	 * It appears to work now (perhaps not on Win95?).
 	 */
@@ -4048,7 +4056,7 @@
 		    s_hwnd,
 		    WS_CHILD | TBSTYLE_TOOLTIPS | TBSTYLE_FLAT,
 		    4000,		//any old big number
-		    31,			//number of images in inital bitmap
+		    31,			//number of images in initial bitmap
 		    s_hinst,
 		    IDR_TOOLBAR1,	// id of initial bitmap
 		    NULL,
diff --git a/src/gui_xmdlg.c b/src/gui_xmdlg.c
index dff8672..a747058 100644
--- a/src/gui_xmdlg.c
+++ b/src/gui_xmdlg.c
@@ -12,7 +12,7 @@
  *
  * Implementation of dialogue functions for the Motif GUI variant.
  *
- * Note about Lesstif: Apparenty lesstif doesn't get the widget layout right,
+ * Note about Lesstif: Apparently lesstif doesn't get the widget layout right,
  * when using a dynamic scrollbar policy.
  */
 
@@ -479,7 +479,7 @@
 	    XtFree(list[ENCODING][i]);
 	}
 
-	/* Destroy all the outstandig menu items.
+	/* Destroy all the outstanding menu items.
 	 */
 	for (i = count[ENCODING]; i < n_items; ++i)
 	{
diff --git a/src/screen.c b/src/screen.c
index eb7a63a..3e54ba6 100644
--- a/src/screen.c
+++ b/src/screen.c
@@ -37,7 +37,7 @@
  *
  * update_screen() is the function that updates all windows and status lines.
  * It is called form the main loop when must_redraw is non-zero.  It may be
- * called from other places when an immediated screen update is needed.
+ * called from other places when an immediate screen update is needed.
  *
  * The part of the buffer that is displayed in a window is set with:
  * - w_topline (first buffer line in window)
@@ -7614,7 +7614,7 @@
     int		    goto_cost;
     int		    attr;
 
-#define GOTO_COST   7	/* asssume a term_windgoto() takes about 7 chars */
+#define GOTO_COST   7	/* assume a term_windgoto() takes about 7 chars */
 #define HIGHL_COST  5	/* assume unhighlight takes 5 chars */
 
 #define PLAN_LE	    1
@@ -7652,7 +7652,7 @@
 	 * Don't do this if the cursor went beyond the last column, the cursor
 	 * position is unknown then (some terminals wrap, some don't )
 	 *
-	 * First check if the highlighting attibutes allow us to write
+	 * First check if the highlighting attributes allow us to write
 	 * characters to move the cursor to the right.
 	 */
 	if (row >= screen_cur_row && screen_cur_col < Columns)