diff src/evalfunc.c @ 24822:5f8dd7b3ae41 v8.2.2949

patch 8.2.2949: tests failing because no error for float to string conversion Commit: https://github.com/vim/vim/commit/3cfa5b16b06bcc034f6de77070fa779d698ab5e9 Author: Bram Moolenaar <Bram@vim.org> Date: Sun Jun 6 14:14:39 2021 +0200 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.
author Bram Moolenaar <Bram@vim.org>
date Sun, 06 Jun 2021 14:15:04 +0200
parents 7bc92a651472
children 3f9053c21765
line wrap: on
line diff
--- a/src/evalfunc.c
+++ b/src/evalfunc.c
@@ -3000,7 +3000,8 @@ execute_common(typval_T *argvars, typval
     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 @@ f_strdisplaywidth(typval_T *argvars, typ
     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));
 }