Mercurial > vim
comparison src/proto/userfunc.pro @ 26506:4a1d2abc2016 v8.2.3783
patch 8.2.3783: confusing error for using a variable as a function
Commit: https://github.com/vim/vim/commit/2ef9156b4284e4a52613c36e3d4667245273a28d
Author: Bram Moolenaar <Bram@vim.org>
Date: Sat Dec 11 16:14:07 2021 +0000
patch 8.2.3783: confusing error for using a variable as a function
Problem: Confusing error for using a variable as a function.
Solution: If a function is not found but there is a variable, give a more
useful error. (issue #9310)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sat, 11 Dec 2021 17:15:03 +0100 |
parents | 568f93dcdc62 |
children | 9c9b8d95b05f |
comparison
equal
deleted
inserted
replaced
26505:6db198ec38ac | 26506:4a1d2abc2016 |
---|---|
2 void func_init(void); | 2 void func_init(void); |
3 hashtab_T *func_tbl_get(void); | 3 hashtab_T *func_tbl_get(void); |
4 char_u *get_lambda_name(void); | 4 char_u *get_lambda_name(void); |
5 char_u *register_cfunc(cfunc_T cb, cfunc_free_T cb_free, void *state); | 5 char_u *register_cfunc(cfunc_T cb, cfunc_free_T cb_free, void *state); |
6 int get_lambda_tv(char_u **arg, typval_T *rettv, int types_optional, evalarg_T *evalarg); | 6 int get_lambda_tv(char_u **arg, typval_T *rettv, int types_optional, evalarg_T *evalarg); |
7 char_u *deref_func_name(char_u *name, int *lenp, partial_T **partialp, type_T **type, int no_autoload); | 7 char_u *deref_func_name(char_u *name, int *lenp, partial_T **partialp, type_T **type, int no_autoload, int *found_var); |
8 void emsg_funcname(char *ermsg, char_u *name); | 8 void emsg_funcname(char *ermsg, char_u *name); |
9 int get_func_tv(char_u *name, int len, typval_T *rettv, char_u **arg, evalarg_T *evalarg, funcexe_T *funcexe); | 9 int get_func_tv(char_u *name, int len, typval_T *rettv, char_u **arg, evalarg_T *evalarg, funcexe_T *funcexe); |
10 char_u *fname_trans_sid(char_u *name, char_u *fname_buf, char_u **tofree, int *error); | 10 char_u *fname_trans_sid(char_u *name, char_u *fname_buf, char_u **tofree, int *error); |
11 ufunc_T *find_func_even_dead(char_u *name, int is_global, cctx_T *cctx); | 11 ufunc_T *find_func_even_dead(char_u *name, int is_global, cctx_T *cctx); |
12 ufunc_T *find_func(char_u *name, int is_global, cctx_T *cctx); | 12 ufunc_T *find_func(char_u *name, int is_global, cctx_T *cctx); |
28 int builtin_function(char_u *name, int len); | 28 int builtin_function(char_u *name, int len); |
29 int func_call(char_u *name, typval_T *args, partial_T *partial, dict_T *selfdict, typval_T *rettv); | 29 int func_call(char_u *name, typval_T *args, partial_T *partial, dict_T *selfdict, typval_T *rettv); |
30 int get_callback_depth(void); | 30 int get_callback_depth(void); |
31 int call_callback(callback_T *callback, int len, typval_T *rettv, int argcount, typval_T *argvars); | 31 int call_callback(callback_T *callback, int len, typval_T *rettv, int argcount, typval_T *argvars); |
32 varnumber_T call_callback_retnr(callback_T *callback, int argcount, typval_T *argvars); | 32 varnumber_T call_callback_retnr(callback_T *callback, int argcount, typval_T *argvars); |
33 void user_func_error(int error, char_u *name); | 33 void user_func_error(int error, char_u *name, funcexe_T *funcexe); |
34 int call_func(char_u *funcname, int len, typval_T *rettv, int argcount_in, typval_T *argvars_in, funcexe_T *funcexe); | 34 int call_func(char_u *funcname, int len, typval_T *rettv, int argcount_in, typval_T *argvars_in, funcexe_T *funcexe); |
35 char_u *printable_func_name(ufunc_T *fp); | 35 char_u *printable_func_name(ufunc_T *fp); |
36 char_u *trans_function_name(char_u **pp, int *is_global, int skip, int flags, funcdict_T *fdp, partial_T **partial, type_T **type); | 36 char_u *trans_function_name(char_u **pp, int *is_global, int skip, int flags, funcdict_T *fdp, partial_T **partial, type_T **type); |
37 char_u *untrans_function_name(char_u *name); | 37 char_u *untrans_function_name(char_u *name); |
38 char_u *save_function_name(char_u **name, int *is_global, int skip, int flags, funcdict_T *fudi); | 38 char_u *save_function_name(char_u **name, int *is_global, int skip, int flags, funcdict_T *fudi); |