patch 8.2.2022: Vim9: star command recognized errornously
Problem: Vim9: star command recognized errornously.
Solution: Give an error for missing colon. (issue #7335)
diff --git a/src/ex_docmd.c b/src/ex_docmd.c
index a6bdac3..2c35c8e 100644
--- a/src/ex_docmd.c
+++ b/src/ex_docmd.c
@@ -3482,6 +3482,11 @@
break;
}
+ // Not not recognize ":*" as the star command unless '*' is in
+ // 'cpoptions'.
+ if (eap->cmdidx == CMD_star && vim_strchr(p_cpo, CPO_STAR) == NULL)
+ p = eap->cmd;
+
// Look for a user defined command as a last resort. Let ":Print" be
// overruled by a user defined command.
if ((eap->cmdidx == CMD_SIZE || eap->cmdidx == CMD_Print)
diff --git a/src/testdir/test_vim9_cmd.vim b/src/testdir/test_vim9_cmd.vim
index 0e6e946..97110ce 100644
--- a/src/testdir/test_vim9_cmd.vim
+++ b/src/testdir/test_vim9_cmd.vim
@@ -634,5 +634,19 @@
CheckScriptSuccess(lines)
enddef
+def Test_star_command()
+ var lines =<< trim END
+ vim9script
+ @s = 'g:success = 8'
+ set cpo+=*
+ exe '*s'
+ assert_equal(8, g:success)
+ unlet g:success
+ set cpo-=*
+ assert_fails("exe '*s'", 'E1050:')
+ END
+ CheckScriptSuccess(lines)
+enddef
+
" vim: ts=8 sw=2 sts=2 expandtab tw=80 fdm=marker
diff --git a/src/version.c b/src/version.c
index aeadf36..303ecb3 100644
--- a/src/version.c
+++ b/src/version.c
@@ -751,6 +751,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 2022,
+/**/
2021,
/**/
2020,