changeset 21612:c495d3e30f4b v8.2.1356

patch 8.2.1356: Vim9: cannot get the percent register Commit: https://github.com/vim/vim/commit/7226e5b19bd6e081043cbcc32541ef72bbdf667d Author: Bram Moolenaar <Bram@vim.org> Date: Sun Aug 2 17:33:26 2020 +0200 patch 8.2.1356: Vim9: cannot get the percent register Problem: Vim9: cannot get the percent register. Solution: Check for readable registers instead of writable. (closes https://github.com/vim/vim/issues/6566)
author Bram Moolenaar <Bram@vim.org>
date Sun, 02 Aug 2020 17:45:03 +0200
parents 4bc6d27d7c73
children 9dade08b2bad
files src/testdir/test_vim9_expr.vim src/version.c src/vim9compile.c
diffstat 3 files changed, 12 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/testdir/test_vim9_expr.vim
+++ b/src/testdir/test_vim9_expr.vim
@@ -1430,6 +1430,15 @@ enddef
 def Test_expr7_register()
   @a = 'register a'
   assert_equal('register a', @a)
+
+  let fname = expand('%')
+  assert_equal(fname, @%)
+
+  feedkeys(":echo 'some'\<CR>", "xt")
+  assert_equal("echo 'some'", @:)
+
+  normal axyz
+  assert_equal("xyz", @.)
 enddef
 
 def Test_expr7_namespace()
--- a/src/version.c
+++ b/src/version.c
@@ -755,6 +755,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1356,
+/**/
     1355,
 /**/
     1354,
--- a/src/vim9compile.c
+++ b/src/vim9compile.c
@@ -3565,7 +3565,7 @@ compile_get_register(char_u **arg, cctx_
 	semsg(_(e_syntax_at), *arg - 1);
 	return FAIL;
     }
-    if (!valid_yank_reg(**arg, TRUE))
+    if (!valid_yank_reg(**arg, FALSE))
     {
 	emsg_invreg(**arg);
 	return FAIL;