summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2020-09-27 17:57:43 +0200
committerBram Moolenaar <Bram@vim.org>2020-09-27 17:57:43 +0200
commit37ce6d3a6ab7c7864de6788feb67377e8bbffa63 (patch)
tree36763c84e5fafd85d0d0860ba8998d8e29191507
parent5597ba046790e5ffd76dfc327d7898c56df65d3f (diff)
patch 8.2.1759: Vim9: Some tests are still using :letv8.2.1759
Problem: Vim9: Some tests are still using :let. Solution: Change more declarations to use :var.
-rw-r--r--src/testdir/test_vim9_expr.vim744
-rw-r--r--src/version.c2
2 files changed, 375 insertions, 371 deletions
diff --git a/src/testdir/test_vim9_expr.vim b/src/testdir/test_vim9_expr.vim
index fe43e80e1f..deb1fbd876 100644
--- a/src/testdir/test_vim9_expr.vim
+++ b/src/testdir/test_vim9_expr.vim
@@ -3,6 +3,8 @@
source check.vim
source vim9.vim
+" TODO: remove later
+let v:disallow_let = 1
let g:cond = v:false
def FuncOne(arg: number): string
@@ -28,8 +30,8 @@ def Test_expr1()
assert_equal('one', 0z1234 ? 'one' : 'two')
assert_equal('one', [0] ? 'one' : 'two')
assert_equal('one', #{x: 0} ? 'one' : 'two')
- let var = 1
- assert_equal('one', var ? 'one' : 'two')
+ var name = 1
+ assert_equal('one', name ? 'one' : 'two')
assert_equal('two', false ? 'one' : 'two')
assert_equal('two', 0 ? 'one' : 'two')
@@ -40,33 +42,33 @@ def Test_expr1()
assert_equal('two', 0z ? 'one' : 'two')
assert_equal('two', [] ? 'one' : 'two')
assert_equal('two', {} ? 'one' : 'two')
- var = 0
- assert_equal('two', var ? 'one' : 'two')
+ name = 0
+ assert_equal('two', name ? 'one' : 'two')
# with constant condition expression is not evaluated
assert_equal('one', 1 ? 'one' : xxx)
- let Some: func = function('len')
- let Other: func = function('winnr')
- let Res: func = g:atrue ? Some : Other
+ var Some: func = function('len')
+ var Other: func = function('winnr')
+ var Res: func = g:atrue ? Some : Other
assert_equal(function('len'), Res)
- let RetOne: func(string): number = function('len')
- let RetTwo: func(string): number = function('winnr')
- let RetThat: func = g:atrue ? RetOne : RetTwo
+ var RetOne: func(string): number = function('len')
+ var RetTwo: func(string): number = function('winnr')
+ var RetThat: func = g:atrue ? RetOne : RetTwo
assert_equal(function('len'), RetThat)
- let X = FuncOne
- let Y = FuncTwo
- let Z = g:cond ? FuncOne : FuncTwo
+ var X = FuncOne
+ var Y = FuncTwo
+ var Z = g:cond ? FuncOne : FuncTwo
assert_equal(123, Z(3))
enddef
def Test_expr1_vimscript()
# check line continuation
- let lines =<< trim END
+ var lines =<< trim END
vim9script
- let var = 1
+ var var = 1
? 'yes'
: 'no'
assert_equal('yes', var)
@@ -75,7 +77,7 @@ def Test_expr1_vimscript()
lines =<< trim END
vim9script
- let var = v:false
+ var var = v:false
? 'yes'
: 'no'
assert_equal('no', var)
@@ -84,7 +86,7 @@ def Test_expr1_vimscript()
lines =<< trim END
vim9script
- let var = v:false ?
+ var var = v:false ?
'yes' :
'no'
assert_equal('no', var)
@@ -94,27 +96,27 @@ def Test_expr1_vimscript()
# check white space
lines =<< trim END
vim9script
- let var = v:true?1:2
+ var var = v:true?1:2
END
CheckScriptFailure(lines, 'E1004:', 2)
lines =<< trim END
vim9script
- let var = v:true? 1 : 2
+ var var = v:true? 1 : 2
END
CheckScriptFailure(lines, 'E1004:', 2)
lines =<< trim END
vim9script
- let var = v:true ?1 : 2
+ var var = v:true ?1 : 2
END
CheckScriptFailure(lines, 'E1004:', 2)
lines =<< trim END
vim9script
- let var = v:true ? 1: 2
+ var var = v:true ? 1: 2
END
CheckScriptFailure(lines, 'E1004:', 2)
lines =<< trim END
vim9script
- let var = v:true ? 1 :2
+ var var = v:true ? 1 :2
END
CheckScriptFailure(lines, 'E1004:', 2)
@@ -141,23 +143,23 @@ def Test_expr1_vimscript()
enddef
func Test_expr1_fails()
- call CheckDefFailure(["let x = 1 ? 'one'"], "Missing ':' after '?'", 1)
+ call CheckDefFailure(["var x = 1 ? 'one'"], "Missing ':' after '?'", 1)
let msg = "White space required before and after '?'"
- call CheckDefFailure(["let x = 1? 'one' : 'two'"], msg, 1)
- call CheckDefFailure(["let x = 1 ?'one' : 'two'"], msg, 1)
- call CheckDefFailure(["let x = 1?'one' : 'two'"], msg, 1)
+ call CheckDefFailure(["var x = 1? 'one' : 'two'"], msg, 1)
+ call CheckDefFailure(["var x = 1 ?'one' : 'two'"], msg, 1)
+ call CheckDefFailure(["var x = 1?'one' : 'two'"], msg, 1)
let msg = "White space required before and after ':'"
- call CheckDefFailure(["let x = 1 ? 'one': 'two'"], msg, 1)
- call CheckDefFailure(["let x = 1 ? 'one' :'two'"], msg, 1)
- call CheckDefFailure(["let x = 1 ? 'one':'two'"], msg, 1)
+ call CheckDefFailure(["var x = 1 ? 'one': 'two'"], msg, 1)
+ call CheckDefFailure(["var x = 1 ? 'one' :'two'"], msg, 1)
+ call CheckDefFailure(["var x = 1 ? 'one':'two'"], msg, 1)
" missing argument detected even when common type is used
call CheckDefFailure([
- \ 'let X = FuncOne',
- \ 'let Y = FuncTwo',
- \ 'let Z = g:cond ? FuncOne : FuncTwo',
+ \ 'var X = FuncOne',
+ \ 'var Y = FuncTwo',
+ \ 'var Z = g:cond ? FuncOne : FuncTwo',
\ 'Z()'], 'E119:', 4)
endfunc
@@ -199,9 +201,9 @@ enddef
def Test_expr2_vimscript()
# check line continuation
- let lines =<< trim END
+ var lines =<< trim END
vim9script
- let var = 0
+ var var = 0
|| 1
assert_equal(1, var)
END
@@ -209,7 +211,7 @@ def Test_expr2_vimscript()
lines =<< trim END
vim9script
- let var = v:false
+ var var = v:false
|| v:true
|| v:false
assert_equal(v:true, var)
@@ -218,7 +220,7 @@ def Test_expr2_vimscript()
lines =<< trim END
vim9script
- let var = v:false ||
+ var var = v:false ||
v:true ||
v:false
assert_equal(v:true, var)
@@ -228,17 +230,17 @@ def Test_expr2_vimscript()
# check white space
lines =<< trim END
vim9script
- let var = v:true||v:true
+ var var = v:true||v:true
END
CheckScriptFailure(lines, 'E1004:', 2)
lines =<< trim END
vim9script
- let var = v:true ||v:true
+ var var = v:true ||v:true
END
CheckScriptFailure(lines, 'E1004:', 2)
lines =<< trim END
vim9script
- let var = v:true|| v:true
+ var var = v:true|| v:true
END
CheckScriptFailure(lines, 'E1004:', 2)
@@ -277,11 +279,11 @@ enddef
func Test_expr2_fails()
let msg = "White space required before and after '||'"
- call CheckDefFailure(["let x = 1||2"], msg, 1)
- call CheckDefFailure(["let x = 1 ||2"], msg, 1)
- call CheckDefFailure(["let x = 1|| 2"], msg, 1)
+ call CheckDefFailure(["var x = 1||2"], msg, 1)
+ call CheckDefFailure(["var x = 1 ||2"], msg, 1)
+ call CheckDefFailure(["var x = 1|| 2"], msg, 1)
- call CheckDefFailure(["let x = 1 || xxx"], 'E1001:', 1)
+ call CheckDefFailure(["var x = 1 || xxx"], 'E1001:', 1)
endfunc
" test &&
@@ -320,9 +322,9 @@ enddef
def Test_expr3_vimscript()
# check line continuation
- let lines =<< trim END
+ var lines =<< trim END
vim9script
- let var = 0
+ var var = 0
&& 1
assert_equal(0, var)
END
@@ -330,7 +332,7 @@ def Test_expr3_vimscript()
lines =<< trim END
vim9script
- let var = v:true
+ var var = v:true
&& v:true
&& v:true
assert_equal(v:true, var)
@@ -339,7 +341,7 @@ def Test_expr3_vimscript()
lines =<< trim END
vim9script
- let var = v:true &&
+ var var = v:true &&
v:true &&
v:true
assert_equal(v:true, var)
@@ -349,17 +351,17 @@ def Test_expr3_vimscript()
# check white space
lines =<< trim END
vim9script
- let var = v:true&&v:true
+ var var = v:true&&v:true
END
CheckScriptFailure(lines, 'E1004:', 2)
lines =<< trim END
vim9script
- let var = v:true &&v:true
+ var var = v:true &&v:true
END
CheckScriptFailure(lines, 'E1004:', 2)
lines =<< trim END
vim9script
- let var = v:true&& v:true
+ var var = v:true&& v:true
END
CheckScriptFailure(lines, 'E1004:', 2)
@@ -402,9 +404,9 @@ enddef
func Test_expr3_fails()
let msg = "White space required before and after '&&'"
- call CheckDefFailure(["let x = 1&&2"], msg, 1)
- call CheckDefFailure(["let x = 1 &&2"], msg, 1)
- call CheckDefFailure(["let x = 1&& 2"], msg, 1)
+ call CheckDefFailure(["var x = 1&&2"], msg, 1)
+ call CheckDefFailure(["var x = 1 &&2"], msg, 1)
+ call CheckDefFailure(["var x = 1&& 2"], msg, 1)
endfunc
" global variables to use for tests with the "any" type
@@ -425,8 +427,8 @@ let adict = #{aaa: 2, bbb: 8}
" test == comperator
def Test_expr4_equal()
- let trueVar = true
- let falseVar = false
+ var trueVar = true
+ var falseVar = false
assert_equal(true, true == true)
assert_equal(false, true ==
false)
@@ -441,8 +443,8 @@ def Test_expr4_equal()
assert_equal(true, g:anone == v:none)
assert_equal(false, v:none == g:anull)
- let nr0 = 0
- let nr61 = 61
+ var nr0 = 0
+ var nr61 = 61
assert_equal(false, 2 == 0)
assert_equal(false, 2 == nr0)
assert_equal(true, 61 == 61)
@@ -451,7 +453,7 @@ def Test_expr4_equal()
assert_equal(false, 61 == g:anint)
if has('float')
- let ff = 0.3
+ var ff = 0.3
assert_equal(true, ff == 0.3)
assert_equal(false, 0.4 == ff)
assert_equal(true, 0.1 == g:afloat)
@@ -480,10 +482,10 @@ def Test_expr4_equal()
assert_equal(false, 'abc' ==# 'ABC')
set noignorecase
- CheckDefFailure(["let x = 'a' == xxx"], 'E1001:', 1)
- CheckDefExecFailure(['let items: any', 'eval 1', 'eval 2', 'if items == []', 'endif'], 'E691:', 4)
+ CheckDefFailure(["var x = 'a' == xxx"], 'E1001:', 1)
+ CheckDefExecFailure(['var items: any', 'eval 1', 'eval 2', 'if items == []', 'endif'], 'E691:', 4)
- let bb = 0z3f
+ var bb = 0z3f
assert_equal(true, 0z3f == bb)
assert_equal(false, bb == 0z4f)
assert_equal(true, g:ablob == 0z01ab)
@@ -510,8 +512,8 @@ def Test_expr4_equal()
assert_equal(false, function('g:Test_expr4_equal', [123]) == function('g:Test_expr4_is', [123]))
assert_equal(false, function('g:Test_expr4_equal', [123]) == function('g:Test_expr4_equal', [999]))
- let OneFunc: func
- let TwoFunc: func
+ var OneFunc: func
+ var TwoFunc: func
OneFunc = function('len')
TwoFunc = function('len')
assert_equal(true, OneFunc('abc') == TwoFunc('123'))
@@ -519,8 +521,8 @@ enddef
" test != comperator
def Test_expr4_notequal()
- let trueVar = true
- let falseVar = false
+ var trueVar = true
+ var falseVar = false
assert_equal(false, true != true)
assert_equal(true, true !=
false)
@@ -535,8 +537,8 @@ def Test_expr4_notequal()
assert_equal(false, g:anone != v:none)
assert_equal(true, v:none != g:anull)
- let nr55 = 55
- let nr0 = 55
+ var nr55 = 55
+ var nr0 = 55
assert_equal(true, 2 != 0)
assert_equal(true, 2 != nr0)
assert_equal(false, 55 != 55)
@@ -545,7 +547,7 @@ def Test_expr4_notequal()
assert_equal(true, 61 != g:anint)
if has('float')
- let ff = 0.3
+ var ff = 0.3
assert_equal(false, 0.3 != ff)
assert_equal(true, 0.4 != ff)
assert_equal(false, 0.1 != g:afloat)
@@ -569,7 +571,7 @@ def Test_expr4_notequal()
assert_equal(true, 'abc' != 'ABC')
set noignorecase
- let bb = 0z3f
+ var bb = 0z3f
assert_equal(false, 0z3f != bb)
assert_equal(true, bb != 0z4f)
assert_equal(false, g:ablob != 0z01ab)
@@ -604,7 +606,7 @@ def Test_expr4_greater()
1)
assert_false(2 > 2)
assert_false(2 > 3)
- let nr2 = 2
+ var nr2 = 2
assert_true(nr2 > 0)
assert_true(nr2 >
1)
@@ -612,7 +614,7 @@ def Test_expr4_greater()
assert_false(nr2
> 3)
if has('float')
- let ff = 2.0
+ var ff = 2.0
assert_true(ff > 0.0)
assert_true(ff > 1.0)
assert_false(ff > 2.0)
@@ -626,12 +628,12 @@ def Test_expr4_greaterequal()
assert_true(2 >=
2)
assert_false(2 >= 3)
- let nr2 = 2
+ var nr2 = 2
assert_true(nr2 >= 0)
assert_true(nr2 >= 2)
assert_false(nr2 >= 3)
if has('float')
- let ff = 2.0
+ var ff = 2.0
assert_true(ff >= 0.0)
assert_true(ff >= 2.0)
assert_false(ff >= 3.0)
@@ -645,12 +647,12 @@ def Test_expr4_smaller()
2)
assert_true(2
< 3)
- let nr2 = 2
+ var nr2 = 2
assert_false(nr2 < 0)
assert_false(nr2 < 2)
assert_true(nr2 < 3)
if has('float')
- let ff = 2.0
+ var ff = 2.0
assert_false(ff < 0.0)
assert_false(ff < 2.0)
assert_true(ff < 3.0)
@@ -665,13 +667,13 @@ def Test_expr4_smallerequal()
assert_true(2
<= 2)
assert_true(2 <= 3)
- let nr2 = 2
+ var nr2 = 2
assert_false(nr2 <= 0)
assert_false(nr2 <= 1)
assert_true(nr2 <= 2)
assert_true(nr2 <= 3)
if has('float')
- let ff = 2.0
+ var ff = 2.0
assert_false(ff <= 0.0)
assert_false(ff <= 1.0)
assert_true(ff <= 2.0)
@@ -699,44 +701,44 @@ enddef
" test is comperator
def Test_expr4_is()
- let mylist = [2]
+ var mylist = [2]
assert_false(mylist is [2])
- let other = mylist
+ var other = mylist
assert_true(mylist is
other)
- let myblob = 0z1234
+ var myblob = 0z1234
assert_false(myblob
is 0z1234)
- let otherblob = myblob
+ var otherblob = myblob
assert_true(myblob is otherblob)
enddef
" test isnot comperator
def Test_expr4_isnot()
- let mylist = [2]
+ var mylist = [2]
assert_true('2' isnot '0')
assert_true(mylist isnot [2])
- let other = mylist
+ var other = mylist
assert_false(mylist isnot
other)
- let myblob = 0z1234
+ var myblob = 0z1234
assert_true(myblob
isnot 0z1234)
- let otherblob = myblob
+ var otherblob = myblob
assert_false(myblob isnot otherblob)
enddef
def RetVoid()
- let x = 1
+ var x = 1
enddef
def Test_expr4_vim9script()
# check line continuation
- let lines =<< trim END
+ var lines =<< trim END
vim9script
- let var = 0
+ var var = 0
< 1
assert_equal(true, var)
END
@@ -744,7 +746,7 @@ def Test_expr4_vim9script()
lines =<< trim END
vim9script
- let var = 123
+ var var = 123
!= 123
assert_equal(false, var)
END
@@ -752,7 +754,7 @@ def Test_expr4_vim9script()
lines =<< trim END
vim9script
- let var = 123 ==
+ var var = 123 ==
123
assert_equal(true, var)
END
@@ -760,19 +762,19 @@ def Test_expr4_vim9script()
lines =<< trim END
vim9script
- let list = [1, 2, 3]
- let var = list
+ var list = [1, 2, 3]
+ var name = list
is list
- assert_equal(true, var)
+ assert_equal(true, name)
END
CheckScriptSuccess(lines)
lines =<< trim END
vim9script
- let myblob = 0z1234
- let var = myblob
+ var myblob = 0z1234
+ var name = myblob
isnot 0z11
- assert_equal(true, var)
+ assert_equal(true, name)
END
CheckScriptSuccess(lines)
@@ -854,7 +856,7 @@ def Test_expr4_vim9script()
lines =<< trim END
vim9script
- let line = 'abc'
+ var line = 'abc'
echo line[1] =~ '\w'
END
CheckScriptSuccess(lines)
@@ -862,71 +864,71 @@ enddef
func Test_expr4_fails()
let msg = "White space required before and after '>'"
- call CheckDefFailure(["let x = 1>2"], msg, 1)
- call CheckDefFailure(["let x = 1 >2"], msg, 1)
- call CheckDefFailure(["let x = 1> 2"], msg, 1)
+ call CheckDefFailure(["var x = 1>2"], msg, 1)
+ call CheckDefFailure(["var x = 1 >2"], msg, 1)
+ call CheckDefFailure(["var x = 1> 2"], msg, 1)
let msg = "White space required before and after '=='"
- call CheckDefFailure(["let x = 1==2"], msg, 1)
- call CheckDefFailure(["let x = 1 ==2"], msg, 1)
- call CheckDefFailure(["let x = 1== 2"], msg, 1)
+ call CheckDefFailure(["var x = 1==2"], msg, 1)
+ call CheckDefFailure(["var x = 1 ==2"], msg, 1)
+ call CheckDefFailure(["var x = 1== 2"], msg, 1)
let msg = "White space required before and after 'is'"
- call CheckDefFailure(["let x = '1'is'2'"], msg, 1)
- call CheckDefFailure(["let x = '1' is'2'"], msg, 1)
- call CheckDefFailure(["let x = '1'is '2'"], msg, 1)
+ call CheckDefFailure(["var x = '1'is'2'"], msg, 1)
+ call CheckDefFailure(["var x = '1' is'2'"], msg, 1)
+ call CheckDefFailure(["var x = '1'is '2'"], msg, 1)
let msg = "White space required before and after 'isnot'"
- call CheckDefFailure(["let x = '1'isnot'2'"], msg, 1)
- call CheckDefFailure(["let x = '1' isnot'2'"], msg, 1)
- call CheckDefFailure(["let x = '1'isnot '2'"], msg, 1)
-
- call CheckDefFailure(["let x = 1 is# 2"], 'E15:', 1)
- call CheckDefFailure(["let x = 1 is? 2"], 'E15:', 1)
- call CheckDefFailure(["let x = 1 isnot# 2"], 'E15:', 1)
- call CheckDefFailure(["let x = 1 isnot? 2"], 'E15:', 1)
-
- call CheckDefFailure(["let x = 1 == '2'"], 'Cannot compare number with string', 1)
- call CheckDefFailure(["let x = '1' == 2"], 'Cannot compare string with number', 1)
- call CheckDefFailure(["let x = 1 == RetVoid()"], 'Cannot compare number with void', 1)
- call CheckDefFailure(["let x = RetVoid() == 1"], 'Cannot compare void with number', 1)
-
- call CheckDefFailure(["let x = true > false"], 'Cannot compare bool with bool', 1)
- call CheckDefFailure(["let x = true >= false"], 'Cannot compare bool with bool', 1)
- call CheckDefFailure(["let x = true < false"], 'Cannot compare bool with bool', 1)
- call CheckDefFailure(["let x = true <= false"], 'Cannot compare bool with bool', 1)
- call CheckDefFailure(["let x = true =~ false"], 'Cannot compare bool with bool', 1)
- call CheckDefFailure(["let x = true !~ false"], 'Cannot compare bool with bool', 1)
- call CheckDefFailure(["let x = true is false"], 'Cannot use "is" with bool', 1)
- call CheckDefFailure(["let x = true isnot false"], 'Cannot use "isnot" with bool', 1)
-
- call CheckDefFailure(["let x = v:none is v:null"], 'Cannot use "is" with special', 1)
- call CheckDefFailure(["let x = v:none isnot v:null"], 'Cannot use "isnot" with special', 1)
- call CheckDefFailure(["let x = 123 is 123"], 'Cannot use "is" with number', 1)
- call CheckDefFailure(["let x = 123 isnot 123"], 'Cannot use "isnot" with number', 1)
+ call CheckDefFailure(["var x = '1'isnot'2'"], msg, 1)
+ call CheckDefFailure(["var x = '1' isnot'2'"], msg, 1)
+ call CheckDefFailure(["var x = '1'isnot '2'"], msg, 1)
+
+ call CheckDefFailure(["var x = 1 is# 2"], 'E15:', 1)
+ call CheckDefFailure(["var x = 1 is? 2"], 'E15:', 1)
+ call CheckDefFailure(["var x = 1 isnot# 2"], 'E15:', 1)
+ call CheckDefFailure(["var x = 1 isnot? 2"], 'E15:', 1)
+
+ call CheckDefFailure(["var x = 1 == '2'"], 'Cannot compare number with string', 1)
+ call CheckDefFailure(["var x = '1' == 2"], 'Cannot compare string with number', 1)
+ call CheckDefFailure(["var x = 1 == RetVoid()"], 'Cannot compare number with void', 1)
+ call CheckDefFailure(["var x = RetVoid() == 1"], 'Cannot compare void with number', 1)
+
+ call CheckDefFailure(["var x = true > false"], 'Cannot compare bool with bool', 1)
+ call CheckDefFailure(["var x = true >= false"], 'Cannot compare bool with bool', 1)
+ call CheckDefFailure(["var x = true < false"], 'Cannot compare bool with bool', 1)
+ call CheckDefFailure(["var x = true <= false"], 'Cannot compare bool with bool', 1)
+ call CheckDefFailure(["var x = true =~ false"], 'Cannot compare bool with bool', 1)
+ call CheckDefFailure(["var x = true !~ false"], 'Cannot compare bool with bool', 1)
+ call CheckDefFailure(["var x = true is false"], 'Cannot use "is" with bool', 1)
+ call CheckDefFailure(["var x = true isnot false"], 'Cannot use "isnot" with bool', 1)
+
+ call CheckDefFailure(["var x = v:none is v:null"], 'Cannot use "is" with special', 1)
+ call CheckDefFailure(["var x = v:none isnot v:null"], 'Cannot use "isnot" with special', 1)
+ call CheckDefFailure(["var x = 123 is 123"], 'Cannot use "is" with number', 1)
+ call CheckDefFailure(["var x = 123 isnot 123"], 'Cannot use "isnot" with number', 1)
if has('float')
- call CheckDefFailure(["let x = 1.3 is 1.3"], 'Cannot use "is" with float', 1)
- call CheckDefFailure(["let x = 1.3 isnot 1.3"], 'Cannot use "isnot" with float', 1)
+ call CheckDefFailure(["var x = 1.3 is 1.3"], 'Cannot use "is" with float', 1)
+ call CheckDefFailure(["var x = 1.3 isnot 1.3"], 'Cannot use "isnot" with float', 1)
endif
- call CheckDefFailure(["let x = 0za1 > 0z34"], 'Cannot compare blob with blob', 1)
- call CheckDefFailure(["let x = 0za1 >= 0z34"], 'Cannot compare blob with blob', 1)
- call CheckDefFailure(["let x = 0za1 < 0z34"], 'Cannot compare blob with blob', 1)
- call CheckDefFailure(["let x = 0za1 <= 0z34"], 'Cannot compare blob with blob', 1)
- call CheckDefFailure(["let x = 0za1 =~ 0z34"], 'Cannot compare blob with blob', 1)
- call CheckDefFailure(["let x = 0za1 !~ 0z34"], 'Cannot compare blob with blob', 1)
-
- call CheckDefFailure(["let x = [13] > [88]"], 'Cannot compare list with list', 1)
- call CheckDefFailure(["let x = [13] >= [88]"], 'Cannot compare list with list', 1)
- call CheckDefFailure(["let x = [13] < [88]"], 'Cannot compare list with list', 1)
- call CheckDefFailure(["let x = [13] <= [88]"], 'Cannot compare list with list', 1)
- call CheckDefFailure(["let x = [13] =~ [88]"], 'Cannot compare list with list', 1)
- call CheckDefFailure(["let x = [13] !~ [88]"], 'Cannot compare list with list', 1)
-
- call CheckDefFailure(['let j: job', 'let chan: channel', 'let r = j == chan'], 'Cannot compare job with channel', 3)
- call CheckDefFailure(['let j: job', 'let x: list<any>', 'let r = j == x'], 'Cannot compare job with list', 3)
- call CheckDefFailure(['let j: job', 'let Xx: func', 'let r = j == Xx'], 'Cannot compare job with func', 3)
- call CheckDefFailure(['let j: job', 'let Xx: func', 'let r = j == Xx'], 'Cannot compare job with func', 3)
+ call CheckDefFailure(["var x = 0za1 > 0z34"], 'Cannot compare blob with blob', 1)
+ call CheckDefFailure(["var x = 0za1 >= 0z34"], 'Cannot compare blob with blob', 1)
+ call CheckDefFailure(["var x = 0za1 < 0z34"], 'Cannot compare blob with blob', 1)
+ call CheckDefFailure(["var x = 0za1 <= 0z34"], 'Cannot compare blob with blob', 1)
+ call CheckDefFailure(["var x = 0za1 =~ 0z34"], 'Cannot compare blob with blob', 1)
+ call CheckDefFailure(["var x = 0za1 !~ 0z34"], 'Cannot compare blob with blob', 1)
+
+ call CheckDefFailure(["var x = [13] > [88]"], 'Cannot compare list with list', 1)
+ call CheckDefFailure(["var x = [13] >= [88]"], 'Cannot compare list with list', 1)
+ call CheckDefFailure(["var x = [13] < [88]"], 'Cannot compare list with list', 1)
+ call CheckDefFailure(["var x = [13] <= [88]"], 'Cannot compare list with list', 1)
+ call CheckDefFailure(["var x = [13] =~ [88]"], 'Cannot compare list with list', 1)
+ call CheckDefFailure(["var x = [13] !~ [88]"], 'Cannot compare list with list', 1)
+
+ call CheckDefFailure(['var j: job', 'var chan: channel', 'var r = j == chan'], 'Cannot compare job with channel', 3)
+ call CheckDefFailure(['var j: job', 'var x: list<any>', 'var r = j == x'], 'Cannot compare job with list', 3)
+ call CheckDefFailure(['var j: job', 'var Xx: func', 'var r = j == Xx'], 'Cannot compare job with func', 3)
+ call CheckDefFailure(['var j: job', 'var Xx: func', 'var r = j == Xx'], 'Cannot compare job with func', 3)
endfunc
" test addition, subtraction, concatenation
@@ -970,7 +972,7 @@ def Test_expr5()
assert_equal(0z01ab01ab, g:ablob + g:ablob)
# concatenate non-constant to constant
- let save_path = &path
+ var save_path = &path
&path = 'b'
assert_equal('ab', 'a' .. &path)
&path = save_path
@@ -984,9 +986,9 @@ enddef
def Test_expr5_vim9script()
# check line continuation
- let lines =<< trim END
+ var lines =<< trim END
vim9script
- let var = 11
+ var var = 11
+ 77
- 22
assert_equal(66, var)
@@ -995,7 +997,7 @@ def Test_expr5_vim9script()
lines =<< trim END
vim9script
- let var = 11 +
+ var var = 11 +
77 -
22
assert_equal(66, var)
@@ -1004,7 +1006,7 @@ def Test_expr5_vim9script()
lines =<< trim END
vim9script
- let var = 'one'
+ var var = 'one'
.. 'two'
assert_equal('onetwo', var)
END
@@ -1112,7 +1114,7 @@ def Test_expr5_vim9script_channel()
if !has('channel')
MissingFeature 'float'
else
- let lines =<< trim END
+ var lines =<< trim END
vim9script
echo 'a' .. test_null_job()
END
@@ -1152,40 +1154,40 @@ enddef
func Test_expr5_fails()
let msg = "White space required before and after '+'"
- call CheckDefFailure(["let x = 1+2"], msg, 1)
- call CheckDefFailure(["let x = 1 +2"], msg, 1)
- call CheckDefFailure(["let x = 1+ 2"], msg, 1)
+ call CheckDefFailure(["var x = 1+2"], msg, 1)
+ call CheckDefFailure(["var x = 1 +2"], msg, 1)
+ call CheckDefFailure(["var x = 1+ 2"], msg, 1)
let msg = "White space required before and after '-'"
- call CheckDefFailure(["let x = 1-2"], msg, 1)
- call CheckDefFailure(["let x = 1 -2"], msg, 1)
- call CheckDefFailure(["let x = 1- 2"], msg, 1)
+ call CheckDefFailure(["var x = 1-2"], msg, 1)
+ call CheckDefFailure(["var x = 1 -2"], msg, 1)
+ call CheckDefFailure(["var x = 1- 2"], msg, 1)
let msg = "White space required before and after '..'"
- call CheckDefFailure(["let x = '1'..'2'"], msg, 1)
- call CheckDefFailure(["let x = '1' ..'2'"], msg, 1)
- call CheckDefFailure(["let x = '1'.. '2'"], msg, 1)
-
- call CheckDefFailure(["let x = 0z1122 + 33"], 'E1051', 1)
- call CheckDefFailure(["let x = 0z1122 + [3]"], 'E1051', 1)
- call CheckDefFailure(["let x = 0z1122 + 'asd'"], 'E1051', 1)
- call CheckDefFailure(["let x = 33 + 0z1122"], 'E1051', 1)
- call CheckDefFailure(["let x = [3] + 0z1122"], 'E1051', 1)
- call CheckDefFailure(["let x = 'asdf' + 0z1122"], 'E1051', 1)
- call CheckDefFailure(["let x = 6 + xxx"], 'E1001', 1)
-
- call CheckDefFailure(["let x = 'a' .. [1]"], 'E1105', 1)
- call CheckDefFailure(["let x = 'a' .. #{a: 1}"], 'E1105', 1)
- call CheckDefFailure(["let x = 'a' .. test_void()"], 'E1105', 1)
- call CheckDefFailure(["let x = 'a' .. 0z32"], 'E1105', 1)
- call CheckDefFailure(["let x = 'a' .. function('len')"], 'E1105', 1)
- call CheckDefFailure(["let x = 'a' .. function('len', ['a'])"], 'E1105', 1)
+ call CheckDefFailure(["var x = '1'..'2'"], msg, 1)
+ call CheckDefFailure(["var x = '1' ..'2'"], msg, 1)
+ call CheckDefFailure(["var x = '1'.. '2'"], msg, 1)
+
+ call CheckDefFailure(["var x = 0z1122 + 33"], 'E1051', 1)
+ call CheckDefFailure(["var x = 0z1122 + [3]"], 'E1051', 1)
+ call CheckDefFailure(["var x = 0z1122 + 'asd'"], 'E1051', 1)
+ call CheckDefFailure(["var x = 33 + 0z1122"], 'E1051', 1)
+ call CheckDefFailure(["var x = [3] + 0z1122"], 'E1051', 1)
+ call CheckDefFailure(["var x = 'asdf' + 0z1122"], 'E1051', 1)
+ call CheckDefFailure(["var x = 6 + xxx"], 'E1001', 1)
+
+ call CheckDefFailure(["var x = 'a' .. [1]"], 'E1105', 1)
+ call CheckDefFailure(["var x = 'a' .. #{a: 1}"], 'E1105', 1)
+ call CheckDefFailure(["var x = 'a' .. test_void()"], 'E1105', 1)
+ call CheckDefFailure(["var x = 'a' .. 0z32"], 'E1105', 1)
+ call CheckDefFailure(["var x = 'a' .. function('len')"], 'E1105', 1)
+ call CheckDefFailure(["var x = 'a' .. function('len', ['a'])"], 'E1105', 1)
endfunc
func Test_expr5_fails_channel()
CheckFeature channel
- call CheckDefFailure(["let x = 'a' .. test_null_job()"], 'E1105', 1)
- call CheckDefFailure(["let x = 'a' .. test_null_channel()"], 'E1105', 1)
+ call CheckDefFailure(["var x = 'a' .. test_null_job()"], 'E1105', 1)
+ call CheckDefFailure(["var x = 'a' .. test_null_channel()"], 'E1105', 1)
endfunc
" test multiply, divide, modulo
@@ -1213,27 +1215,27 @@ def Test_expr6()
assert_equal(4, 6 * 4 / 6)
- let x = [2]
- let y = [3]
+ var x = [2]
+ var y = [3]
assert_equal(5, x[0] + y[0])
assert_equal(6, x[0] * y[0])
if has('float')
- let xf = [2.0]
- let yf = [3.0]
+ var xf = [2.0]
+ var yf = [3.0]
assert_equal(5.0, xf[0]
+ yf[0])
assert_equal(6.0, xf[0]
* yf[0])
endif
- CheckDefFailure(["let x = 6 * xxx"], 'E1001', 1)
+ CheckDefFailure(["var x = 6 * xxx"], 'E1001', 1)
enddef
def Test_expr6_vim9script()
# check line continuation
- let lines =<< trim END
+ var lines =<< trim END
vim9script
- let var = 11
+ var var = 11
* 22
/ 3
assert_equal(80, var)
@@ -1242,7 +1244,7 @@ def Test_expr6_vim9script()
lines =<< trim END
vim9script
- let var = 25
+ var var = 25
% 10
assert_equal(5, var)
END
@@ -1250,7 +1252,7 @@ def Test_expr6_vim9script()
lines =<< trim END
vim9script
- let var = 11 *
+ var var = 11 *
22 /
3
assert_equal(80, var)
@@ -1307,45 +1309,45 @@ enddef
func Test_expr6_fails()
let msg = "White space required before and after '*'"
- call CheckDefFailure(["let x = 1*2"], msg, 1)
- call CheckDefFailure(["let x = 1 *2"], msg, 1)
- call CheckDefFailure(["let x = 1* 2"], msg, 1)
+ call CheckDefFailure(["var x = 1*2"], msg, 1)
+ call CheckDefFailure(["var x = 1 *2"], msg, 1)
+ call CheckDefFailure(["var x = 1* 2"], msg, 1)
let msg = "White space required before and after '/'"
- call CheckDefFailure(["let x = 1/2"], msg, 1)
- call CheckDefFailure(["let x = 1 /2"], msg, 1)
- call CheckDefFailure(["let x = 1/ 2"], msg, 1)
+ call CheckDefFailure(["var x = 1/2"], msg, 1)
+ call CheckDefFailure(["var x = 1 /2"], msg, 1)
+ call CheckDefFailure(["var x = 1/ 2"], msg, 1)
let msg = "White space required before and after '%'"
- call CheckDefFailure(["let x = 1%2"], msg, 1)
- call CheckDefFailure(["let x = 1 %2"], msg, 1)
- call CheckDefFailure(["let x = 1% 2"], msg, 1)
+ call CheckDefFailure(["var x = 1%2"], msg, 1)
+ call CheckDefFailure(["var x = 1 %2"], msg, 1)
+ call CheckDefFailure(["var x = 1% 2"], msg, 1)
- call CheckDefFailure(["let x = '1' * '2'"], 'E1036:', 1)
- call CheckDefFailure(["let x = '1' / '2'"], 'E1036:', 1)
- call CheckDefFailure(["let x = '1' % '2'"], 'E1035:', 1)
+ call CheckDefFailure(["var x = '1' * '2'"], 'E1036:', 1)
+ call CheckDefFailure(["var x = '1' / '2'"], 'E1036:', 1)
+ call CheckDefFailure(["var x = '1' % '2'"], 'E1035:', 1)
- call CheckDefFailure(["let x = 0z01 * 0z12"], 'E1036:', 1)
- call CheckDefFailure(["let x = 0z01 / 0z12"], 'E1036:', 1)
- call CheckDefFailure(["let x = 0z01 % 0z12"], 'E1035:', 1)
+ call CheckDefFailure(["var x = 0z01 * 0z12"], 'E1036:', 1)
+ call CheckDefFailure(["var x = 0z01 / 0z12"], 'E1036:', 1)
+ call CheckDefFailure(["var x = 0z01 % 0z12"], 'E1035:', 1)
- call CheckDefFailure(["let x = [1] * [2]"], 'E1036:', 1)
- call CheckDefFailure(["let x = [1] / [2]"], 'E1036:', 1)
- call CheckDefFailure(["let x = [1] % [2]"], 'E1035:', 1)
+ call CheckDefFailure(["var x = [1] * [2]"], 'E1036:', 1)
+ call CheckDefFailure(["var x = [1] / [2]"], 'E1036:', 1)
+ call CheckDefFailure(["var x = [1] % [2]"], 'E1035:', 1)
- call CheckDefFailure(["let x = #{one: 1} * #{two: 2}"], 'E1036:', 1)
- call CheckDefFailure(["let x = #{one: 1} / #{two: 2}"], 'E1036:', 1)
- call CheckDefFailure(["let x = #{one: 1} % #{two: 2}"], 'E1035:', 1)
+ call CheckDefFailure(["var x = #{one: 1} * #{two: 2}"], 'E1036:', 1)
+ call CheckDefFailure(["var x = #{one: 1} / #{two: 2}"], 'E1036:', 1)
+ call CheckDefFailure(["var x = #{one: 1} % #{two: 2}"], 'E1035:', 1)
- call CheckDefFailure(["let x = 0xff[1]"], 'E1107:', 1)
+ call CheckDefFailure(["var x = 0xff[1]"], 'E1107:', 1)
if has('float')
- call CheckDefFailure(["let x = 0.7[1]"], 'E1107:', 1)
+ call CheckDefFailure(["var x = 0.7[1]"], 'E1107:', 1)
endif
endfunc
func Test_expr6_float_fails()
CheckFeature float
- call CheckDefFailure(["let x = 1.0 % 2"], 'E1035:', 1)
+ call CheckDefFailure(["var x = 1.0 % 2"], 'E1035:', 1)
endfunc
" define here to use old style parsing
@@ -1378,14 +1380,14 @@ let $TESTVAR = 'testvar'
" type casts
def Test_expr7t()
- let ls: list<string> = ['a', <string>g:string_empty]
- let ln: list<number> = [<number>g:anint, <number>g:thefour]
- let nr = <number>234
+ var ls: list<string> = ['a', <string>g:string_empty]
+ var ln: list<number> = [<number>g:anint, <number>g:thefour]
+ var nr = <number>234
assert_equal(234, nr)
- CheckDefFailure(["let x = <nr>123"], 'E1010:', 1)
- CheckDefFailure(["let x = <number >123"], 'E1068:', 1)
- CheckDefFailure(["let x = <number 123"], 'E1104:', 1)
+ CheckDefFailure(["var x = <nr>123"], 'E1010:', 1)
+ CheckDefFailure(["var x = <number >123"], 'E1068:', 1)
+ CheckDefFailure(["var x = <number 123"], 'E1104:', 1)
enddef
" test low level expression
@@ -1417,7 +1419,7 @@ def Test_expr7_blob()
assert_equal(g:blob_one, 0z01)
assert_equal(g:blob_long, 0z0102.0304)
- CheckDefFailure(["let x = 0z123"], 'E973:', 1)
+ CheckDefFailure(["var x = 0z123"], 'E973:', 1)
enddef
def Test_expr7_string()
@@ -1430,18 +1432,18 @@ def Test_expr7_string()
assert_equal(g:string_long, "abcdefghijklm")
assert_equal(g:string_special, "ab\ncd\ref\ekk")
- CheckDefFailure(['let x = "abc'], 'E114:', 1)
- CheckDefFailure(["let x = 'abc"], 'E115:', 1)
+ CheckDefFailure(['var x = "abc'], 'E114:', 1)
+ CheckDefFailure(["var x = 'abc"], 'E115:', 1)
enddef
def Test_expr7_vimvar()
- let old: list<string> = v:oldfiles
- let compl: dict<any> = v:completed_item
+ var old: list<string> = v:oldfiles
+ var compl: dict<any> = v:completed_item
- CheckDefFailure(["let old: list<number> = v:oldfiles"], 'E1012: Type mismatch; expected list<number> but got list<string>', 1)
+ CheckDefFailure(["var old: list<number> = v:oldfiles"], 'E1012: Type mismatch; expected list<number> but got list<string>', 1)
new
exec "normal! afoo fo\<C-N>\<Esc>"
- CheckDefExecFailure(["let old: dict<number> = v:completed_item"], 'E1012: Type mismatch; expected dict<number> but got dict<string>', 1)
+ CheckDefExecFailure(["var old: dict<number> = v:completed_item"], 'E1012: Type mismatch; expected dict<number> but got dict<string>', 1)
bwipe!
enddef
@@ -1472,10 +1474,10 @@ def Test_expr7_special()
enddef
def Test_expr7_special_vim9script()
- let lines =<< trim END
+ var lines =<< trim END
vim9script
- let t = true
- let f = false
+ var t = true
+ var f = false
assert_equal(v:true, true)
assert_equal(true, t)
assert_equal(v:false, false)
@@ -1497,15 +1499,15 @@ def Test_expr7_list()
assert_equal(g:list_empty, [])
assert_equal(g:list_empty, [ ])
- let numbers: list<number> = [1, 2, 3]
+ var numbers: list<number> = [1, 2, 3]
numbers = [1]
numbers = []
- let strings: list<string> = ['a', 'b', 'c']
+ var strings: list<string> = ['a', 'b', 'c']
strings = ['x']
strings = []
- let mixed: list<any> = [1, 'b', false,]
+ var mixed: list<any> = [1, 'b', false,]
assert_equal(g:list_mixed, mixed)
assert_equal('b', mixed[1])
@@ -1513,7 +1515,7 @@ def Test_expr7_list()
2] [3,
4]
- let llstring: list<list<string>> = [['text'], []]
+ var llstring: list<list<string>> = [['text'], []]
llstring = [[], ['text']]
llstring = [[], []]
@@ -1521,30 +1523,30 @@ def Test_expr7_list()
g:rangelist = range(3)
CheckDefExecFailure(["var x: list<string> = g:rangelist"], 'E1012: Type mismatch; expected list<string> but got list<number>', 1)
- CheckDefFailure(["let x = 1234[3]"], 'E1107:', 1)
- CheckDefExecFailure(["let x = g:anint[3]"], 'E1062:', 1)
+ CheckDefFailure(["var x = 1234[3]"], 'E1107:', 1)
+ CheckDefExecFailure(["var x = g:anint[3]"], 'E1062:', 1)
- CheckDefFailure(["let x = g:list_mixed[xxx]"], 'E1001:', 1)
+ CheckDefFailure(["var x = g:list_mixed[xxx]"], 'E1001:', 1)
- CheckDefFailure(["