Mercurial > vim
comparison src/testdir/test_vim9_func.vim @ 23923:be36288235af v8.2.2504
patch 8.2.2504: Vim9: crash when using an argument from a closure
Commit: https://github.com/vim/vim/commit/44ec21c467ddf481b422c787324ea08f375f6942
Author: Bram Moolenaar <Bram@vim.org>
Date: Fri Feb 12 21:50:57 2021 +0100
patch 8.2.2504: Vim9: crash when using an argument from a closure
Problem: Vim9: crash when using an argument from a closure.
Solution: Check if gen_load_outer is NULL. (closes https://github.com/vim/vim/issues/7821)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Fri, 12 Feb 2021 22:00:04 +0100 |
parents | 9ddf1a537fc2 |
children | e979bf909fd8 |
comparison
equal
deleted
inserted
replaced
23922:dba960dacd31 | 23923:be36288235af |
---|---|
1667 MakeArgRefsVarargs('arg_val', 'one', 'two') | 1667 MakeArgRefsVarargs('arg_val', 'one', 'two') |
1668 g:UseVararg('call_val')->assert_equal('arg_val/the_loc/call_val/one two') | 1668 g:UseVararg('call_val')->assert_equal('arg_val/the_loc/call_val/one two') |
1669 | 1669 |
1670 unlet g:UseArg | 1670 unlet g:UseArg |
1671 unlet g:UseVararg | 1671 unlet g:UseVararg |
1672 | |
1673 var lines =<< trim END | |
1674 vim9script | |
1675 def Test(Fun: func(number): number): list<number> | |
1676 return map([1, 2, 3], (_, i) => Fun(i)) | |
1677 enddef | |
1678 def Inc(nr: number): number | |
1679 return nr + 2 | |
1680 enddef | |
1681 assert_equal([3, 4, 5], Test(Inc)) | |
1682 END | |
1683 CheckScriptSuccess(lines) | |
1672 enddef | 1684 enddef |
1673 | 1685 |
1674 def MakeGetAndAppendRefs() | 1686 def MakeGetAndAppendRefs() |
1675 var local = 'a' | 1687 var local = 'a' |
1676 | 1688 |