changeset 25563:10605253d009 v8.2.3318

patch 8.2.3318: Vim9: cannot ignore quotes in number at the command line Commit: https://github.com/vim/vim/commit/ed8b099fd23b20d7b5a436182bde6672c8686189 Author: Bram Moolenaar <Bram@vim.org> Date: Sun Aug 8 19:56:28 2021 +0200 patch 8.2.3318: Vim9: cannot ignore quotes in number at the command line Problem: Vim9: cannot ignore quotes in number at the command line. Solution: Use in_vim9script() so that after ":vim9" quotes are ignored.
author Bram Moolenaar <Bram@vim.org>
date Sun, 08 Aug 2021 20:00:03 +0200
parents e9b92f1c2358
children 0f6835247aa8
files src/testdir/test_float_func.vim src/typval.c src/version.c
diffstat 3 files changed, 7 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/testdir/test_float_func.vim
+++ b/src/testdir/test_float_func.vim
@@ -261,6 +261,10 @@ def Test_float_quotes()
   call assert_fails("echo string(123'456.7'89)", 'E116:')
 enddef
 
+func Test_float_quotes_from_legacy()
+  call assert_equal("\n123456.789", execute("vim9 echo 12'34'56.789"))
+endfunc
+
 func Test_float2nr()
   call assert_equal(1, float2nr(1.234))
   call assert_equal(123, float2nr(1.234e2))
--- a/src/typval.c
+++ b/src/typval.c
@@ -1704,7 +1704,7 @@ eval_number(
 	int	    want_string UNUSED)
 {
     int		len;
-    int		skip_quotes = current_sctx.sc_version >= 4;
+    int		skip_quotes = current_sctx.sc_version >= 4 || in_vim9script();
 #ifdef FEAT_FLOAT
     char_u	*p;
     int		get_float = FALSE;
--- a/src/version.c
+++ b/src/version.c
@@ -756,6 +756,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    3318,
+/**/
     3317,
 /**/
     3316,