diff --git a/src/evalfunc.c b/src/evalfunc.c
index 4561f08..dda9874 100644
--- a/src/evalfunc.c
+++ b/src/evalfunc.c
@@ -595,33 +595,33 @@
     {"globpath",	2, 5, FEARG_2,	  f_globpath},
     {"has",		1, 1, 0,	  f_has},
     {"has_key",		2, 2, FEARG_1,	  f_has_key},
-    {"haslocaldir",	0, 2, 0,	  f_haslocaldir},
-    {"hasmapto",	1, 3, 0,	  f_hasmapto},
-    {"highlightID",	1, 1, 0,	  f_hlID},	// obsolete
-    {"highlight_exists",1, 1, 0,	  f_hlexists},	// obsolete
-    {"histadd",		2, 2, 0,	  f_histadd},
-    {"histdel",		1, 2, 0,	  f_histdel},
-    {"histget",		1, 2, 0,	  f_histget},
-    {"histnr",		1, 1, 0,	  f_histnr},
-    {"hlID",		1, 1, 0,	  f_hlID},
-    {"hlexists",	1, 1, 0,	  f_hlexists},
+    {"haslocaldir",	0, 2, FEARG_1,	  f_haslocaldir},
+    {"hasmapto",	1, 3, FEARG_1,	  f_hasmapto},
+    {"highlightID",	1, 1, FEARG_1,	  f_hlID},	// obsolete
+    {"highlight_exists",1, 1, FEARG_1,	  f_hlexists},	// obsolete
+    {"histadd",		2, 2, FEARG_2,	  f_histadd},
+    {"histdel",		1, 2, FEARG_1,	  f_histdel},
+    {"histget",		1, 2, FEARG_1,	  f_histget},
+    {"histnr",		1, 1, FEARG_1,	  f_histnr},
+    {"hlID",		1, 1, FEARG_1,	  f_hlID},
+    {"hlexists",	1, 1, FEARG_1,	  f_hlexists},
     {"hostname",	0, 0, 0,	  f_hostname},
-    {"iconv",		3, 3, 0,	  f_iconv},
-    {"indent",		1, 1, 0,	  f_indent},
+    {"iconv",		3, 3, FEARG_1,	  f_iconv},
+    {"indent",		1, 1, FEARG_1,	  f_indent},
     {"index",		2, 4, FEARG_1,	  f_index},
-    {"input",		1, 3, 0,	  f_input},
-    {"inputdialog",	1, 3, 0,	  f_inputdialog},
-    {"inputlist",	1, 1, 0,	  f_inputlist},
+    {"input",		1, 3, FEARG_1,	  f_input},
+    {"inputdialog",	1, 3, FEARG_1,	  f_inputdialog},
+    {"inputlist",	1, 1, FEARG_1,	  f_inputlist},
     {"inputrestore",	0, 0, 0,	  f_inputrestore},
     {"inputsave",	0, 0, 0,	  f_inputsave},
-    {"inputsecret",	1, 2, 0,	  f_inputsecret},
+    {"inputsecret",	1, 2, FEARG_1,	  f_inputsecret},
     {"insert",		2, 3, FEARG_1,	  f_insert},
     {"invert",		1, 1, FEARG_1,	  f_invert},
-    {"isdirectory",	1, 1, 0,	  f_isdirectory},
+    {"isdirectory",	1, 1, FEARG_1,	  f_isdirectory},
 #if defined(FEAT_FLOAT) && defined(HAVE_MATH_H)
     {"isinf",		1, 1, FEARG_1,	  f_isinf},
 #endif
-    {"islocked",	1, 1, 0,	  f_islocked},
+    {"islocked",	1, 1, FEARG_1,	  f_islocked},
 #if defined(FEAT_FLOAT) && defined(HAVE_MATH_H)
     {"isnan",		1, 1, FEARG_1,	  f_isnan},
 #endif
diff --git a/src/testdir/test_blob.vim b/src/testdir/test_blob.vim
index 273465d..a4e9bea 100644
--- a/src/testdir/test_blob.vim
+++ b/src/testdir/test_blob.vim
@@ -278,7 +278,7 @@
   call assert_equal(2, index(0zDEADBEEF, 0xBE))
   call assert_equal(-1, index(0zDEADBEEF, 0))
   call assert_equal(2, index(0z11111111, 0x11, 2))
-  call assert_equal(3, index(0z11110111, 0x11, 2))
+  call assert_equal(3, 0z11110111->index(0x11, 2))
   call assert_equal(2, index(0z11111111, 0x11, -2))
   call assert_equal(3, index(0z11110111, 0x11, -2))
 
diff --git a/src/testdir/test_breakindent.vim b/src/testdir/test_breakindent.vim
index 5b8971e..65e258a 100644
--- a/src/testdir/test_breakindent.vim
+++ b/src/testdir/test_breakindent.vim
@@ -411,7 +411,7 @@
   " test strdisplaywidth()
   call s:test_windows('setl cpo-=n sbr=>> nu nuw=4 nolist briopt= ts=4')
   let text = getline(2)
