patch 8.2.3229: Vim9: runtime and compile time type checks are not the same

Problem:    Vim9: runtime and compile time type checks are not the same.
Solution:   Add more runtime type checks for builtin functions. (Yegappan
            Lakshmanan, closes #8646)
diff --git a/src/eval.c b/src/eval.c
index 8050bbb..0d41f17 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -4190,9 +4190,9 @@
 f_slice(typval_T *argvars, typval_T *rettv)
 {
     if (in_vim9script()
-	    && ((argvars[0].v_type != VAR_LIST
+	    && ((argvars[0].v_type != VAR_STRING
+		    && argvars[0].v_type != VAR_LIST
 		    && argvars[0].v_type != VAR_BLOB
-		    && argvars[0].v_type != VAR_STRING
 		    && check_for_list_arg(argvars, 0) == FAIL)
 		|| check_for_number_arg(argvars, 1) == FAIL
 		|| check_for_opt_number_arg(argvars, 2) == FAIL))