patch 8.2.0226: compiling for loop not tested

Problem:    Compiling for loop not tested.
Solution:   Add a test.  Make variable initialization work for more types.
diff --git a/src/testdir/test_vim9_disassemble.vim b/src/testdir/test_vim9_disassemble.vim
index 20ad602..d9a2ad4 100644
--- a/src/testdir/test_vim9_disassemble.vim
+++ b/src/testdir/test_vim9_disassemble.vim
@@ -325,5 +325,37 @@
         \, instr)
 enddef
 
+def ForLoop(): list<number>
+  let res: list<number>
+  for i in range(3)
+    res->add(i)
+  endfor
+  return res
+enddef
+
+def Test_compile_for_loop()
+  assert_equal([0, 1, 2], ForLoop())
+  let instr = execute('disassemble ForLoop')
+  assert_match('ForLoop.*'
+        \ .. 'let res: list<number>.*'
+        \ .. ' NEWLIST size 0.*'
+        \ .. '\d STORE $0.*'
+        \ .. 'for i in range(3).*'
+        \ .. '\d STORE -1 in $1.*'
+        \ .. '\d PUSHNR 3.*'
+        \ .. '\d BCALL range(argc 1).*'
+        \ .. '\d FOR $1 -> \d\+.*'
+        \ .. '\d STORE $2.*'
+        \ .. 'res->add(i).*'
+        \ .. '\d LOAD $0.*'
+        \ .. '\d LOAD $2.*'
+        \ .. '\d BCALL add(argc 2).*'
+        \ .. '\d DROP.*'
+        \ .. 'endfor.*'
+        \ .. '\d JUMP -> \d\+.*'
+        \ .. '\d DROP.*'
+        \, instr)
+enddef
+
 
 " vim: ts=8 sw=2 sts=2 expandtab tw=80 fdm=marker