patch 8.2.0467: Vim9: some errors are not tested
Problem: Vim9: some errors are not tested
Solution: Add more tests. Fix that Vim9 script flag is not reset.
diff --git a/src/dict.c b/src/dict.c
index 2ff4ae3..1a928a3 100644
--- a/src/dict.c
+++ b/src/dict.c
@@ -826,7 +826,8 @@
if (**arg != ':')
{
- semsg(_(e_missing_dict_colon), *arg);
+ if (evaluate)
+ semsg(_(e_missing_dict_colon), *arg);
clear_tv(&tvkey);
goto failret;
}
@@ -853,7 +854,8 @@
item = dict_find(d, key, -1);
if (item != NULL)
{
- semsg(_(e_duplicate_key), key);
+ if (evaluate)
+ semsg(_(e_duplicate_key), key);
clear_tv(&tvkey);
clear_tv(&tv);
goto failret;
@@ -873,7 +875,8 @@
break;
if (**arg != ',')
{
- semsg(_(e_missing_dict_comma), *arg);
+ if (evaluate)
+ semsg(_(e_missing_dict_comma), *arg);
goto failret;
}
*arg = skipwhite(*arg + 1);
@@ -881,7 +884,8 @@
if (**arg != '}')
{
- semsg(_(e_missing_dict_end), *arg);
+ if (evaluate)
+ semsg(_(e_missing_dict_end), *arg);
failret:
if (d != NULL)
dict_free(d);