diff --git a/src/version.c b/src/version.c
index bccf8d9..d7cfb17 100644
--- a/src/version.c
+++ b/src/version.c
@@ -751,6 +751,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    4383,
+/**/
     4382,
 /**/
     4381,
diff --git a/src/vim9compile.c b/src/vim9compile.c
index edbd33e..81ee41e 100644
--- a/src/vim9compile.c
+++ b/src/vim9compile.c
@@ -151,8 +151,7 @@
 /*
  * Lookup a script-local variable in the current script, possibly defined in a
  * block that contains the function "cctx->ctx_ufunc".
- * "cctx" is NULL at the script level.
- * "cstack_T" is NULL in a function.
+ * "cctx" is NULL at the script level, "cstack" is NULL in a function.
  * If "len" is <= 0 "name" must be NUL terminated.
  * Return NULL when not found.
  */
@@ -185,21 +184,16 @@
     if (cctx == NULL)
     {
 	// Not in a function scope, find variable with block ID equal to or
-	// smaller than the current block id.  If "cstack" is not NULL go up
-	// the block scopes (more accurate).
+	// smaller than the current block id.  Use "cstack" to go up the block
+	// scopes.
 	while (sav != NULL)
 	{
-	    if (cstack != NULL)
-	    {
-		int idx;
+	    int idx;
 
-		for (idx = cstack->cs_idx; idx >= 0; --idx)
-		    if (cstack->cs_block_id[idx] == sav->sav_block_id)
-			break;
-		if (idx >= 0)
+	    for (idx = cstack->cs_idx; idx >= 0; --idx)
+		if (cstack->cs_block_id[idx] == sav->sav_block_id)
 		    break;
-	    }
-	    else if (sav->sav_block_id <= si->sn_current_block_id)
+	    if (idx >= 0)
 		break;
 	    sav = sav->sav_next;
 	}
@@ -236,8 +230,7 @@
 
 /*
  * Lookup a variable (without s: prefix) in the current script.
- * "cctx" is NULL at the script level.
- * "cstack" is NULL in a function.
+ * "cctx" is NULL at the script level, "cstack" is NULL in a function.
  * Returns OK or FAIL.
  */
     int
@@ -296,7 +289,8 @@
 
 /*
  * Check if "p[len]" is already defined, either in script "import_sid" or in
- * compilation context "cctx".  "cctx" is NULL at the script level.
+ * compilation context "cctx".
+ * "cctx" is NULL at the script level, "cstack" is NULL in a function.
  * Does not check the global namespace.
  * If "is_arg" is TRUE the error message is for an argument name.
  * Return FAIL and give an error if it defined.
@@ -507,6 +501,7 @@
 /*
  * Find "name" in script-local items of script "sid".
  * Pass "check_writable" to check_item_writable().
+ * "cctx" is NULL at the script level, "cstack" is NULL in a function.
  * Returns the index in "sn_var_vals" if found.
  * If found but not in "sn_var_vals" returns -1.
  * If not found or the variable is not writable returns -2.
