mirror of
https://github.com/vim/vim.git
synced 2025-10-03 05:14:07 -04:00
patch 8.2.2145: Vim9: concatenating lists does not adjust type of result
Problem: Vim9: concatenating lists does not adjust type of result. Solution: When list member types differ use "any" member type. (closes #7473)
This commit is contained in:
@@ -1317,6 +1317,23 @@ func Test_expr5_fails_channel()
|
||||
call CheckDefFailure(["var x = 'a' .. test_null_channel()"], 'E1105:', 1)
|
||||
endfunc
|
||||
|
||||
def Test_expr5_list_add()
|
||||
# concatenating two lists with same member types is OK
|
||||
var d = {}
|
||||
for i in ['a'] + ['b']
|
||||
d = {[i]: 0}
|
||||
endfor
|
||||
|
||||
# concatenating two lists with different member types results in "any"
|
||||
var lines =<< trim END
|
||||
var d = {}
|
||||
for i in ['a'] + [0]
|
||||
d = {[i]: 0}
|
||||
endfor
|
||||
END
|
||||
CheckDefExecFailure(lines, 'E1012:')
|
||||
enddef
|
||||
|
||||
" test multiply, divide, modulo
|
||||
def Test_expr6()
|
||||
var lines =<< trim END
|
||||
|
Reference in New Issue
Block a user