patch 8.2.4880: Vim9: misplaced elseif causes invalid memory access

Problem:    Vim9: misplaced elseif causes invalid memory access.
Solution:   Check cs_idx not to be negative.
diff --git a/src/ex_eval.c b/src/ex_eval.c
index 7b4ac17..f3e2ca2 100644
--- a/src/ex_eval.c
+++ b/src/ex_eval.c
@@ -1124,10 +1124,13 @@
 	skip = TRUE;
     }
 
-    // Variables declared in the previous block can no longer be
-    // used.  Needs to be done before setting "cs_flags".
-    leave_block(cstack);
-    enter_block(cstack);
+    if (cstack->cs_idx >= 0)
+    {
+	// Variables declared in the previous block can no longer be
+	// used.  Needs to be done before setting "cs_flags".
+	leave_block(cstack);
+	enter_block(cstack);
+    }
 
     // if skipping or the ":if" was TRUE, reset ACTIVE, otherwise set it
     if (skip || cstack->cs_flags[cstack->cs_idx] & CSF_TRUE)
diff --git a/src/version.c b/src/version.c
index 5a597a8..848c3e6 100644
--- a/src/version.c
+++ b/src/version.c
@@ -747,6 +747,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    4880,
+/**/
     4879,
 /**/
     4878,