diff options
author | Bram Moolenaar <Bram@vim.org> | 2019-07-14 13:41:34 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2019-07-14 13:41:34 +0200 |
commit | 2898ebb44cee62a70a11b44a97bdad8cc00157b1 (patch) | |
tree | fc09d7b7b0ad688555c85c8f0e07fae117e51b1b | |
parent | a099da357248b48e0a78bc5675c5dd222b557bf1 (diff) | |
download | vim-git-2898ebb44cee62a70a11b44a97bdad8cc00157b1.tar.gz |
patch 8.1.1686: "*" of "*{" is recognized as multipy operatorv8.1.1686
Problem: "*" of "*{" is recognized as multipy operator. (Yasuhiro Matsumoto)
Solution: Check for the "{".
-rw-r--r-- | src/eval.c | 2 | ||||
-rw-r--r-- | src/testdir/test_listdict.vim | 1 | ||||
-rw-r--r-- | src/version.c | 2 |
3 files changed, 4 insertions, 1 deletions
diff --git a/src/eval.c b/src/eval.c index 20cec169b..8c065f26e 100644 --- a/src/eval.c +++ b/src/eval.c @@ -4266,7 +4266,7 @@ eval6( for (;;) { op = **arg; - if (op != '*' && op != '/' && op != '%') + if ((op != '*' || (*arg)[1] == '{') && op != '/' && op != '%') break; if (evaluate) diff --git a/src/testdir/test_listdict.vim b/src/testdir/test_listdict.vim index 574beb51d..56c84a29d 100644 --- a/src/testdir/test_listdict.vim +++ b/src/testdir/test_listdict.vim @@ -282,6 +282,7 @@ endfunc func Test_dict_literal_keys() call assert_equal({'one': 1, 'two2': 2, '3three': 3, '44': 4}, *{one: 1, two2: 2, 3three: 3, 44: 4},) + call assert_equal('2 3', trim(execute('echo 2 *{blue: 3}.blue'))) endfunc " Nasty: deepcopy() dict that refers to itself (fails when noref used) diff --git a/src/version.c b/src/version.c index 21dc66e02..66f3d34be 100644 --- a/src/version.c +++ b/src/version.c @@ -778,6 +778,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 1686, +/**/ 1685, /**/ 1684, |