summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2020-04-16 22:54:32 +0200
committerBram Moolenaar <Bram@vim.org>2020-04-16 22:54:32 +0200
commit4a8d9f2ed8c0079732e35d72656a000641353b94 (patch)
tree71f37256eb6a77ea7698a8d5c1b4f0a7f406e97c
parent7a09224583b2ad0d9d0648b53cc2d989d45ae96e (diff)
patch 8.2.0586: Vim9: # comment not sufficiently testedv8.2.0586
Problem: Vim9: # comment not sufficiently tested Solution: Check for preceding white space.
-rw-r--r--src/eval.c2
-rw-r--r--src/testdir/test_vim9_script.vim37
-rw-r--r--src/version.c2
3 files changed, 40 insertions, 1 deletions
diff --git a/src/eval.c b/src/eval.c
index af228965f7..1840f7420c 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -6143,7 +6143,7 @@ ex_execute(exarg_T *eap)
if (eap->skip)
++emsg_skip;
- while (*arg != NUL && *arg != '|' && *arg != '\n')
+ while (!ends_excmd2(eap->cmd, arg) || *arg == '"')
{
ret = eval1_emsg(&arg, &rettv, !eap->skip);
if (ret == FAIL)
diff --git a/src/testdir/test_vim9_script.vim b/src/testdir/test_vim9_script.vim
index a96910e833..58363baca0 100644
--- a/src/testdir/test_vim9_script.vim
+++ b/src/testdir/test_vim9_script.vim
@@ -1025,6 +1025,20 @@ def Test_vim9_comment()
':# something',
], 'E488:')
+ { # block start
+ } # block end
+ CheckDefFailure([
+ '{# comment',
+ ], 'E488:')
+ CheckDefFailure([
+ '{',
+ '}# comment',
+ ], 'E488:')
+
+ echo "yes" # comment
+ CheckDefFailure([
+ 'echo "yes"# comment',
+ ], 'E488:')
CheckScriptSuccess([
'vim9script',
'echo "yes" # something',
@@ -1041,6 +1055,29 @@ def Test_vim9_comment()
'echo "yes" # something',
], 'E121:')
+ exe "echo" # comment
+ CheckDefFailure([
+ 'exe "echo"# comment',
+ ], 'E488:')
+ CheckScriptSuccess([
+ 'vim9script',
+ 'exe "echo" # something',
+ ])
+ CheckScriptFailure([
+ 'vim9script',
+ 'exe "echo"# something',
+ ], 'E121:')
+ CheckDefFailure([
+ 'exe # comment',
+ ], 'E1015:')
+ CheckScriptFailure([
+ 'vim9script',
+ 'exe# something',
+ ], 'E121:')
+ CheckScriptFailure([
+ 'exe "echo" # something',
+ ], 'E121:')
+
CheckDefFailure([
'try# comment',
'echo "yes"',
diff --git a/src/version.c b/src/version.c
index ca8d71c1f3..5ff481f344 100644
--- a/src/version.c
+++ b/src/version.c
@@ -747,6 +747,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 586,
+/**/
585,
/**/
584,