patch 8.2.2949: tests failing because no error for float to string conversion
Problem: Tests failing because there is no error for float to string
conversion.
Solution: Change the check for failure to check for correct result. Make
some conversions strict in Vim9 script.
diff --git a/src/evalfunc.c b/src/evalfunc.c
index 1962ccd..07f158d 100644
--- a/src/evalfunc.c
+++ b/src/evalfunc.c
@@ -3000,7 +3000,8 @@
if (argvars[arg_off + 1].v_type != VAR_UNKNOWN)
{
char_u buf[NUMBUFLEN];
- char_u *s = tv_get_string_buf_chk(&argvars[arg_off + 1], buf);
+ char_u *s = tv_get_string_buf_chk_strict(&argvars[arg_off + 1], buf,
+ in_vim9script());
if (s == NULL)
return;
@@ -8897,7 +8898,7 @@
static void
f_strwidth(typval_T *argvars, typval_T *rettv)
{
- char_u *s = tv_get_string(&argvars[0]);
+ char_u *s = tv_get_string_strict(&argvars[0]);
rettv->vval.v_number = (varnumber_T)(mb_string2cells(s, -1));
}