patch 8.2.2975: Vim9: can only use an autoload function name as a string
Problem: Vim9: can only use an autoload function name as a string.
Solution: Load the autoload script when encountered. (closes #8124)
diff --git a/src/evalvars.c b/src/evalvars.c
index 7581a14..cd1f170 100644
--- a/src/evalvars.c
+++ b/src/evalvars.c
@@ -2921,8 +2921,9 @@
if (ht != NULL)
return ht; // local variable
- // in Vim9 script items at the script level are script-local
- if (in_vim9script())
+ // In Vim9 script items at the script level are script-local, except
+ // for autoload names.
+ if (in_vim9script() && vim_strchr(name, AUTOLOAD_CHAR) == NULL)
{
ht = get_script_local_ht();
if (ht != NULL)