patch 8.2.3216: Vim9: crash when using variable in a loop at script level

Problem:    Vim9: crash when using variable in a loop at script level.
Solution:   Do not clear the variable if a function was defined.
            Do not create a new entry in sn_var_vals every time.
            (closes #8628)
diff --git a/src/structs.h b/src/structs.h
index 265fe02..bf8102c 100644
--- a/src/structs.h
+++ b/src/structs.h
@@ -1888,6 +1888,9 @@
     // used when compiling a :def function, NULL otherwise
     cctx_T	*eval_cctx;
 
+    // used when executing commands from a script, NULL otherwise
+    cstack_T	*eval_cstack;
+
     // Used to collect lines while parsing them, so that they can be
     // concatenated later.  Used when "eval_ga.ga_itemsize" is not zero.
     // "eval_ga.ga_data" is a list of pointers to lines.