diff src/testdir/test_user_func.vim @ 30138:6575d0bf6061 v9.0.0405

patch 9.0.0405: arguments in a partial not used by a :def function Commit: https://github.com/vim/vim/commit/c9c967da09d9faf5ba989c943352274fea365841 Author: Bram Moolenaar <Bram@vim.org> Date: Wed Sep 7 16:48:46 2022 +0100 patch 9.0.0405: arguments in a partial not used by a :def function Problem: Arguments in a partial not used by a :def function. Solution: Put the partial arguments on the stack.
author Bram Moolenaar <Bram@vim.org>
date Wed, 07 Sep 2022 18:00:04 +0200
parents 01408b56f093
children 3b42bdfff7cb
line wrap: on
line diff
--- a/src/testdir/test_user_func.vim
+++ b/src/testdir/test_user_func.vim
@@ -635,6 +635,11 @@ def DefIndex(idx: number, val: string): 
   return val == 'c'
 enddef
 
+def DefIndexXtra(xtra: string, idx: number, val: string): bool
+  call writefile([idx .. ': ' .. val], 'Xentry' .. idx, 'D')
+  return val == 'c'
+enddef
+
 def Test_defer_in_funcref()
   assert_equal(2, indexof(['a', 'b', 'c'], function('g:FuncIndex')))
   assert_false(filereadable('Xentry0'))
@@ -655,6 +660,16 @@ def Test_defer_in_funcref()
   assert_false(filereadable('Xentry0'))
   assert_false(filereadable('Xentry1'))
   assert_false(filereadable('Xentry2'))
+
+  assert_equal(2, indexof(['a', 'b', 'c'], function(g:DefIndexXtra, ['xtra'])))
+  assert_false(filereadable('Xentry0'))
+  assert_false(filereadable('Xentry1'))
+  assert_false(filereadable('Xentry2'))
+
+  assert_equal(2, indexof(['a', 'b', 'c'], funcref(g:DefIndexXtra, ['xtra'])))
+  assert_false(filereadable('Xentry0'))
+  assert_false(filereadable('Xentry1'))
+  assert_false(filereadable('Xentry2'))
 enddef