diff --git a/src/testdir/test_vim9_assign.vim b/src/testdir/test_vim9_assign.vim
index 9a26d55..f02da7f 100644
--- a/src/testdir/test_vim9_assign.vim
+++ b/src/testdir/test_vim9_assign.vim
@@ -847,6 +847,36 @@
       Ref()
   END
   CheckScriptSuccess(lines)
+
+  lines =<< trim END
+      vim9script
+
+      var nres: any
+      var sres: any
+      def Func(n: number, s = '')
+        nres = n
+        sres = s
+      enddef
+
+      var n: number
+      var Ref = function(Func, [n])
+      Ref('x')
+      assert_equal(0, nres)
+      assert_equal('x', sres)
+  END
+  CheckScriptSuccess(lines)
+
+  lines =<< trim END
+      vim9script
+
+      def Func(n: number, s = '')
+      enddef
+
+      var n: number
+      var Ref = function(Func, [n])
+      Ref(0)
+  END
+  CheckScriptFailure(lines, 'E1013: Argument 2: type mismatch, expected string but got number')
 enddef
 
 def Test_assignment_list_any_index()
diff --git a/src/userfunc.c b/src/userfunc.c
index d4d28c5..85a1cd3 100644
--- a/src/userfunc.c
+++ b/src/userfunc.c
@@ -3326,6 +3326,7 @@
     int		argv_base = 0;
     partial_T	*partial = funcexe->fe_partial;
     type_T	check_type;
+    type_T	*check_type_args[MAX_FUNC_ARGS];
 
     // Initialize rettv so that it is safe for caller to invoke clear_tv(rettv)
     // even when call_func() returns FAIL.
@@ -3377,6 +3378,11 @@
 		// make a copy of the type with the correction.
 		check_type = *funcexe->fe_check_type;
 		funcexe->fe_check_type = &check_type;
+		check_type.tt_args = check_type_args;
+		CLEAR_FIELD(check_type_args);
+		for (i = 0; i < check_type.tt_argcount; ++i)
+		    check_type_args[i + partial->pt_argc] =
+							 check_type.tt_args[i];
 		check_type.tt_argcount += partial->pt_argc;
 		check_type.tt_min_argcount += partial->pt_argc;
 	    }
diff --git a/src/version.c b/src/version.c
index f5f3c30..a04c91c 100644
--- a/src/version.c
+++ b/src/version.c
@@ -750,6 +750,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    3945,
+/**/
     3944,
 /**/
     3943,
diff --git a/src/vim9type.c b/src/vim9type.c
index 4542e1e..a9fb5b0 100644
--- a/src/vim9type.c
+++ b/src/vim9type.c
@@ -371,6 +371,18 @@
 		    *type = *ufunc->uf_func_type;
 		    type->tt_argcount -= tv->vval.v_partial->pt_argc;
 		    type->tt_min_argcount -= tv->vval.v_partial->pt_argc;
+		    if (type->tt_argcount == 0)
+			type->tt_args = NULL;
+		    else
+		    {
+			int i;
+
+			func_type_add_arg_types(type, type->tt_argcount,
+								     type_gap);
+			for (i = 0; i < type->tt_argcount; ++i)
+			    type->tt_args[i] = ufunc->uf_func_type->tt_args[
+					      i + tv->vval.v_partial->pt_argc];
+		    }
 		    return type;
 		}
 		return ufunc->uf_func_type;
@@ -464,6 +476,9 @@
     type_T	*actual_type;
     int		res = FAIL;
 
+    if (expected == NULL)
+	return OK;  // didn't expect anything.
+
     // For some values there is no type, assume an error will be given later
     // for an invalid value.
     if ((actual_tv->v_type == VAR_FUNC && actual_tv->vval.v_string == NULL)
