patch 8.2.2318: Vim9: string and list index work differently

Problem:    Vim9: string and list index work differently.
Solution:   Make string index work like list index. (closes #7643)
diff --git a/src/proto/eval.pro b/src/proto/eval.pro
index ec45364..cc86a5d 100644
--- a/src/proto/eval.pro
+++ b/src/proto/eval.pro
@@ -64,8 +64,6 @@
 int eval_isnamec(int c);
 int eval_isnamec1(int c);
 int eval_isdictc(int c);
-char_u *char_from_string(char_u *str, varnumber_T index);
-char_u *string_slice(char_u *str, varnumber_T first, varnumber_T last);
 int handle_subscript(char_u **arg, typval_T *rettv, evalarg_T *evalarg, int verbose);
 int item_copy(typval_T *from, typval_T *to, int deep, int copyID);
 void echo_one(typval_T *rettv, int with_space, int *atstart, int *needclr);
diff --git a/src/proto/vim9execute.pro b/src/proto/vim9execute.pro
index 8e948c5..2337a6c 100644
--- a/src/proto/vim9execute.pro
+++ b/src/proto/vim9execute.pro
@@ -1,6 +1,8 @@
 /* vim9execute.c */
 void to_string_error(vartype_T vartype);
 void funcstack_check_refcount(funcstack_T *funcstack);
+char_u *char_from_string(char_u *str, varnumber_T index);
+char_u *string_slice(char_u *str, varnumber_T first, varnumber_T last);
 int fill_partial_and_closure(partial_T *pt, ufunc_T *ufunc, ectx_T *ectx);
 int call_def_function(ufunc_T *ufunc, int argc_arg, typval_T *argv, partial_T *partial, typval_T *rettv);
 void ex_disassemble(exarg_T *eap);