diff options
author | zeertzjq <zeertzjq@outlook.com> | 2024-04-10 17:37:47 +0200 |
---|---|---|
committer | Christian Brabandt <cb@256bit.org> | 2024-04-10 17:37:47 +0200 |
commit | 1817ccdb107ceeaf5c48fe193da5146682c15ca6 (patch) | |
tree | 1b0fecad67841b8cd509468fad8ee6a3d0957fdb /src/testdir/test_vim9_assign.vim | |
parent | aa8e22b035dd669cb47c9237f9c9a917ec6a0ec4 (diff) |
patch 9.1.0301: Vim9: heredoc start may be recognized in stringv9.1.0301
Problem: Vim9: heredoc start may be recognized in string.
Solution: Don't skip to closing bracket for invalid list assignment.
(zeertzjq)
closes: #14472
Signed-off-by: zeertzjq <zeertzjq@outlook.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
Diffstat (limited to 'src/testdir/test_vim9_assign.vim')
-rw-r--r-- | src/testdir/test_vim9_assign.vim | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/testdir/test_vim9_assign.vim b/src/testdir/test_vim9_assign.vim index 0d6d783ed8..0beaa440a8 100644 --- a/src/testdir/test_vim9_assign.vim +++ b/src/testdir/test_vim9_assign.vim @@ -2029,6 +2029,20 @@ def Test_heredoc() END v9.CheckScriptSuccess(lines) + # heredoc start should not be recognized in string + lines =<< trim END + vim9script + def Func() + new + @" = 'bar' + ['foo', @"]->setline("]=<<"->count('=')) + assert_equal(['foo', 'bar'], getline(1, '$')) + bwipe! + enddef + Func() + END + v9.CheckScriptSuccess(lines) + v9.CheckDefFailure(['var lines =<< trim END X', 'END'], 'E488:') v9.CheckDefFailure(['var lines =<< trim END " comment', 'END'], 'E488:') |