Mercurial > vim
diff src/testdir/test_vim9_expr.vim @ 24518:cf334a353c30 v8.2.2799
patch 8.2.2799: Vim9: type casts don't fully work at the script level
Commit: https://github.com/vim/vim/commit/459fbdbf9216bc7b4721fc192e08b35039036caa
Author: Bram Moolenaar <Bram@vim.org>
Date: Wed Apr 21 17:57:26 2021 +0200
patch 8.2.2799: Vim9: type casts don't fully work at the script level
Problem: Vim9: type casts don't fully work at the script level.
Solution: Implement the missing piece.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Wed, 21 Apr 2021 18:00:05 +0200 |
parents | aa150abca273 |
children | 9c404d78d767 |
line wrap: on
line diff
--- a/src/testdir/test_vim9_expr.vim +++ b/src/testdir/test_vim9_expr.vim @@ -1575,16 +1575,25 @@ let $TESTVAR = 'testvar' " type casts def Test_expr7t() - var ls: list<string> = ['a', <string>g:string_empty] - var ln: list<number> = [<number>g:anint, <number>g:thefour] - var nr = <number>234 - assert_equal(234, nr) - - CheckDefAndScriptFailure2(["var x = <nr>123"], 'E1010:', 'E15:', 1) + var lines =<< trim END + var ls: list<string> = ['a', <string>g:string_empty] + var ln: list<number> = [<number>g:anint, <number>g:thefour] + var nr = <number>234 + assert_equal(234, nr) + var text = + <string> + 'text' + if false + text = <number>'xxx' + endif + END + CheckDefAndScriptSuccess(lines) + + CheckDefAndScriptFailure(["var x = <nr>123"], 'E1010:', 1) CheckDefFailure(["var x = <number>"], 'E1097:', 3) CheckScriptFailure(['vim9script', "var x = <number>"], 'E15:', 2) - CheckDefAndScriptFailure2(["var x = <number >123"], 'E1068:', 'E15:', 1) - CheckDefAndScriptFailure2(["var x = <number 123"], 'E1104:', 'E15:', 1) + CheckDefAndScriptFailure(["var x = <number >123"], 'E1068:', 1) + CheckDefAndScriptFailure(["var x = <number 123"], 'E1104:', 1) enddef " test low level expression