" Tests for multi-line regexps with ":s".
source shared.vim
+source check.vim
func Test_multiline_subst()
enew!
call assert_fails("call substitute('123', '2', Replacer, 'g')", 'E118:')
endfunc
+func Test_substitute_float()
+ CheckFeature float
+
+ call assert_equal('number 1.23', substitute('number ', '$', { -> 1.23 }, ''))
+ vim9 assert_equal('number 1.23', substitute('number ', '$', () => 1.23, ''))
+endfunc
+
" Tests for *sub-replace-special* and *sub-replace-expression* on :substitute.
" Execute a list of :substitute command tests
break;
case VAR_FLOAT:
#ifdef FEAT_FLOAT
- emsg(_(e_float_as_string));
- break;
+ if (strict)
+ {
+ emsg(_(e_float_as_string));
+ break;
+ }
+ vim_snprintf((char *)buf, NUMBUFLEN, "%g", varp->vval.v_float);
+ return buf;
#endif
case VAR_STRING:
if (varp->vval.v_string != NULL)