diff src/evalvars.c @ 21032:f80e822a310d v8.2.1067

patch 8.2.1067: expression "!expr->func()" does not work Commit: https://github.com/vim/vim/commit/0b1cd52ff6bf690388f892be686a91721a082e55 Author: Bram Moolenaar <Bram@vim.org> Date: Sat Jun 27 13:11:50 2020 +0200 patch 8.2.1067: expression "!expr->func()" does not work Problem: Expression "!expr->func()" does not work. Solution: Apply plus and minus earlier. (closes https://github.com/vim/vim/issues/6348)
author Bram Moolenaar <Bram@vim.org>
date Sat, 27 Jun 2020 13:15:03 +0200
parents 3af71cbcfdbe
children d9e0db9b2b99
line wrap: on
line diff
--- a/src/evalvars.c
+++ b/src/evalvars.c
@@ -1125,8 +1125,8 @@ list_arg_vars(exarg_T *eap, char_u *arg,
 		{
 		    // handle d.key, l[idx], f(expr)
 		    arg_subsc = arg;
-		    if (handle_subscript(&arg, &tv, EVAL_EVALUATE, TRUE,
-							  name, &name) == FAIL)
+		    if (handle_subscript(&arg, &tv, EVAL_EVALUATE, TRUE)
+								       == FAIL)
 			error = TRUE;
 		    else
 		    {
@@ -3341,8 +3341,7 @@ var_exists(char_u *var)
 	if (n)
 	{
 	    // handle d.key, l[idx], f(expr)
-	    n = (handle_subscript(&var, &tv, EVAL_EVALUATE,
-						    FALSE, name, &name) == OK);
+	    n = (handle_subscript(&var, &tv, EVAL_EVALUATE, FALSE) == OK);
 	    if (n)
 		clear_tv(&tv);
 	}