patch 9.1.1531: confusing error with nested legacy function
Problem: confusing error with nested legacy function
(lacygoill)
Solution: clarify error message E1117 with :def or :func (Hirohito Higashi)
fixes: #17697
closes: #17702
Signed-off-by: Hirohito Higashi <h.east.727@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
diff --git a/src/errors.h b/src/errors.h
index 6ca05b5..fd64420 100644
--- a/src/errors.h
+++ b/src/errors.h
@@ -2885,8 +2885,8 @@
INIT(= N_("E1115: \"assert_fails()\" fourth argument must be a number"));
EXTERN char e_assert_fails_fifth_argument[]
INIT(= N_("E1116: \"assert_fails()\" fifth argument must be a string"));
-EXTERN char e_cannot_use_bang_with_nested_def[]
- INIT(= N_("E1117: Cannot use ! with nested :def"));
+EXTERN char e_cannot_use_bang_with_nested_def_str[]
+ INIT(= N_("E1117: Cannot use ! with nested %s"));
EXTERN char e_cannot_change_locked_list[]
INIT(= N_("E1118: Cannot change locked list"));
EXTERN char e_cannot_change_locked_list_item[]
diff --git a/src/testdir/test_vim9_func.vim b/src/testdir/test_vim9_func.vim
index e214d95..85d672b 100644
--- a/src/testdir/test_vim9_func.vim
+++ b/src/testdir/test_vim9_func.vim
Binary files differ
diff --git a/src/version.c b/src/version.c
index 1884220..fc0f8c5 100644
--- a/src/version.c
+++ b/src/version.c
@@ -720,6 +720,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 1531,
+/**/
1530,
/**/
1529,
diff --git a/src/vim9compile.c b/src/vim9compile.c
index 131bab7..a7c412e 100644
--- a/src/vim9compile.c
+++ b/src/vim9compile.c
@@ -1035,7 +1035,8 @@
if (eap->forceit)
{
- emsg(_(e_cannot_use_bang_with_nested_def));
+ semsg(_(e_cannot_use_bang_with_nested_def_str),
+ eap->cmdidx == CMD_def ? ":def" : ":function");
return NULL;
}