Mercurial > vim
comparison src/testdir/test_vim9_assign.vim @ 28273:fff70771d4bb v8.2.4662
patch 8.2.4662: no error for using out of range list index
Commit: https://github.com/vim/vim/commit/22ebd172e48ba060c8a7bae3dbf6480b7596d937
Author: Bram Moolenaar <Bram@vim.org>
Date: Fri Apr 1 15:26:58 2022 +0100
patch 8.2.4662: no error for using out of range list index
Problem: No error for using out of range list index.
Solution: Check list index at script level like in compiled function.
(closes #10051)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Fri, 01 Apr 2022 16:30:03 +0200 |
parents | b96409b84eaf |
children | fabe722b24e9 |
comparison
equal
deleted
inserted
replaced
28272:bb583103b95b | 28273:fff70771d4bb |
---|---|
286 lines =<< trim END | 286 lines =<< trim END |
287 var s = '-' | 287 var s = '-' |
288 s ..= {a: 2} | 288 s ..= {a: 2} |
289 END | 289 END |
290 v9.CheckDefAndScriptFailure(lines, ['E1105: Cannot convert dict to string', 'E734: Wrong variable type for .='], 2) | 290 v9.CheckDefAndScriptFailure(lines, ['E1105: Cannot convert dict to string', 'E734: Wrong variable type for .='], 2) |
291 | |
292 lines =<< trim END | |
293 var ls: list<string> = [] | |
294 ls[-1] ..= 'foo' | |
295 END | |
296 v9.CheckDefExecAndScriptFailure(lines, 'E684: list index out of range: -1', 2) | |
291 enddef | 297 enddef |
292 | 298 |
293 def Test_assign_register() | 299 def Test_assign_register() |
294 var lines =<< trim END | 300 var lines =<< trim END |
295 @c = 'areg' | 301 @c = 'areg' |