From 38ddf333f6b2806b0ea2dd052ee1cd50dd7f4525 Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Fri, 31 Jul 2020 22:05:04 +0200 Subject: patch 8.2.1329: Vim9: cannot define global function inside :def function Problem: Vim9: cannot define global function inside :def function. Solution: Assign to global variable instead of local. (closes #6584) --- src/proto/misc2.pro | 1 + src/proto/userfunc.pro | 1 + 2 files changed, 2 insertions(+) (limited to 'src/proto') diff --git a/src/proto/misc2.pro b/src/proto/misc2.pro index e1e20aaab..d55fc31c3 100644 --- a/src/proto/misc2.pro +++ b/src/proto/misc2.pro @@ -56,6 +56,7 @@ char_u *vim_strrchr(char_u *string, int c); int vim_isspace(int x); void ga_clear(garray_T *gap); void ga_clear_strings(garray_T *gap); +int ga_copy_strings(garray_T *from, garray_T *to); void ga_init(garray_T *gap); void ga_init2(garray_T *gap, int itemsize, int growsize); int ga_grow(garray_T *gap, int n); diff --git a/src/proto/userfunc.pro b/src/proto/userfunc.pro index 9c9eb2df7..f30ac2f21 100644 --- a/src/proto/userfunc.pro +++ b/src/proto/userfunc.pro @@ -5,6 +5,7 @@ int get_function_args(char_u **argp, char_u endchar, garray_T *newargs, garray_T char_u *get_lambda_name(void); char_u *register_cfunc(cfunc_T cb, cfunc_free_T cb_free, void *state); int get_lambda_tv(char_u **arg, typval_T *rettv, evalarg_T *evalarg); +void copy_func(char_u *lambda, char_u *global); char_u *deref_func_name(char_u *name, int *lenp, partial_T **partialp, int no_autoload); void emsg_funcname(char *ermsg, char_u *name); int get_func_tv(char_u *name, int len, typval_T *rettv, char_u **arg, evalarg_T *evalarg, funcexe_T *funcexe); -- cgit v1.2.1