Mercurial > vim
diff src/testdir/test_vim9_expr.vim @ 21767:9529a2367d3e v8.2.1433
patch 8.2.1433: Vim9: cannot mingle comments in multi-line lambda
Commit: https://github.com/vim/vim/commit/ba60cc45e786166767ca80f3dea6236d993c7971
Author: Bram Moolenaar <Bram@vim.org>
Date: Wed Aug 12 19:15:33 2020 +0200
patch 8.2.1433: Vim9: cannot mingle comments in multi-line lambda
Problem: Vim9: cannot mingle comments in multi-line lambda.
Solution: Skip over NULL lines. (closes https://github.com/vim/vim/issues/6694)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Wed, 12 Aug 2020 19:30:04 +0200 |
parents | 08940efa6b4e |
children | f37c1330b15c |
line wrap: on
line diff
--- a/src/testdir/test_vim9_expr.vim +++ b/src/testdir/test_vim9_expr.vim @@ -1433,6 +1433,16 @@ def Test_expr7_list_vim9script() CheckScriptFailure(lines, 'E1068:') enddef +def LambdaWithComments(): func + return {x -> + # some comment + x == 1 + # some comment + || + x == 2 + } +enddef + def Test_expr7_lambda() let La = { -> 'result'} assert_equal('result', La()) @@ -1466,6 +1476,11 @@ def Test_expr7_lambda() assert_equal([{'key': 12}], filter(dl, {_, v -> has_key(v, 'key') ? v['key'] == 12 : 0})) + assert_equal(false, LambdaWithComments()(0)) + assert_equal(true, LambdaWithComments()(1)) + assert_equal(true, LambdaWithComments()(2)) + assert_equal(false, LambdaWithComments()(3)) + call CheckDefFailure(["filter([1, 2], {k,v -> 1})"], 'E1069:') enddef