diff --git a/src/screen.c b/src/screen.c
index 97f6988..8b7a519 100644
--- a/src/screen.c
+++ b/src/screen.c
@@ -10182,7 +10182,7 @@
 }
 
 /*
- * show the current mode and ruler
+ * Show the current mode and ruler.
  *
  * If clear_cmdline is TRUE, clear the rest of the cmdline.
  * If clear_cmdline is FALSE there may be a message there that needs to be
@@ -10291,7 +10291,6 @@
 			msg_puts_attr(edit_submode_extra, sub_attr);
 		    }
 		}
-		length = 0;
 	    }
 	    else
 #endif
diff --git a/src/spell.c b/src/spell.c
index 3c53d1d..0e08e9e 100644
--- a/src/spell.c
+++ b/src/spell.c
@@ -2404,7 +2404,6 @@
 	    {
 		vim_strncpy(region_cp, p + 1, 2);
 		mch_memmove(p, p + 3, len - (p - lang) - 2);
-		len -= 3;
 		region = region_cp;
 	    }
 	    else
diff --git a/src/syntax.c b/src/syntax.c
index e85dca7..fcffdbf 100644
--- a/src/syntax.c
+++ b/src/syntax.c
@@ -6814,7 +6814,6 @@
     MSG_PUTS("\n");
     for (idx = 0; idx < ga.ga_len && !got_int; ++idx)
     {
-	spp = &(SYN_ITEMS(curwin->w_s)[idx]);
 	p = ((time_entry_T *)ga.ga_data) + idx;
 
 	MSG_PUTS(profile_msg(&p->total));
diff --git a/src/version.c b/src/version.c
index 5bd6ead..52b447e 100644
--- a/src/version.c
+++ b/src/version.c
@@ -772,6 +772,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1528,
+/**/
     1527,
 /**/
     1526,
diff --git a/src/window.c b/src/window.c
index 38e1591..40a4607 100644
--- a/src/window.c
+++ b/src/window.c
@@ -1899,7 +1899,6 @@
 
 	for (fr = topfr->fr_child; fr != NULL; fr = fr->fr_next)
 	{
-	    n = m = 0;
 	    wincount = 1;
 	    if (fr->fr_next == NULL)
 		/* last frame gets all that remains (avoid roundoff error) */
@@ -2041,7 +2040,6 @@
 
 	for (fr = topfr->fr_child; fr != NULL; fr = fr->fr_next)
 	{
-	    n = m = 0;
 	    wincount = 1;
 	    if (fr->fr_next == NULL)
 		/* last frame gets all that remains (avoid roundoff error) */
