summaryrefslogtreecommitdiffstats
path: root/src/testdir/test_vim9_assign.vim
diff options
context:
space:
mode:
authorYegappan Lakshmanan <yegappan@yahoo.com>2023-10-26 23:05:07 +0200
committerChristian Brabandt <cb@256bit.org>2023-10-26 23:05:07 +0200
commitc229a6ac0775e07dff456ca8832c516e57a74e74 (patch)
tree59214f47ac823decad11c0eef5beca4bb2e94b1c /src/testdir/test_vim9_assign.vim
parent10407df7a95d0311c7d2eb920d3b72020db5b301 (diff)
patch 9.0.2072: Vim9: no nr2str conversion in list-unpackv9.0.2072
Problem: Vim9: no nr2str conversion in list-unpack Solution: Generate 2STRING instruction to convert dict index to string Generate instruction to convert dict index to a string fixes: #13417 closes: #13424 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
Diffstat (limited to 'src/testdir/test_vim9_assign.vim')
-rw-r--r--src/testdir/test_vim9_assign.vim17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/testdir/test_vim9_assign.vim b/src/testdir/test_vim9_assign.vim
index 6d2858f6c0..91d302c4c5 100644
--- a/src/testdir/test_vim9_assign.vim
+++ b/src/testdir/test_vim9_assign.vim
@@ -2986,4 +2986,21 @@ def Test_heredoc_expr()
v9.CheckDefAndScriptFailure(lines, 'E15: Invalid expression: "}"')
enddef
+" Test for assigning to a multi-dimensional list item.
+def Test_list_item_assign()
+ var lines =<< trim END
+ vim9script
+
+ def Foo()
+ var l: list<list<string>> = [['x', 'x', 'x'], ['y', 'y', 'y']]
+ var z: number = 1
+
+ [l[1][2], z] = ['a', 20]
+ assert_equal([['x', 'x', 'x'], ['y', 'y', 'a']], l)
+ enddef
+ Foo()
+ END
+ v9.CheckSourceSuccess(lines)
+enddef
+
" vim: ts=8 sw=2 sts=2 expandtab tw=80 fdm=marker