diff options
author | Bram Moolenaar <Bram@vim.org> | 2020-05-24 23:00:18 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2020-05-24 23:00:18 +0200 |
commit | 822ba24743af9ee1b5e7f656a7a61a38f3638bca (patch) | |
tree | 7fb853a5f43c2d2682b4c9fd55a0e257e95d2446 /src/proto/userfunc.pro | |
parent | f7271e831614d15d173c7f562cc26f48c2554ce9 (diff) | |
download | vim-git-822ba24743af9ee1b5e7f656a7a61a38f3638bca.tar.gz |
patch 8.2.0818: Vim9: using a discovery phase doesn't work wellv8.2.0818
Problem: Vim9: using a discovery phase doesn't work well.
Solution: Remove the discovery phase, instead compile a function only when
it is used. Add :defcompile to compile def functions earlier.
Diffstat (limited to 'src/proto/userfunc.pro')
-rw-r--r-- | src/proto/userfunc.pro | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/proto/userfunc.pro b/src/proto/userfunc.pro index 4295ce269..6ed79ba03 100644 --- a/src/proto/userfunc.pro +++ b/src/proto/userfunc.pro @@ -23,8 +23,9 @@ void user_func_error(int error, char_u *name); int call_func(char_u *funcname, int len, typval_T *rettv, int argcount_in, typval_T *argvars_in, funcexe_T *funcexe); char_u *trans_function_name(char_u **pp, int *is_global, int skip, int flags, funcdict_T *fdp, partial_T **partial); char_u *untrans_function_name(char_u *name); -ufunc_T *def_function(exarg_T *eap, char_u *name_arg, void *context, int compile); +ufunc_T *def_function(exarg_T *eap, char_u *name_arg); void ex_function(exarg_T *eap); +void ex_defcompile(exarg_T *eap); int eval_fname_script(char_u *p); int translated_function_exists(char_u *name, int is_global); int has_varargs(ufunc_T *ufunc); |