Mercurial > vim
comparison src/testdir/test_vim9_assign.vim @ 27464:a14c4d3e3260 v8.2.4260
patch 8.2.4260: Vim9: can still use a global function without g:
Commit: https://github.com/vim/vim/commit/848faddb870f3ba4d84fcacd1cccb5cdbbfd9c41
Author: Bram Moolenaar <Bram@vim.org>
Date: Sun Jan 30 15:28:30 2022 +0000
patch 8.2.4260: Vim9: can still use a global function without g:
Problem: Vim9: can still use a global function without g: at the script
level.
Solution: Also check for g: at the script level. (issue #9637)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sun, 30 Jan 2022 16:30:04 +0100 |
parents | 4c16acb2525f |
children | f00a7a2bee21 |
comparison
equal
deleted
inserted
replaced
27463:c50f682d1183 | 27464:a14c4d3e3260 |
---|---|
73 v9.CheckDefFailure(['var lambda = () => "lambda"'], 'E704:') | 73 v9.CheckDefFailure(['var lambda = () => "lambda"'], 'E704:') |
74 v9.CheckScriptFailure(['var x = "x"'], 'E1124:') | 74 v9.CheckScriptFailure(['var x = "x"'], 'E1124:') |
75 | 75 |
76 # lower case name is OK for a list | 76 # lower case name is OK for a list |
77 var lambdaLines =<< trim END | 77 var lambdaLines =<< trim END |
78 var lambdaList: list<func> = [Test_syntax] | 78 var lambdaList: list<func> = [g:Test_syntax] |
79 lambdaList[0] = () => "lambda" | 79 lambdaList[0] = () => "lambda" |
80 END | 80 END |
81 v9.CheckDefAndScriptSuccess(lambdaLines) | 81 v9.CheckDefAndScriptSuccess(lambdaLines) |
82 | 82 |
83 var nr: number = 1234 | 83 var nr: number = 1234 |
888 return 'done' | 888 return 'done' |
889 enddef | 889 enddef |
890 | 890 |
891 def Test_assignment_partial() | 891 def Test_assignment_partial() |
892 var lines =<< trim END | 892 var lines =<< trim END |
893 var Partial: func(): string = function(PartFuncBool, [true]) | 893 var Partial: func(): string = function(g:PartFuncBool, [true]) |
894 assert_equal('done', Partial()) | 894 assert_equal('done', Partial()) |
895 END | 895 END |
896 v9.CheckDefAndScriptSuccess(lines) | 896 v9.CheckDefAndScriptSuccess(lines) |
897 | 897 |
898 lines =<< trim END | 898 lines =<< trim END |
1391 v9.CheckDefFailure(['var name: number = feedkeys("0")'], 'expected number but got void') | 1391 v9.CheckDefFailure(['var name: number = feedkeys("0")'], 'expected number but got void') |
1392 | 1392 |
1393 v9.CheckDefFailure(['var name: dict <number>'], 'E1068:') | 1393 v9.CheckDefFailure(['var name: dict <number>'], 'E1068:') |
1394 v9.CheckDefFailure(['var name: dict<number'], 'E1009:') | 1394 v9.CheckDefFailure(['var name: dict<number'], 'E1009:') |
1395 | 1395 |
1396 assert_fails('s/^/\=Mess()/n', 'E794:') | 1396 assert_fails('s/^/\=g:Mess()/n', 'E794:') |
1397 v9.CheckDefFailure(['var name: dict<number'], 'E1009:') | 1397 v9.CheckDefFailure(['var name: dict<number'], 'E1009:') |
1398 | 1398 |
1399 v9.CheckDefFailure(['w:foo: number = 10'], | 1399 v9.CheckDefFailure(['w:foo: number = 10'], |
1400 'E488: Trailing characters: : number = 1') | 1400 'E488: Trailing characters: : number = 1') |
1401 v9.CheckDefFailure(['t:foo: bool = true'], | 1401 v9.CheckDefFailure(['t:foo: bool = true'], |