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'],