patch 8.2.2322: Vim9: closure nested limiting to one level
Problem: Vim9: closure nested limiting to one level.
Solution: Add outer_T. Also make STOREOUTER work.
diff --git a/src/testdir/test_vim9_func.vim b/src/testdir/test_vim9_func.vim
index efbf3d5..fdad359 100644
--- a/src/testdir/test_vim9_func.vim
+++ b/src/testdir/test_vim9_func.vim
@@ -1822,6 +1822,13 @@
assert_equal(['x', 'x2'], DoFilterThis('x'))
enddef
+def Test_triple_nested_closure()
+ var what = 'x'
+ var Match = (val: string, cmp: string): bool => stridx(val, cmp) == 0
+ var Filter = (l) => filter(l, (_, v) => Match(v, what))
+ assert_equal(['x', 'x2'], ['x', 'y', 'a', 'x2', 'c']->Filter())
+enddef
+
func Test_silent_echo()
CheckScreendump