diff --git a/src/version.c b/src/version.c
index 323f4b0..fdb7c9f 100644
--- a/src/version.c
+++ b/src/version.c
@@ -755,6 +755,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1018,
+/**/
     1017,
 /**/
     1016,
diff --git a/src/vim9compile.c b/src/vim9compile.c
index 8f799a2..7329a8b 100644
--- a/src/vim9compile.c
+++ b/src/vim9compile.c
@@ -27,7 +27,7 @@
 typedef enum {
     SKIP_NOT,		// condition is a constant, produce code
     SKIP_YES,		// condition is a constant, do NOT produce code
-    SKIP_UNKNONW	// condition is not a constant, produce code
+    SKIP_UNKNOWN	// condition is not a constant, produce code
 } skip_T;
 
 /*
@@ -5688,7 +5688,7 @@
     else
     {
 	// Not a constant, generate instructions for the expression.
-	cctx->ctx_skip = SKIP_UNKNONW;
+	cctx->ctx_skip = SKIP_UNKNOWN;
 	if (generate_ppconst(cctx, &ppconst) == FAIL)
 	    return NULL;
     }
@@ -5700,7 +5700,7 @@
     // "is_had_return" will be reset if any block does not end in :return
     scope->se_u.se_if.is_had_return = TRUE;
 
-    if (cctx->ctx_skip == SKIP_UNKNONW)
+    if (cctx->ctx_skip == SKIP_UNKNOWN)
     {
 	// "where" is set when ":elseif", "else" or ":endif" is found
 	scope->se_u.se_if.is_if_label = instr->ga_len;
@@ -5731,7 +5731,7 @@
     if (!cctx->ctx_had_return)
 	scope->se_u.se_if.is_had_return = FALSE;
 
-    if (cctx->ctx_skip == SKIP_UNKNONW)
+    if (cctx->ctx_skip == SKIP_UNKNOWN)
     {
 	if (compile_jump_to_end(&scope->se_u.se_if.is_end_label,
 						    JUMP_ALWAYS, cctx) == FAIL)
@@ -5761,7 +5761,7 @@
     else
     {
 	// Not a constant, generate instructions for the expression.
-	cctx->ctx_skip = SKIP_UNKNONW;
+	cctx->ctx_skip = SKIP_UNKNOWN;
 	if (generate_ppconst(cctx, &ppconst) == FAIL)
 	    return NULL;
 
@@ -5794,7 +5794,7 @@
     if (scope->se_skip_save != SKIP_YES)
     {
 	// jump from previous block to the end, unless the else block is empty
-	if (cctx->ctx_skip == SKIP_UNKNONW)
+	if (cctx->ctx_skip == SKIP_UNKNOWN)
 	{
 	    if (!cctx->ctx_had_return
 		    && compile_jump_to_end(&scope->se_u.se_if.is_end_label,
@@ -5802,7 +5802,7 @@
 		return NULL;
 	}
 
-	if (cctx->ctx_skip == SKIP_UNKNONW)
+	if (cctx->ctx_skip == SKIP_UNKNOWN)
 	{
 	    if (scope->se_u.se_if.is_if_label >= 0)
 	    {
@@ -5813,7 +5813,7 @@
 	    }
 	}
 
-	if (cctx->ctx_skip != SKIP_UNKNONW)
+	if (cctx->ctx_skip != SKIP_UNKNOWN)
 	    cctx->ctx_skip = cctx->ctx_skip == SKIP_YES ? SKIP_NOT : SKIP_YES;
     }
 
