diff --git a/src/testdir/test_listdict.vim b/src/testdir/test_listdict.vim
index 1e7c812..f904872 100644
--- a/src/testdir/test_listdict.vim
+++ b/src/testdir/test_listdict.vim
@@ -457,6 +457,19 @@
   endfunc
   let expected = 'a:' . string(get(d, 'func'))
   call assert_equal(expected, d.func(string(remove(d, 'func'))))
+
+  " similar, in a way it also works in Vim9
+  let lines =<< trim END
+      VAR d = {1: 1, 2: 'x'}
+      func GetArg(a)
+        return "a:" .. a:a
+      endfunc
+      LET d.func = function('GetArg')
+      VAR expected = 'a:' .. string(get(d, 'func'))
+      call assert_equal(expected, d.func(string(remove(d, 'func'))))
+  END
+  call CheckTransLegacySuccess(lines)
+  call CheckTransVim9Success(lines)
 endfunc
 
 func Test_dict_literal_keys()
diff --git a/src/testdir/vim9.vim b/src/testdir/vim9.vim
index cb66d42..879d918 100644
--- a/src/testdir/vim9.vim
+++ b/src/testdir/vim9.vim
@@ -107,7 +107,7 @@
   CheckScriptFailure(['vim9script'] + lines, error, lnum + 1)
 enddef
 
-" As CheckDefAndScriptFailure() but with two different exepected errors.
+" As CheckDefAndScriptFailure() but with two different expected errors.
 def CheckDefAndScriptFailure2(
   	lines: list<string>,
 	errorDef: string,
@@ -166,21 +166,31 @@
   endtry
 endfunc
 
-" Execute "lines" in a legacy function, :def function and Vim9 script.
-" Use 'VAR' for a declaration.
-" Use 'LET' for an assignment
-" Use ' #"' for a comment
-def CheckLegacyAndVim9Success(lines: list<string>)
+" Execute "lines" in a legacy function, translated as in
+" CheckLegacyAndVim9Success()
+def CheckTransLegacySuccess(lines: list<string>)
   var legacylines = lines->mapnew((_, v) =>
   				v->substitute('\<VAR\>', 'let', 'g')
 		           	 ->substitute('\<LET\>', 'let', 'g')
 		           	 ->substitute('#"', ' "', 'g'))
   CheckLegacySuccess(legacylines)
+enddef
 
+" Execute "lines" in a :def function, translated as in
+" CheckLegacyAndVim9Success()
+def CheckTransDefSuccess(lines: list<string>)
   var vim9lines = lines->mapnew((_, v) =>
   				v->substitute('\<VAR\>', 'var', 'g')
 		           	 ->substitute('\<LET ', '', 'g'))
   CheckDefSuccess(vim9lines)
+enddef
+
+" Execute "lines" in a Vim9 script, translated as in
+" CheckLegacyAndVim9Success()
+def CheckTransVim9Success(lines: list<string>)
+  var vim9lines = lines->mapnew((_, v) =>
+  				v->substitute('\<VAR\>', 'var', 'g')
+		           	 ->substitute('\<LET ', '', 'g'))
   CheckScriptSuccess(['vim9script'] + vim9lines)
 enddef
 
@@ -188,6 +198,16 @@
 " Use 'VAR' for a declaration.
 " Use 'LET' for an assignment
 " Use ' #"' for a comment
+def CheckLegacyAndVim9Success(lines: list<string>)
+  CheckTransLegacySuccess(lines)
+  CheckTransDefSuccess(lines)
+  CheckTransVim9Success(lines)
+enddef
+
+" Execute "lines" in a legacy function, :def function and Vim9 script.
+" Use 'VAR' for a declaration.
+" Use 'LET' for an assignment
+" Use ' #"' for a comment
 def CheckLegacyAndVim9Failure(lines: list<string>, error: any)
   var legacyError: string
   var defError: string
diff --git a/src/version.c b/src/version.c
index 9579c27..4e37402 100644
--- a/src/version.c
+++ b/src/version.c
@@ -756,6 +756,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    3333,
+/**/
     3332,
 /**/
     3331,
