patch 8.2.0754: Vim9: No test for forward declaration
Problem: Vim9: No test for forward declaration.
Solution: Add a test.
diff --git a/src/testdir/test_vim9_script.vim b/src/testdir/test_vim9_script.vim
index c528b80..6b6228e 100644
--- a/src/testdir/test_vim9_script.vim
+++ b/src/testdir/test_vim9_script.vim
@@ -1732,6 +1732,7 @@
END
writefile(lines, 'Xfinished')
source Xfinished
+ " GetValue() is not called during discovery phase
assert_equal(1, g:count)
unlet g:count
@@ -1752,6 +1753,28 @@
delete('Xfinished')
enddef
+def Test_forward_declaration()
+ let lines =<< trim END
+ vim9script
+ g:initVal = GetValue()
+ def GetValue(): string
+ return theVal
+ enddef
+ let theVal = 'something'
+ theVal = 'else'
+ g:laterVal = GetValue()
+ END
+ writefile(lines, 'Xforward')
+ source Xforward
+ assert_equal('something', g:initVal)
+ assert_equal('else', g:laterVal)
+
+ unlet g:initVal
+ unlet g:laterVal
+ delete('Xforward')
+enddef
+
+
" Keep this last, it messes up highlighting.
def Test_substitute_cmd()
new
diff --git a/src/version.c b/src/version.c
index ad56b7a..8ff5161 100644
--- a/src/version.c
+++ b/src/version.c
@@ -747,6 +747,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 754,
+/**/
753,
/**/
752,