diff src/evalfunc.c @ 26348:bf1a7ce3f14a v8.2.3705

patch 8.2.3705: cannot pass a lambda name to function() or funcref() Commit: https://github.com/vim/vim/commit/eba3b7f6645c8f856132b4c06a009a3b0a44e21c Author: Bram Moolenaar <Bram@vim.org> Date: Tue Nov 30 18:25:08 2021 +0000 patch 8.2.3705: cannot pass a lambda name to function() or funcref() Problem: Cannot pass a lambda name to function() or funcref(). (Yegappan Lakshmanan) Solution: Handle a lambda name differently.
author Bram Moolenaar <Bram@vim.org>
date Tue, 30 Nov 2021 19:30:05 +0100
parents a2e6da79274d
children 255bc9a08e58
line wrap: on
line diff
--- a/src/evalfunc.c
+++ b/src/evalfunc.c
@@ -3955,9 +3955,8 @@ common_function(typval_T *argvars, typva
     if ((use_string && vim_strchr(s, AUTOLOAD_CHAR) == NULL) || is_funcref)
     {
 	name = s;
-	trans_name = trans_function_name(&name, &is_global, FALSE,
-	     TFN_INT | TFN_QUIET | TFN_NO_AUTOLOAD | TFN_NO_DEREF,
-							     NULL, NULL, NULL);
+	trans_name = save_function_name(&name, &is_global, FALSE,
+		   TFN_INT | TFN_QUIET | TFN_NO_AUTOLOAD | TFN_NO_DEREF, NULL);
 	if (*name != NUL)
 	    s = NULL;
     }