To: vim_dev@googlegroups.com Subject: Patch 8.2.4897 Fcc: outbox From: Bram Moolenaar Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ------------ Patch 8.2.4897 Problem: Comment inside an expression in lambda ignores the rest of the expression. Solution: Truncate the line at the comment. (closes #10367) Files: src/eval.c, src/testdir/test_lambda.vim *** ../vim-8.2.4896/src/eval.c 2022-05-06 21:24:28.182534249 +0100 --- src/eval.c 2022-05-06 21:47:49.872392207 +0100 *************** *** 2208,2215 **** garray_T *gap = &evalarg->eval_ga; char_u *line; ! if (arg != NULL && *arg == NL) ! return skipwhite(arg + 1); if (evalarg->eval_cookie != NULL) line = evalarg->eval_getline(0, evalarg->eval_cookie, 0, --- 2208,2222 ---- garray_T *gap = &evalarg->eval_ga; char_u *line; ! if (arg != NULL) ! { ! if (*arg == NL) ! return skipwhite(arg + 1); ! // Truncate before a trailing comment, so that concatenating the lines ! // won't turn the rest into a comment. ! if (*skipwhite(arg) == '#') ! *arg = NUL; ! } if (evalarg->eval_cookie != NULL) line = evalarg->eval_getline(0, evalarg->eval_cookie, 0, *** ../vim-8.2.4896/src/testdir/test_lambda.vim 2022-04-18 16:14:06.435897246 +0100 --- src/testdir/test_lambda.vim 2022-05-06 21:47:04.284442543 +0100 *************** *** 70,75 **** --- 70,85 ---- exe 'sleep ' .. [20, 100, 500, 500, 500][g:run_nr] .. 'm' call assert_equal('done', g:result) unlet g:result + + let lines =<< trim END + g:result = [0]->map((_, v) => + 1 # inline comment + + + 2 + ) + assert_equal([3], g:result) + END + call v9.CheckDefAndScriptSuccess(lines) endfunc func Test_lambda_with_partial() *** ../vim-8.2.4896/src/version.c 2022-05-06 21:24:28.182534249 +0100 --- src/version.c 2022-05-06 21:44:39.196610935 +0100 *************** *** 748,749 **** --- 748,751 ---- { /* Add new patch number below this line */ + /**/ + 4897, /**/ -- ~ ~ ~ ".signature" 4 lines, 50 characters written /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ /// \\\ \\\ sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ /// \\\ help me help AIDS victims -- http://ICCF-Holland.org ///