From 2898ebb44cee62a70a11b44a97bdad8cc00157b1 Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Sun, 14 Jul 2019 13:41:34 +0200 Subject: patch 8.1.1686: "*" of "*{" is recognized as multipy operator Problem: "*" of "*{" is recognized as multipy operator. (Yasuhiro Matsumoto) Solution: Check for the "{". --- src/eval.c | 2 +- src/testdir/test_listdict.vim | 1 + src/version.c | 2 ++ 3 files changed, 4 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/eval.c b/src/eval.c index 20cec169bf..8c065f26e5 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 574beb51da..56c84a29de 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 21dc66e02b..66f3d34be7 100644 --- a/src/version.c +++ b/src/version.c @@ -777,6 +777,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 1686, /**/ 1685, /**/ -- cgit v1.2.3