mirror of
https://github.com/vim/vim.git
synced 2025-07-26 11:04:33 -04:00
patch 8.2.1719: Vim9: no error if comma is missing in between arguments
Problem: Vim9: no error if comma is missing in between arguments. Solution: Give an error message.
This commit is contained in:
parent
b816dae16d
commit
10e4f12bf4
@ -268,4 +268,6 @@ EXTERN char e_cannot_change_dict_item[]
|
|||||||
INIT(= N_("E1121: Cannot change dict item"));
|
INIT(= N_("E1121: Cannot change dict item"));
|
||||||
EXTERN char e_variable_is_locked_str[]
|
EXTERN char e_variable_is_locked_str[]
|
||||||
INIT(= N_("E1122: Variable is locked: %s"));
|
INIT(= N_("E1122: Variable is locked: %s"));
|
||||||
|
EXTERN char e_missing_comma_before_argument_str[]
|
||||||
|
INIT(= N_("E1123: Missing comma before argument: %s"));
|
||||||
#endif
|
#endif
|
||||||
|
@ -2112,6 +2112,7 @@ def Test_expr7_call()
|
|||||||
"vim9script",
|
"vim9script",
|
||||||
"let x = substitute ('x', 'x', 'x', 'x')"
|
"let x = substitute ('x', 'x', 'x', 'x')"
|
||||||
], 'E121:', 2)
|
], 'E121:', 2)
|
||||||
|
CheckDefFailure(["let Ref = function('len' [1, 2])"], 'E1123:', 1)
|
||||||
|
|
||||||
let auto_lines =<< trim END
|
let auto_lines =<< trim END
|
||||||
def g:some#func(): string
|
def g:some#func(): string
|
||||||
|
@ -750,6 +750,8 @@ static char *(features[]) =
|
|||||||
|
|
||||||
static int included_patches[] =
|
static int included_patches[] =
|
||||||
{ /* Add new patch number below this line */
|
{ /* Add new patch number below this line */
|
||||||
|
/**/
|
||||||
|
1719,
|
||||||
/**/
|
/**/
|
||||||
1718,
|
1718,
|
||||||
/**/
|
/**/
|
||||||
|
@ -2290,6 +2290,7 @@ compile_arguments(char_u **arg, cctx_T *cctx, int *argcount)
|
|||||||
{
|
{
|
||||||
char_u *p = *arg;
|
char_u *p = *arg;
|
||||||
char_u *whitep = *arg;
|
char_u *whitep = *arg;
|
||||||
|
int must_end = FALSE;
|
||||||
|
|
||||||
for (;;)
|
for (;;)
|
||||||
{
|
{
|
||||||
@ -2300,6 +2301,11 @@ compile_arguments(char_u **arg, cctx_T *cctx, int *argcount)
|
|||||||
*arg = p + 1;
|
*arg = p + 1;
|
||||||
return OK;
|
return OK;
|
||||||
}
|
}
|
||||||
|
if (must_end)
|
||||||
|
{
|
||||||
|
semsg(_(e_missing_comma_before_argument_str), p);
|
||||||
|
return FAIL;
|
||||||
|
}
|
||||||
|
|
||||||
if (compile_expr0(&p, cctx) == FAIL)
|
if (compile_expr0(&p, cctx) == FAIL)
|
||||||
return FAIL;
|
return FAIL;
|
||||||
@ -2316,6 +2322,8 @@ compile_arguments(char_u **arg, cctx_T *cctx, int *argcount)
|
|||||||
if (*p != NUL && !VIM_ISWHITE(*p))
|
if (*p != NUL && !VIM_ISWHITE(*p))
|
||||||
semsg(_(e_white_space_required_after_str), ",");
|
semsg(_(e_white_space_required_after_str), ",");
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
must_end = TRUE;
|
||||||
whitep = p;
|
whitep = p;
|
||||||
p = skipwhite(p);
|
p = skipwhite(p);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user