vim-patch:8.2.0522: several errors are not tested for (#19901)

Problem:    Several errors are not tested for.
Solution:   Add tests. (Yegappan Lakshmanan, closes vim/vim#5892)
ee4e0c1e9a

Omit Test_range() change: reverted in patch 8.2.0615.
Cherry-pick Test_z_no_space_before_xxx() from patch 8.2.0195.
Cherry-pick Test_reverse_sort_uniq() change from patch 8.2.0183.
Make uniq() error behavior consistent with sort().
Cherry-pick Test_set_ttytype() change from patch 8.1.1826.
Cherry-pick quickfix checks from patch 8.1.2373 to test_preview.vim.
Test_viminfo_error() is applicable.
Cherry-pick E1058 from patch 8.2.0149 and port Test_deep_nest() to Lua.
This commit is contained in:
zeertzjq
2022-08-23 10:38:53 +08:00
committed by GitHub
parent 48a4657aee
commit d5328ea408
16 changed files with 263 additions and 52 deletions

View File

@@ -1885,6 +1885,8 @@ theend:
return name;
}
#define MAX_FUNC_NESTING 50
/// ":function"
void ex_function(exarg_T *eap)
{
@@ -2304,8 +2306,12 @@ void ex_function(exarg_T *eap)
p += eval_fname_script((const char *)p);
xfree(trans_function_name((char **)&p, true, 0, NULL, NULL));
if (*skipwhite((char *)p) == '(') {
nesting++;
indent += 2;
if (nesting == MAX_FUNC_NESTING - 1) {
emsg(_("E1058: function nesting too deep"));
} else {
nesting++;
indent += 2;
}
}
}