comparison src/evalvars.c @ 26990:4b8d836db103 v8.2.4024

patch 8.2.4024: confusing error message if imported name is used directly Commit: https://github.com/vim/vim/commit/32884ad753ffb462d27998beb50678888209075f Author: Bram Moolenaar <Bram@vim.org> Date: Fri Jan 7 12:45:29 2022 +0000 patch 8.2.4024: confusing error message if imported name is used directly Problem: Confusing error message if imported name is used directly. Solution: Give a better error message.
author Bram Moolenaar <Bram@vim.org>
date Fri, 07 Jan 2022 14:00:04 +0100
parents 8796f1384750
children cf5b5e95f62b
comparison
equal deleted inserted replaced
26989:e6c75e80cb49 26990:4b8d836db103
1237 error = TRUE; 1237 error = TRUE;
1238 else 1238 else
1239 { 1239 {
1240 // handle d.key, l[idx], f(expr) 1240 // handle d.key, l[idx], f(expr)
1241 arg_subsc = arg; 1241 arg_subsc = arg;
1242 if (handle_subscript(&arg, &tv, &EVALARG_EVALUATE, TRUE) 1242 if (handle_subscript(&arg, name_start, &tv,
1243 == FAIL) 1243 &EVALARG_EVALUATE, TRUE) == FAIL)
1244 error = TRUE; 1244 error = TRUE;
1245 else 1245 else
1246 { 1246 {
1247 if (arg == arg_subsc && len == 2 && name[1] == ':') 1247 if (arg == arg_subsc && len == 2 && name[1] == ':')
1248 { 1248 {
3953 EVAL_VAR_NOAUTOLOAD + EVAL_VAR_IMPORT) == OK); 3953 EVAL_VAR_NOAUTOLOAD + EVAL_VAR_IMPORT) == OK);
3954 if (n) 3954 if (n)
3955 { 3955 {
3956 // handle d.key, l[idx], f(expr) 3956 // handle d.key, l[idx], f(expr)
3957 arg = skipwhite(arg); 3957 arg = skipwhite(arg);
3958 n = (handle_subscript(&arg, &tv, &EVALARG_EVALUATE, FALSE) == OK); 3958 n = (handle_subscript(&arg, name, &tv, &EVALARG_EVALUATE,
3959 FALSE) == OK);
3959 if (n) 3960 if (n)
3960 clear_tv(&tv); 3961 clear_tv(&tv);
3961 } 3962 }
3962 } 3963 }
3963 if (*arg != NUL) 3964 if (*arg != NUL)