0
0
mirror of https://github.com/vim/vim.git synced 2025-10-01 04:54:07 -04:00

patch 8.2.0465: Vim9: dead code and wrong return type

Problem:    Vim9: dead code and wrong return type.
Solution:   Remove dead code.  Fix return type.  Add more tests.
This commit is contained in:
Bram Moolenaar
2020-03-28 14:53:20 +01:00
parent 495282b6e7
commit 599c89c82f
3 changed files with 54 additions and 6 deletions

View File

@@ -112,6 +112,16 @@ func Test_assignment_failure()
call CheckDefFailure(['let var: dict <number>'], 'E1007:')
call CheckDefFailure(['let var: dict<number'], 'E1009:')
endfunc
func Test_wrong_type()
call CheckDefFailure(['let var: list<nothing>'], 'E1010:')
call CheckDefFailure(['let var: list<list<nothing>>'], 'E1010:')
call CheckDefFailure(['let var: dict<nothing>'], 'E1010:')
call CheckDefFailure(['let var: dict<dict<nothing>>'], 'E1010:')
call CheckDefFailure(['let var: dict<number'], 'E1009:')
call CheckDefFailure(['let var: dict<list<number>'], 'E1009:')
call CheckDefFailure(['let var: ally'], 'E1010:')
call CheckDefFailure(['let var: bram'], 'E1010:')
@@ -436,6 +446,37 @@ def Test_vim9_import_export()
source Ximport.vim
assert_equal(9883, g:imported)
let import_star_as_lines_no_dot =<< trim END
vim9script
import * as Export from './Xexport.vim'
def Func()
let dummy = 1
let imported = Export + dummy
enddef
END
writefile(import_star_as_lines_no_dot, 'Ximport.vim')
assert_fails('source Ximport.vim', 'E1060:')
let import_star_as_lines_dot_space =<< trim END
vim9script
import * as Export from './Xexport.vim'
def Func()
let imported = Export . exported
enddef
END
writefile(import_star_as_lines_dot_space, 'Ximport.vim')
assert_fails('source Ximport.vim', 'E1074:')
let import_star_as_lines_missing_name =<< trim END
vim9script
import * as Export from './Xexport.vim'
def Func()
let imported = Export.
enddef
END
writefile(import_star_as_lines_missing_name, 'Ximport.vim')
assert_fails('source Ximport.vim', 'E1048:')
let import_star_lines =<< trim END
vim9script
import * from './Xexport.vim'