summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/testdir/test_vim9_class.vim12
-rw-r--r--src/version.c2
-rw-r--r--src/vim9class.c2
3 files changed, 15 insertions, 1 deletions
diff --git a/src/testdir/test_vim9_class.vim b/src/testdir/test_vim9_class.vim
index bd06c6e286..ed3aac0be2 100644
--- a/src/testdir/test_vim9_class.vim
+++ b/src/testdir/test_vim9_class.vim
@@ -103,6 +103,18 @@ def Test_class_basic()
END
v9.CheckSourceFailure(lines, "E488: Trailing characters: | var y = 10", 3)
+ # Comments are allowed after an inline block
+ lines =<< trim END
+ vim9script
+ class Foo
+ static const bar = { # {{{
+ baz: 'qux'
+ } # }}}
+ endclass
+ assert_equal({baz: 'qux'}, Foo.bar)
+ END
+ v9.CheckSourceSuccess(lines)
+
# Try to define a class with the same name as an existing variable
lines =<< trim END
vim9script
diff --git a/src/version.c b/src/version.c
index 71e56a223f..be2be7062b 100644
--- a/src/version.c
+++ b/src/version.c
@@ -705,6 +705,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 378,
+/**/
377,
/**/
376,
diff --git a/src/vim9class.c b/src/vim9class.c
index 4314b52901..21945fec34 100644
--- a/src/vim9class.c
+++ b/src/vim9class.c
@@ -137,7 +137,7 @@ parse_member(
(void)skip_expr_concatenate(&init_arg, &expr_start, &expr_end, &evalarg);
init_arg = skipwhite(init_arg);
- if (*init_arg != NUL)
+ if (*init_arg != NUL && !vim9_comment_start(init_arg))
{
semsg(_(e_trailing_characters_str), init_arg);
return FAIL;