0
0
mirror of https://github.com/vim/vim.git synced 2025-10-03 05:14:07 -04:00

patch 8.2.0151: detecting a script was already sourced is unreliable

Problem:    Detecting a script was already sourced is unreliable.
Solution:   Do not use the inode number.
This commit is contained in:
Bram Moolenaar
2020-01-26 17:38:12 +01:00
parent 673660ab00
commit 978d170bdc
4 changed files with 13 additions and 39 deletions

View File

@@ -4,7 +4,7 @@ source check.vim
" Check that "lines" inside ":def" results in an "error" message.
func CheckDefFailure(lines, error)
call writefile(['def! Func()'] + a:lines + ['enddef'], 'Xdef')
call writefile(['def Func()'] + a:lines + ['enddef'], 'Xdef')
call assert_fails('so Xdef', a:error, a:lines)
call delete('Xdef')
endfunc
@@ -126,10 +126,10 @@ enddef
def Test_return_type_wrong()
" TODO: why is ! needed for Mac and FreeBSD?
CheckScriptFailure(['def! Func(): number', 'return "a"', 'enddef'], 'expected number but got string')
CheckScriptFailure(['def! Func(): string', 'return 1', 'enddef'], 'expected string but got number')
CheckScriptFailure(['def! Func(): void', 'return "a"', 'enddef'], 'expected void but got string')
CheckScriptFailure(['def! Func()', 'return "a"', 'enddef'], 'expected void but got string')
CheckScriptFailure(['def Func(): number', 'return "a"', 'enddef'], 'expected number but got string')
CheckScriptFailure(['def Func(): string', 'return 1', 'enddef'], 'expected string but got number')
CheckScriptFailure(['def Func(): void', 'return "a"', 'enddef'], 'expected void but got string')
CheckScriptFailure(['def Func()', 'return "a"', 'enddef'], 'expected void but got string')
enddef
def Test_try_catch()