summaryrefslogtreecommitdiff
path: root/src/testdir/test_vim9_func.vim
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2022-02-07 20:30:57 +0000
committerBram Moolenaar <Bram@vim.org>2022-02-07 20:30:57 +0000
commitf681cfb90b972cb347b3d707c87e48f8accd0e2a (patch)
treedec6119e3cede17c28e604dbabfc01ebfc491803 /src/testdir/test_vim9_func.vim
parent7aca5ca6763e50d2c23953b20e30fca7457c9abf (diff)
downloadvim-git-f681cfb90b972cb347b3d707c87e48f8accd0e2a.tar.gz
patch 8.2.4323: Vim9: nested function name can start with "_"v8.2.4323
Problem: Vim9: nested function name can start with "_". Solution: Use same rule for function name for nested functions. (closes #9713)
Diffstat (limited to 'src/testdir/test_vim9_func.vim')
-rw-r--r--src/testdir/test_vim9_func.vim28
1 files changed, 26 insertions, 2 deletions
diff --git a/src/testdir/test_vim9_func.vim b/src/testdir/test_vim9_func.vim
index 4ac4643e0..86b0763dc 100644
--- a/src/testdir/test_vim9_func.vim
+++ b/src/testdir/test_vim9_func.vim
@@ -679,6 +679,30 @@ def Test_nested_function()
assert_equal('ok', g:result)
unlet g:result
+ lines =<< trim END
+ vim9script
+ def Outer()
+ def _Inner()
+ echo 'bad'
+ enddef
+ Inner()
+ enddef
+ defcompile
+ END
+ v9.CheckScriptFailure(lines, 'E128:')
+
+ lines =<< trim END
+ vim9script
+ def Outer()
+ def g:inner()
+ echo 'bad'
+ enddef
+ Inner()
+ enddef
+ defcompile
+ END
+ v9.CheckScriptFailure(lines, 'E128:')
+
# nested function inside conditional
lines =<< trim END
vim9script
@@ -3135,11 +3159,11 @@ func Test_partial_call_fails()
def Iter(container: any): any
var idx = -1
var obj = {state: container}
- def g:__NextItem__(self: dict<any>): any
+ def g:NextItem__(self: dict<any>): any
++idx
return self.state[idx]
enddef
- obj.__next__ = function('g:__NextItem__', [obj])
+ obj.__next__ = function('g:NextItem__', [obj])
return obj
enddef