comparison src/testdir/test_vim9_expr.vim @ 24958:21ec48d542a8 v8.2.3016

patch 8.2.3016: confusing error when expression is followed by comma Commit: https://github.com/vim/vim/commit/fae55a9cb0838e4c2e634e55a3468af4a75fbdf2 Author: Bram Moolenaar <Bram@vim.org> Date: Thu Jun 17 22:08:30 2021 +0200 patch 8.2.3016: confusing error when expression is followed by comma Problem: Confusing error when expression is followed by comma. Solution: Give a different error for trailing text. (closes https://github.com/vim/vim/issues/8395)
author Bram Moolenaar <Bram@vim.org>
date Thu, 17 Jun 2021 22:15:03 +0200
parents 345619f35112
children f4aa891a5ab8
comparison
equal deleted inserted replaced
24957:674d99f8705f 24958:21ec48d542a8
2338 CheckDefAndScriptFailure(["var x = {xxx: 1", "var y = 2"], 'E722:', 2) 2338 CheckDefAndScriptFailure(["var x = {xxx: 1", "var y = 2"], 'E722:', 2)
2339 CheckDefFailure(["var x = {xxx: 1,"], 'E723:', 2) 2339 CheckDefFailure(["var x = {xxx: 1,"], 'E723:', 2)
2340 CheckScriptFailure(['vim9script', "var x = {xxx: 1,"], 'E723:', 2) 2340 CheckScriptFailure(['vim9script', "var x = {xxx: 1,"], 'E723:', 2)
2341 CheckDefAndScriptFailure2(["var x = {['a']: xxx}"], 'E1001:', 'E121:', 1) 2341 CheckDefAndScriptFailure2(["var x = {['a']: xxx}"], 'E1001:', 'E121:', 1)
2342 CheckDefAndScriptFailure(["var x = {a: 1, a: 2}"], 'E721:', 1) 2342 CheckDefAndScriptFailure(["var x = {a: 1, a: 2}"], 'E721:', 1)
2343 CheckDefExecAndScriptFailure2(["var x = g:anint.member"], 'E715:', 'E15:', 1) 2343 CheckDefExecAndScriptFailure2(["var x = g:anint.member"], 'E715:', 'E488:', 1)
2344 CheckDefExecAndScriptFailure(["var x = g:dict_empty.member"], 'E716:', 1) 2344 CheckDefExecAndScriptFailure(["var x = g:dict_empty.member"], 'E716:', 1)
2345 2345
2346 CheckDefExecAndScriptFailure(['var x: dict<number> = {a: 234, b: "1"}'], 'E1012:', 1) 2346 CheckDefExecAndScriptFailure(['var x: dict<number> = {a: 234, b: "1"}'], 'E1012:', 1)
2347 CheckDefExecAndScriptFailure(['var x: dict<number> = {a: "x", b: 134}'], 'E1012:', 1) 2347 CheckDefExecAndScriptFailure(['var x: dict<number> = {a: "x", b: 134}'], 'E1012:', 1)
2348 CheckDefExecAndScriptFailure(['var x: dict<string> = {a: 234, b: "1"}'], 'E1012:', 1) 2348 CheckDefExecAndScriptFailure(['var x: dict<string> = {a: 234, b: "1"}'], 'E1012:', 1)
3050 call CheckDefFailure(["var x = [1, 2"], "E697:", 2) 3050 call CheckDefFailure(["var x = [1, 2"], "E697:", 2)
3051 call CheckScriptFailure(['vim9script', "var x = [1, 2"], 'E696:', 2) 3051 call CheckScriptFailure(['vim9script', "var x = [1, 2"], 'E696:', 2)
3052 3052
3053 call CheckDefAndScriptFailure2(["var x = [notfound]"], "E1001:", 'E121:', 1) 3053 call CheckDefAndScriptFailure2(["var x = [notfound]"], "E1001:", 'E121:', 1)
3054 3054
3055 call CheckDefAndScriptFailure2(["var X = () => 123)"], "E488:", 'E15:', 1) 3055 call CheckDefAndScriptFailure(["var X = () => 123)"], 'E488:', 1)
3056 call CheckDefAndScriptFailure(["var x = 123->((x) => x + 5)"], "E107:", 1) 3056 call CheckDefAndScriptFailure(["var x = 123->((x) => x + 5)"], "E107:", 1)
3057 3057
3058 call CheckDefAndScriptFailure(["var x = &notexist"], 'E113:', 1) 3058 call CheckDefAndScriptFailure(["var x = &notexist"], 'E113:', 1)
3059 call CheckDefAndScriptFailure2(["&grepprg = [343]"], 'E1012:', 'E730:', 1) 3059 call CheckDefAndScriptFailure2(["&grepprg = [343]"], 'E1012:', 'E730:', 1)
3060 3060
3068 call CheckDefExecAndScriptFailure(["var x = +g:astring"], 'E1030:', 1) 3068 call CheckDefExecAndScriptFailure(["var x = +g:astring"], 'E1030:', 1)
3069 call CheckDefExecAndScriptFailure(["var x = +g:ablob"], 'E974:', 1) 3069 call CheckDefExecAndScriptFailure(["var x = +g:ablob"], 'E974:', 1)
3070 call CheckDefExecAndScriptFailure(["var x = +g:alist"], 'E745:', 1) 3070 call CheckDefExecAndScriptFailure(["var x = +g:alist"], 'E745:', 1)
3071 call CheckDefExecAndScriptFailure(["var x = +g:adict"], 'E728:', 1) 3071 call CheckDefExecAndScriptFailure(["var x = +g:adict"], 'E728:', 1)
3072 3072
3073 call CheckDefAndScriptFailure2(["var x = ''", "var y = x.memb"], 'E715:', 'E15:', 2) 3073 call CheckDefAndScriptFailure2(["var x = ''", "var y = x.memb"], 'E715:', 'E488:', 2)
3074 3074
3075 call CheckDefAndScriptFailure2(["'yes'->", "Echo()"], 'E488: Trailing characters: ->', 'E260: Missing name after ->', 1) 3075 call CheckDefAndScriptFailure2(["'yes'->", "Echo()"], 'E488: Trailing characters: ->', 'E260: Missing name after ->', 1)
3076 3076
3077 call CheckDefExecFailure(["[1, 2->len()"], 'E697:', 2) 3077 call CheckDefExecFailure(["[1, 2->len()"], 'E697:', 2)
3078 call CheckScriptFailure(['vim9script', "[1, 2->len()"], 'E696:', 2) 3078 call CheckScriptFailure(['vim9script', "[1, 2->len()"], 'E696:', 2)
3352 call CheckDefAndScriptFailure(['var l = [2]', 'l->((ll) => add(ll, 8))'], 'E107:', 2) 3352 call CheckDefAndScriptFailure(['var l = [2]', 'l->((ll) => add(ll, 8))'], 'E107:', 2)
3353 call CheckDefAndScriptFailure(['var l = [2]', 'l->((ll) => add(ll, 8)) ()'], 'E274:', 2) 3353 call CheckDefAndScriptFailure(['var l = [2]', 'l->((ll) => add(ll, 8)) ()'], 'E274:', 2)
3354 endfunc 3354 endfunc
3355 3355
3356 func Test_expr_fails() 3356 func Test_expr_fails()
3357 call CheckDefAndScriptFailure2(["var x = '1'is2"], 'E488:', 'E15:', 1) 3357 call CheckDefAndScriptFailure(["var x = '1'is2"], 'E488:', 1)
3358 call CheckDefAndScriptFailure2(["var x = '1'isnot2"], 'E488:', 'E15:', 1) 3358 call CheckDefAndScriptFailure(["var x = '1'isnot2"], 'E488:', 1)
3359 3359
3360 call CheckDefAndScriptFailure2(["CallMe ('yes')"], 'E476:', 'E492:', 1) 3360 call CheckDefAndScriptFailure2(["CallMe ('yes')"], 'E476:', 'E492:', 1)
3361 3361
3362 call CheckDefAndScriptFailure(["CallMe2('yes','no')"], 'E1069:', 1) 3362 call CheckDefAndScriptFailure(["CallMe2('yes','no')"], 'E1069:', 1)
3363 3363