patch 8.2.3895: Vim9: confusing error when using function() with a number

Problem:    Vim9: confusing error when using function() with a number.
Solution:   Check for a function or string argument.
diff --git a/src/evalfunc.c b/src/evalfunc.c
index e4fa35b..9e0fd80 100644
--- a/src/evalfunc.c
+++ b/src/evalfunc.c
@@ -3998,7 +3998,8 @@
     int		is_global = FALSE;
 
     if (in_vim9script()
-	    && (check_for_opt_list_arg(argvars, 1) == FAIL
+	    && (check_for_string_or_func_arg(argvars, 0) == FAIL
+		|| check_for_opt_list_arg(argvars, 1) == FAIL
 		|| (argvars[1].v_type != VAR_UNKNOWN
 		    && check_for_opt_dict_arg(argvars, 2) == FAIL)))
 	return;