To: vim_dev@googlegroups.com Subject: Patch 8.2.3235 Fcc: outbox From: Bram Moolenaar Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ------------ Patch 8.2.3235 Problem: Cannot use lambda in {} block in user command. (Martin Tournoij) Solution: Do not go over the end of the lambda. Files: src/userfunc.c, src/testdir/test_usercommands.vim *** ../vim-8.2.3234/src/userfunc.c 2021-07-25 14:13:50.040566339 +0200 --- src/userfunc.c 2021-07-28 15:49:12.904894644 +0200 *************** *** 1398,1404 **** // If there are line breaks, we need to split up the string. line_end = vim_strchr(start, '\n'); ! if (line_end == NULL) line_end = end; // Add "return " before the expression (or the first line). --- 1398,1404 ---- // If there are line breaks, we need to split up the string. line_end = vim_strchr(start, '\n'); ! if (line_end == NULL || line_end > end) line_end = end; // Add "return " before the expression (or the first line). *** ../vim-8.2.3234/src/testdir/test_usercommands.vim 2021-07-27 21:17:28.483675842 +0200 --- src/testdir/test_usercommands.vim 2021-07-28 15:52:38.932388588 +0200 *************** *** 632,637 **** --- 632,644 ---- call assert_equal('more', g:didmore) unlet g:didit unlet g:didmore + delcommand DoSomething + + command DoMap { + echo [1, 2, 3]->map((_, v) => v + 1) + } + DoMap + delcommand DoMap let lines =<< trim END command DoesNotEnd { *** ../vim-8.2.3234/src/version.c 2021-07-28 15:06:57.791381469 +0200 --- src/version.c 2021-07-28 15:53:29.036265695 +0200 *************** *** 757,758 **** --- 757,760 ---- { /* Add new patch number below this line */ + /**/ + 3235, /**/ -- XML is a nice language for computers. Not for humans. /// 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 ///