patch 8.2.1504: Vim9: white space checks are only done for a :def function
Problem: Vim9: white space checks are only done for a :def function.
Solution: Also do checks at the script level. Adjust the name of a few
error messages.
diff --git a/src/vim9compile.c b/src/vim9compile.c
index b9d8caa..a552c85 100644
--- a/src/vim9compile.c
+++ b/src/vim9compile.c
@@ -295,7 +295,7 @@
|| find_func_even_dead(p, FALSE, cctx) != NULL)
{
p[len] = c;
- semsg(_(e_name_already_defined), p);
+ semsg(_(e_name_already_defined_str), p);
return FAIL;
}
p[len] = c;
@@ -2202,14 +2202,14 @@
if (*p != ',' && *skipwhite(p) == ',')
{
- semsg(_(e_no_white_space_allowed_before), ",");
+ semsg(_(e_no_white_space_allowed_before_str), ",");
p = skipwhite(p);
}
if (*p == ',')
{
++p;
if (*p != NUL && !VIM_ISWHITE(*p))
- semsg(_(e_white_space_required_after), ",");
+ semsg(_(e_white_space_required_after_str), ",");
}
whitep = p;
p = skipwhite(p);
@@ -2416,7 +2416,7 @@
}
if (*p == ',')
{
- semsg(_(e_no_white_space_allowed_before), ",");
+ semsg(_(e_no_white_space_allowed_before_str), ",");
return FAIL;
}
if (*p == ']')
@@ -2432,7 +2432,7 @@
++p;
if (*p != ']' && !IS_WHITE_OR_NUL(*p))
{
- semsg(_(e_white_space_required_after), ",");
+ semsg(_(e_white_space_required_after_str), ",");
return FAIL;
}
}
@@ -2618,7 +2618,7 @@
if (**arg != ':')
{
if (*skipwhite(*arg) == ':')
- semsg(_(e_no_white_space_allowed_before), ":");
+ semsg(_(e_no_white_space_allowed_before_str), ":");
else
semsg(_(e_missing_dict_colon), *arg);
return FAIL;
@@ -2626,7 +2626,7 @@
whitep = *arg + 1;
if (!IS_WHITE_OR_NUL(*whitep))
{
- semsg(_(e_white_space_required_after), ":");
+ semsg(_(e_white_space_required_after_str), ":");
return FAIL;
}
@@ -2657,7 +2657,7 @@
}
if (IS_WHITE_OR_NUL(*whitep))
{
- semsg(_(e_no_white_space_allowed_before), ",");
+ semsg(_(e_no_white_space_allowed_before_str), ",");
return FAIL;
}
whitep = *arg + 1;
@@ -3518,7 +3518,7 @@
char_u buf[10];
vim_strncpy(buf, op, len);
- semsg(_(e_white_space_required_before_and_after), buf);
+ semsg(_(e_white_space_required_before_and_after_str), buf);
}
/*
@@ -3542,7 +3542,7 @@
if (**arg != '>')
{
if (*skipwhite(*arg) == '>')
- semsg(_(e_no_white_space_allowed_before), ">");
+ semsg(_(e_no_white_space_allowed_before_str), ">");
else
emsg(_(e_missing_gt));
return FAIL;
@@ -3887,7 +3887,7 @@
if (!IS_WHITE_OR_NUL(**arg) || !IS_WHITE_OR_NUL(p[2]))
{
- semsg(_(e_white_space_required_before_and_after), op);
+ semsg(_(e_white_space_required_before_and_after_str), op);
return FAIL;
}
@@ -4028,7 +4028,7 @@
if (!IS_WHITE_OR_NUL(**arg) || !IS_WHITE_OR_NUL(p[1]))
{
- semsg(_(e_white_space_required_before_and_after), "?");
+ semsg(_(e_white_space_required_before_and_after_str), "?");
return FAIL;
}
@@ -4087,7 +4087,7 @@
if (!IS_WHITE_OR_NUL(**arg) || !IS_WHITE_OR_NUL(p[1]))
{
- semsg(_(e_white_space_required_before_and_after), ":");
+ semsg(_(e_white_space_required_before_and_after_str), ":");
return FAIL;
}
@@ -4394,7 +4394,7 @@
return;
case '&': semsg(_(e_cannot_declare_an_option), name);
return;
- case '@': semsg(_(e_cannot_declare_a_register), name);
+ case '@': semsg(_(e_cannot_declare_a_register_str), name);
return;
default: return;
}
@@ -4775,7 +4775,7 @@
// parse optional type: "let var: type = expr"
if (!VIM_ISWHITE(p[1]))
{
- semsg(_(e_white_space_required_after), ":");
+ semsg(_(e_white_space_required_after_str), ":");
goto theend;
}
p = skipwhite(p + 1);
@@ -6042,7 +6042,7 @@
end = skip_regexp_ex(p + 1, *p, TRUE, &tofree, &dropped);
if (*end != *p)
{
- semsg(_(e_separator_mismatch), p);
+ semsg(_(e_separator_mismatch_str), p);
vim_free(tofree);
return FAIL;
}