-  let width = strlen(text[1:])+indent(2)+strlen(&sbr)*3 " text wraps 3 times
+  let width = strlen(text[1:]) + indent(2) + strlen(&sbr) * 3 " text wraps 3 times
   call assert_equal(width, strdisplaywidth(text))
   call s:close_windows('set sbr=')
 endfunc
@@ -423,7 +423,7 @@
   " test strdisplaywidth()
   call s:test_windows('setl cpo-=n sbr=>> nu nuw=4 nolist briopt= ts=4 vts=4')
   let text = getline(2)
-  let width = strlen(text[1:])+indent(2)+strlen(&sbr)*3 " text wraps 3 times
+  let width = strlen(text[1:]) + 2->indent() + strlen(&sbr) * 3 " text wraps 3 times
   call assert_equal(width, strdisplaywidth(text))
   call s:close_windows('set sbr= vts&')
 endfunc
diff --git a/src/testdir/test_delete.vim b/src/testdir/test_delete.vim
index b3e153e..0ab5164 100644
--- a/src/testdir/test_delete.vim
+++ b/src/testdir/test_delete.vim
@@ -32,7 +32,7 @@
   call assert_equal(['a', 'b'], readfile('Xdir1/Xfile'))
   call assert_true(isdirectory('Xdir1/subdir'))
   call assert_equal(['a', 'b'], readfile('Xdir1/subdir/Xfile'))
-  call assert_true(isdirectory('Xdir1/empty'))
+  call assert_true('Xdir1/empty'->isdirectory())
   call assert_equal(0, delete('Xdir1', 'rf'))
   call assert_false(isdirectory('Xdir1'))
   call assert_equal(-1, delete('Xdir1', 'd'))
diff --git a/src/testdir/test_functions.vim b/src/testdir/test_functions.vim
index 1352eaa..2ffdc24 100644
--- a/src/testdir/test_functions.vim
+++ b/src/testdir/test_functions.vim
@@ -1069,7 +1069,7 @@
 
 func Test_hlexists()
   call assert_equal(0, hlexists('does_not_exist'))
-  call assert_equal(0, hlexists('Number'))
+  call assert_equal(0, 'Number'->hlexists())
   call assert_equal(0, highlight_exists('does_not_exist'))
   call assert_equal(0, highlight_exists('Number'))
   syntax on
@@ -1102,7 +1102,7 @@
 func Test_inputlist()
   call feedkeys(":let c = inputlist(['Select color:', '1. red', '2. green', '3. blue'])\<cr>1\<cr>", 'tx')
   call assert_equal(1, c)
-  call feedkeys(":let c = inputlist(['Select color:', '1. red', '2. green', '3. blue'])\<cr>2\<cr>", 'tx')
+  call feedkeys(":let c = ['Select color:', '1. red', '2. green', '3. blue']->inputlist()\<cr>2\<cr>", 'tx')
   call assert_equal(2, c)
   call feedkeys(":let c = inputlist(['Select color:', '1. red', '2. green', '3. blue'])\<cr>3\<cr>", 'tx')
   call assert_equal(3, c)
@@ -1279,7 +1279,7 @@
   let g:regs = []
   func TestFunc() abort
     let g:regs += [reg_executing()]
-    let g:typed = input('?')
+    let g:typed = '?'->input()
     let g:regs += [reg_executing()]
   endfunc
   call feedkeys("@qy\<CR>", 'xt')
@@ -1295,6 +1295,25 @@
   unlet s:reg_stat
 endfunc
 
+func Test_inputsecret()
+  map W :call TestFunc()<CR>
+  let @q = "W"
+  let g:typed1 = ''
+  let g:typed2 = ''
+  let g:regs = []
+  func TestFunc() abort
+    let g:typed1 = '?'->inputsecret()
+    let g:typed2 = inputsecret('password: ')
+  endfunc
+  call feedkeys("@qsomething\<CR>else\<CR>", 'xt')
+  call assert_equal("something", g:typed1)
+  call assert_equal("else", g:typed2)
+  delfunc TestFunc
+  unmap W
+  unlet g:typed1
+  unlet g:typed2
+endfunc
+
 func Test_libcall_libcallnr()
   if !has('libcall')
     return
diff --git a/src/testdir/test_getcwd.vim b/src/testdir/test_getcwd.vim
index 50c940f..e732546 100644
--- a/src/testdir/test_getcwd.vim
+++ b/src/testdir/test_getcwd.vim
@@ -17,7 +17,7 @@
     let lflag = haslocaldir(a:win)
   else
     let dirname = fnamemodify(getcwd(a:win, a:tab), mod)
-    let lflag = haslocaldir(a:win, a:tab)
+    let lflag = a:win->haslocaldir(a:tab)
   endif
   return bufname . ' ' . dirname . ' ' . lflag
 endfunc
diff --git a/src/testdir/test_history.vim b/src/testdir/test_history.vim
index 215fc0a..2d53474 100644
--- a/src/testdir/test_history.vim
+++ b/src/testdir/test_history.vim
@@ -12,7 +12,7 @@
   call assert_equal(-1, histnr(a:hist))
   call assert_equal('', histget(a:hist))
 
