diff --git a/src/testdir/test_vim9_script.vim b/src/testdir/test_vim9_script.vim index 427e91238e..b491fa21a5 100644 --- a/src/testdir/test_vim9_script.vim +++ b/src/testdir/test_vim9_script.vim @@ -2284,6 +2284,10 @@ def Test_vim9_comment() 'vim9script', 'function # comment', ]) + CheckScriptFailure([ + 'vim9script', + 'function " comment', + ], 'E129:') CheckScriptFailure([ 'vim9script', 'function# comment', @@ -2333,11 +2337,11 @@ def Test_vim9_comment() 'func Test() " comment', 'endfunc', ]) - CheckScriptFailure([ + CheckScriptSuccess([ 'vim9script', 'func Test() " comment', 'endfunc', - ], 'E488:') + ]) CheckScriptSuccess([ 'def Test() # comment', diff --git a/src/userfunc.c b/src/userfunc.c index d17e807dc6..343c9cd2e1 100644 --- a/src/userfunc.c +++ b/src/userfunc.c @@ -2832,7 +2832,8 @@ def_function(exarg_T *eap, char_u *name_arg) if (*p == '\n') line_arg = p + 1; else if (*p != NUL - && !(*p == '"' && !(vim9script || eap->cmdidx == CMD_def)) + && !(*p == '"' && (!vim9script || eap->cmdidx == CMD_function) + && eap->cmdidx != CMD_def) && !(*p == '#' && (vim9script || eap->cmdidx == CMD_def)) && !eap->skip && !did_emsg) diff --git a/src/version.c b/src/version.c index fce921888c..b1ed1df4b6 100644 --- a/src/version.c +++ b/src/version.c @@ -754,6 +754,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 1314, /**/ 1313, /**/