patch 8.2.4257: Vim9: finding global function without g: prefix inconsistent
Problem: Vim9: finding global function without g: prefix but not finding
global variable is inconsistent.
Solution: Require using g: for a global function. Change the vim9.vim
script into a Vim9 script with exports. Fix that import in legacy
script does not work.
diff --git a/src/testdir/test_debugger.vim b/src/testdir/test_debugger.vim
index 0c4bc87..c05f4e1 100644
--- a/src/testdir/test_debugger.vim
+++ b/src/testdir/test_debugger.vim
@@ -360,16 +360,16 @@
writefile(lines, 'Xtest.vim')
# Start Vim in a terminal
- var buf = RunVimInTerminal('-S Xtest.vim', {wait_for_ruler: 0})
- call TermWait(buf)
+ var buf = g:RunVimInTerminal('-S Xtest.vim', {wait_for_ruler: 0})
+ call g:TermWait(buf)
# Despite the failure the functions are defined
- RunDbgCmd(buf, ':function g:EarlyFunc',
+ g:RunDbgCmd(buf, ':function g:EarlyFunc',
['function EarlyFunc()', 'endfunction'], {match: 'pattern'})
- RunDbgCmd(buf, ':function g:LaterFunc',
+ g:RunDbgCmd(buf, ':function g:LaterFunc',
['function LaterFunc()', 'endfunction'], {match: 'pattern'})
- call StopVimInTerminal(buf)
+ call g:StopVimInTerminal(buf)
call delete('Xtest.vim')
enddef
@@ -386,13 +386,13 @@
writefile(lines, 'Xtest.vim')
# Start Vim in a terminal
- var buf = RunVimInTerminal('-S Xtest.vim', {wait_for_ruler: 0})
- call TermWait(buf)
+ var buf = g:RunVimInTerminal('-S Xtest.vim', {wait_for_ruler: 0})
+ call g:TermWait(buf)
- RunDbgCmd(buf, ':call GetNum()',
+ g:RunDbgCmd(buf, ':call GetNum()',
['line 1: return 1 + 2 + 3'], {match: 'pattern'})
- call StopVimInTerminal(buf)
+ call g:StopVimInTerminal(buf)
call delete('Xtest.vim')
enddef