summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2022-08-08 21:43:11 +0100
committerBram Moolenaar <Bram@vim.org>2022-08-08 21:43:11 +0100
commitad6d9cc679259936b7c8453f17c0ec9d7ab7dcd0 (patch)
treeda52dffb3b78ee5b8271b6908b70c59661259c6c
parente6a3d81e053d150b6db4d7e04dbe401cb0161151 (diff)
patch 9.0.0174: no error for using "#{ comment" in a compiled functionv9.0.0174
Problem: No error for using "#{ comment" in a compiled function. Solution: Make error checking for "#{" consistent. (closes #10855)
-rw-r--r--src/testdir/test_vim9_func.vim4
-rw-r--r--src/version.c2
-rw-r--r--src/vim9compile.c4
3 files changed, 9 insertions, 1 deletions
diff --git a/src/testdir/test_vim9_func.vim b/src/testdir/test_vim9_func.vim
index 2714fa1ccf..d67dd55b6e 100644
--- a/src/testdir/test_vim9_func.vim
+++ b/src/testdir/test_vim9_func.vim
@@ -74,6 +74,10 @@ def TestCompilingErrorInTry()
delete('Xdir', 'rf')
enddef
+def Test_comment_error()
+ v9.CheckDefFailure(['#{ comment'], 'E1170:')
+enddef
+
def Test_compile_error_in_called_function()
var lines =<< trim END
vim9script
diff --git a/src/version.c b/src/version.c
index 507feaa49e..840a1eb672 100644
--- a/src/version.c
+++ b/src/version.c
@@ -736,6 +736,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 174,
+/**/
173,
/**/
172,
diff --git a/src/vim9compile.c b/src/vim9compile.c
index c6316367e7..98fc84c58a 100644
--- a/src/vim9compile.c
+++ b/src/vim9compile.c
@@ -2899,7 +2899,9 @@ compile_def_function(
if (*ea.cmd == '#')
{
- // "#" starts a comment
+ // "#" starts a comment, but "#{" is an error
+ if (vim9_bad_comment(ea.cmd))
+ goto erret;
line = (char_u *)"";
continue;
}