patch 8.2.1024: Vim9: no error for using "let g:var = val"
Problem: Vim9: no error for using "let g:var = val".
Solution: Add an error.
diff --git a/src/testdir/test_vim9_disassemble.vim b/src/testdir/test_vim9_disassemble.vim
index 557b90b..2862289 100644
--- a/src/testdir/test_vim9_disassemble.vim
+++ b/src/testdir/test_vim9_disassemble.vim
@@ -1190,7 +1190,7 @@
def FuncTwo(): string
return 'two'
enddef
- let g:res_FuncOne: string = execute('disass FuncOne')
+ g:res_FuncOne = execute('disass FuncOne')
END
writefile(lines, 'Xdisassemble')
source Xdisassemble
diff --git a/src/testdir/test_vim9_func.vim b/src/testdir/test_vim9_func.vim
index 499699c..6a9d4ba 100644
--- a/src/testdir/test_vim9_func.vim
+++ b/src/testdir/test_vim9_func.vim
@@ -323,7 +323,7 @@
str->MyFunc()
assert_equal('barfoo', var)
- let g:value = 'value'
+ g:value = 'value'
g:value->MyFunc()
assert_equal('value', var)
diff --git a/src/testdir/test_vim9_script.vim b/src/testdir/test_vim9_script.vim
index d1587a2..ec1fc87 100644
--- a/src/testdir/test_vim9_script.vim
+++ b/src/testdir/test_vim9_script.vim
@@ -1099,11 +1099,11 @@
g:glob = 2
if false
- execute('let g:glob = 3')
+ execute('g:glob = 3')
endif
assert_equal(2, g:glob)
if true
- execute('let g:glob = 3')
+ execute('g:glob = 3')
endif
assert_equal(3, g:glob)
@@ -1790,8 +1790,8 @@
enddef
def Test_vim9_comment_not_compiled()
- au TabEnter *.vim let g:entered = 1
- au TabEnter *.x let g:entered = 2
+ au TabEnter *.vim g:entered = 1
+ au TabEnter *.x g:entered = 2
edit test.vim
doautocmd TabEnter #comment
@@ -1811,7 +1811,7 @@
CheckScriptSuccess([
'vim9script',
- 'let g:var = 123',
+ 'g:var = 123',
'let w:var = 777',
'unlet g:var w:var # something',
])
@@ -1819,6 +1819,11 @@
CheckScriptFailure([
'vim9script',
'let g:var = 123',
+ ], 'E1016:')
+
+ CheckScriptFailure([
+ 'vim9script',
+ 'g:var = 123',
'unlet g:var# comment1',
], 'E108:')
@@ -1889,11 +1894,11 @@
def Test_finish()
let lines =<< trim END
vim9script
- let g:res = 'one'
+ g:res = 'one'
if v:false | finish | endif
- let g:res = 'two'
+ g:res = 'two'
finish
- let g:res = 'three'
+ g:res = 'three'
END
writefile(lines, 'Xfinished')
source Xfinished