-  call assert_true(histadd(a:hist, 'ls'))
+  call assert_true('ls'->histadd(a:hist))
   call assert_true(histadd(a:hist, 'buffers'))
   call assert_equal('buffers', histget(a:hist))
   call assert_equal('ls', histget(a:hist, -2))
@@ -21,14 +21,14 @@
   call assert_equal('', histget(a:hist, -5))
   call assert_equal(2, histnr(a:hist))
   call assert_true(histdel(a:hist, 2))
-  call assert_false(histdel(a:hist, 7))
+  call assert_false(a:hist->histdel(7))
   call assert_equal(1, histnr(a:hist))
   call assert_equal('ls', histget(a:hist, -1))
 
   call assert_true(histadd(a:hist, 'buffers'))
   call assert_true(histadd(a:hist, 'ls'))
-  call assert_equal('ls', histget(a:hist, -1))
-  call assert_equal(4, histnr(a:hist))
+  call assert_equal('ls', a:hist->histget(-1))
+  call assert_equal(4, a:hist->histnr())
 
   let a=execute('history ' . a:hist)
   call assert_match("^\n      #  \\S* history\n      3  buffers\n>     4  ls$", a)
diff --git a/src/testdir/test_listdict.vim b/src/testdir/test_listdict.vim
index 961f274..557687b 100644
--- a/src/testdir/test_listdict.vim
+++ b/src/testdir/test_listdict.vim
@@ -565,7 +565,7 @@
   set rtp+=./sautest
   lockvar g:footest#x
   unlockvar g:footest#x
-  call assert_equal(-1, islocked('g:footest#x'))
+  call assert_equal(-1, 'g:footest#x'->islocked())
   call assert_equal(0, exists('g:footest#x'))
   call assert_equal(1, g:footest#x)
   let &rtp = old_rtp
diff --git a/src/testdir/test_syn_attr.vim b/src/testdir/test_syn_attr.vim
index 27f9fc0..cc20678 100644
--- a/src/testdir/test_syn_attr.vim
+++ b/src/testdir/test_syn_attr.vim
@@ -3,7 +3,7 @@
 func Test_missing_attr()
   hi Mine term=bold cterm=italic
   call assert_equal('Mine', synIDattr(hlID("Mine"), "name"))
-  call assert_equal('', synIDattr(hlID("Mine"), "bg", 'term'))
+  call assert_equal('', synIDattr("Mine"->hlID(), "bg", 'term'))
   call assert_equal('1', synIDattr(hlID("Mine"), "bold", 'term'))
   call assert_equal('1', synIDattr(hlID("Mine"), "italic", 'cterm'))
   hi Mine term=reverse cterm=inverse
@@ -12,7 +12,7 @@
   hi Mine term=underline cterm=standout gui=undercurl
   call assert_equal('1', synIDattr(hlID("Mine"), "underline", 'term'))
   call assert_equal('1', synIDattr(hlID("Mine"), "standout", 'cterm'))
-  call assert_equal('1', synIDattr(hlID("Mine"), "undercurl", 'gui'))
+  call assert_equal('1', synIDattr("Mine"->hlID(), "undercurl", 'gui'))
   hi Mine term=NONE cterm=NONE gui=NONE
   call assert_equal('', synIDattr(hlID("Mine"), "bold", 'term'))
   call assert_equal('', synIDattr(hlID("Mine"), "italic", 'cterm'))
diff --git a/src/testdir/test_termcodes.vim b/src/testdir/test_termcodes.vim
index 75eaa7b..7b71d60 100644
--- a/src/testdir/test_termcodes.vim
+++ b/src/testdir/test_termcodes.vim
@@ -33,7 +33,7 @@
     " need to use byte encoding here.
     let str = list2str([a:code + 0x20, a:col + 0x20, a:row + 0x20])
     if has('iconv')
-      let bytes = iconv(str, 'utf-8', 'latin1')
+      let bytes = str->iconv('utf-8', 'latin1')
     else
       " Hopefully the numbers are not too big.
       let bytes = str
diff --git a/src/testdir/test_true_false.vim b/src/testdir/test_true_false.vim
index a23f2cc..346b432 100644
--- a/src/testdir/test_true_false.vim
+++ b/src/testdir/test_true_false.vim
@@ -100,7 +100,7 @@
   call Try_arg_true_false('maparg("asdf", "i", %v%)', "", "asdff")
   call Try_arg_true_false('FilterMapArg(maparg("asdf", "i", 1, %v%))', "asdff", {'rhs': 'asdff'})
 
-  call Try_arg_true_false('hasmapto("asdf", "i", %v%)', 0, 1)
+  call Try_arg_true_false('"asdf"->hasmapto("i", %v%)', 0, 1)
 
   new colored
   call setline(1, '<here>')
diff --git a/src/version.c b/src/version.c
index 067e176..aec889d 100644
--- a/src/version.c
+++ b/src/version.c
@@ -762,6 +762,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1953,
+/**/
     1952,
 /**/
     1951,
