patch 8.0.0343: b:changedtick can be unlocked
Problem: b:changedtick can be unlocked, even though it has no effect.
(Nikolai Pavlov)
Solution: Add a check and error E940. (closes #1496)
diff --git a/src/testdir/test_changedtick.vim b/src/testdir/test_changedtick.vim
index f273f0f..9aaba27 100644
--- a/src/testdir/test_changedtick.vim
+++ b/src/testdir/test_changedtick.vim
@@ -33,13 +33,19 @@
endfunc
func Test_changedtick_fixed()
- call assert_fails('let b:changedtick = 4', 'E46')
- call assert_fails('let b:["changedtick"] = 4', 'E46')
+ call assert_fails('let b:changedtick = 4', 'E46:')
+ call assert_fails('let b:["changedtick"] = 4', 'E46:')
- call assert_fails('unlet b:changedtick', 'E795')
- call assert_fails('unlet b:["changedtick"]', 'E46')
+ call assert_fails('lockvar b:changedtick', 'E940:')
+ call assert_fails('lockvar b:["changedtick"]', 'E46:')
+ call assert_fails('unlockvar b:changedtick', 'E940:')
+ call assert_fails('unlockvar b:["changedtick"]', 'E46:')
+ call assert_fails('unlet b:changedtick', 'E795:')
+ call assert_fails('unlet b:["changedtick"]', 'E46:')
let d = b:
- call assert_fails('unlet d["changedtick"]', 'E46')
+ call assert_fails('lockvar d["changedtick"]', 'E46:')
+ call assert_fails('unlockvar d["changedtick"]', 'E46:')
+ call assert_fails('unlet d["changedtick"]', 'E46:')
endfunc