patch 8.2.1812: Vim9: nested closure throws an internal error
Problem: Vim9: nested closure throws an internal error.
Solution: Do not skip a local variable with a partial. (closes #7065)
diff --git a/src/testdir/test_vim9_func.vim b/src/testdir/test_vim9_func.vim
index f335245..c3687cf 100644
--- a/src/testdir/test_vim9_func.vim
+++ b/src/testdir/test_vim9_func.vim
@@ -1388,6 +1388,20 @@
CheckScriptSuccess(lines)
enddef
+def Test_nested_closure_used()
+ var lines =<< trim END
+ vim9script
+ def Func()
+ var x = 'hello'
+ var Closure = {-> x}
+ g:Myclosure = {-> Closure()}
+ enddef
+ Func()
+ assert_equal('hello', g:Myclosure())
+ END
+ CheckScriptSuccess(lines)
+enddef
+
def Test_nested_closure_fails()
var lines =<< trim END
vim9script