patch 8.2.2682: Vim9: cannot find Name.Func from "import * as Name"
Problem: Vim9: cannot find Name.Func from "import * as Name". (Alexander
Goussas)
Solution: When no variable found try finding a function. (closes #8045)
Check that the function was exported.
diff --git a/src/vim9script.c b/src/vim9script.c
index 9839a06..a72ef55 100644
--- a/src/vim9script.c
+++ b/src/vim9script.c
@@ -298,8 +298,7 @@
svar_T *sv;
scriptitem_T *script = SCRIPT_ITEM(sid);
- // find name in "script"
- // TODO: also find script-local user function
+ // Find name in "script".
idx = get_script_item_idx(sid, name, 0, cctx);
if (idx >= 0)
{
@@ -341,6 +340,13 @@
semsg(_(e_item_not_found_in_script_str), name);
return -1;
}
+ else if (((*ufunc)->uf_flags & FC_EXPORT) == 0)
+ {
+ if (verbose)
+ semsg(_(e_item_not_exported_in_script_str), name);
+ *ufunc = NULL;
+ return -1;
+ }
}
return idx;