patch 8.2.4053: Vim9: autoload mechanism doesn't fully work yet
Problem: Vim9: autoload mechanism doesn't fully work yet.
Solution: Define functions and variables with their autoload name, add the
prefix when calling a function, find the variable in the table of
script variables.
diff --git a/src/userfunc.c b/src/userfunc.c
index ecd2e7c..a3ff38c 100644
--- a/src/userfunc.c
+++ b/src/userfunc.c
@@ -4080,8 +4080,11 @@
eap->skip = TRUE;
}
-// if (is_export)
-// name = may_prefix_autoload(name);
+ // For "export def FuncName()" in an autoload script the function name
+ // is stored with the legacy autoload name "dir#script#FuncName" so
+ // that it can also be found in legacy script.
+ if (is_export)
+ name = may_prefix_autoload(name);
}
// An error in a function call during evaluation of an expression in magic