patch 8.2.4447: Vim9: can still use s:var in a compiled function
Problem: Vim9: can still use s:var in a compiled function.
Solution: Disallow using s:var for Vim9 script. (closes #9824)
diff --git a/src/vim9compile.c b/src/vim9compile.c
index 803f19c..6eb6e16 100644
--- a/src/vim9compile.c
+++ b/src/vim9compile.c
@@ -1331,6 +1331,12 @@
char_u *rawname = lhs->lhs_name
+ (lhs->lhs_name[1] == ':' ? 2 : 0);
+ if (script_namespace && current_script_is_vim9())
+ {
+ semsg(_(e_cannot_use_s_colon_in_vim9_script_str),
+ var_start);
+ return FAIL;
+ }
if (is_decl)
{
if (script_namespace)