patch 8.2.2238: Vim9: cannot load a Vim9 script without the +eval feature
Problem: Vim9: cannot load a Vim9 script without the +eval feature.
Solution: Support Vim9 script syntax without the +eval feature.
diff --git a/src/globals.h b/src/globals.h
index 39ef83e..dcb0f63 100644
--- a/src/globals.h
+++ b/src/globals.h
@@ -290,6 +290,14 @@
// line number in the message source or zero
#define SOURCING_LNUM (((estack_T *)exestack.ga_data)[exestack.ga_len - 1].es_lnum)
+// Script CTX being sourced or was sourced to define the current function.
+EXTERN sctx_T current_sctx
+#ifdef FEAT_EVAL
+ INIT4(0, 0, 0, 0);
+#else
+ INIT(= {0});
+#endif
+
#ifdef FEAT_EVAL
// whether inside compile_def_function()
EXTERN int estack_compiling INIT(= FALSE);
@@ -392,9 +400,6 @@
EXTERN int want_garbage_collect INIT(= FALSE);
EXTERN int garbage_collect_at_exit INIT(= FALSE);
-// Script CTX being sourced or was sourced to define the current function.
-EXTERN sctx_T current_sctx INIT4(0, 0, 0, 0);
-
// Commonly used types.
EXTERN type_T t_unknown INIT6(VAR_UNKNOWN, 0, 0, TTFLAG_STATIC, NULL, NULL);