0
0
mirror of https://github.com/vim/vim.git synced 2025-09-23 03:43:49 -04:00

patch 8.2.0699: Vim9: not all errors tested

Problem:    Vim9: not all errors tested.
Solution:   Add test for deleted function.  Bail out on first error.
This commit is contained in:
Bram Moolenaar
2020-05-05 21:25:22 +02:00
parent f9ab52e155
commit 015f4267f4
5 changed files with 50 additions and 26 deletions

View File

@@ -432,6 +432,7 @@ call_bfunc(int func_idx, int argcount, ectx_T *ectx)
{
typval_T argvars[MAX_FUNC_ARGS];
int idx;
int called_emsg_before = called_emsg;
if (call_prepare(argcount, argvars, ectx) == FAIL)
return FAIL;
@@ -442,6 +443,9 @@ call_bfunc(int func_idx, int argcount, ectx_T *ectx)
// Clear the arguments.
for (idx = 0; idx < argcount; ++idx)
clear_tv(&argvars[idx]);
if (called_emsg != called_emsg_before)
return FAIL;
return OK;
}
@@ -549,7 +553,8 @@ call_partial(typval_T *tv, int argcount, ectx_T *ectx)
if (name == NULL || call_by_name(name, argcount, ectx, NULL) == FAIL)
{
if (called_emsg == called_emsg_before)
semsg(_(e_unknownfunc), name);
semsg(_(e_unknownfunc),
name == NULL ? (char_u *)"[unknown]" : name);
return FAIL;
}
return OK;