comparison src/evalvars.c @ 23239:a789a688e37d v8.2.2165

patch 8.2.2165: Vim9: assignment to dict member does not work Commit: https://github.com/vim/vim/commit/8f22f5c3aa0aa96e3843a57f29405625d8514c74 Author: Bram Moolenaar <Bram@vim.org> Date: Sat Dec 19 22:10:13 2020 +0100 patch 8.2.2165: Vim9: assignment to dict member does not work Problem: Vim9: assignment to dict member does not work. Solution: Fix recognizing dict member. (closes https://github.com/vim/vim/issues/7484)
author Bram Moolenaar <Bram@vim.org>
date Sat, 19 Dec 2020 22:45:03 +0100
parents 657216220293
children d9ae7dd3a0f2
comparison
equal deleted inserted replaced
23238:5945735ad4af 23239:a789a688e37d
1462 // ":let {expr} = expr": Idem, name made with curly braces 1462 // ":let {expr} = expr": Idem, name made with curly braces
1463 else if (eval_isnamec1(*arg) || *arg == '{') 1463 else if (eval_isnamec1(*arg) || *arg == '{')
1464 { 1464 {
1465 lval_T lv; 1465 lval_T lv;
1466 1466
1467 p = get_lval(arg, tv, &lv, FALSE, FALSE, 0, FNE_CHECK_START); 1467 p = get_lval(arg, tv, &lv, FALSE, FALSE,
1468 (flags & ASSIGN_NO_DECL) ? GLV_NO_DECL : 0, FNE_CHECK_START);
1468 if (p != NULL && lv.ll_name != NULL) 1469 if (p != NULL && lv.ll_name != NULL)
1469 { 1470 {
1470 if (endchars != NULL && vim_strchr(endchars, 1471 if (endchars != NULL && vim_strchr(endchars,
1471 *skipwhite(lv.ll_name_end)) == NULL) 1472 *skipwhite(lv.ll_name_end)) == NULL)
1472 emsg(_(e_letunexp)); 1473 emsg(_(e_letunexp));