summaryrefslogtreecommitdiff
path: root/src/vim9execute.c
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2020-07-13 18:18:00 +0200
committerBram Moolenaar <Bram@vim.org>2020-07-13 18:18:00 +0200
commitbfd65589d9b6bd5fd2c8ee768d1427469bd61ead (patch)
tree250860c3bc95a8e7a7e855e73ceb00b460310f8a /src/vim9execute.c
parent7177da9dd4d9a521c6141c6fbf7e9a4d6296ab05 (diff)
downloadvim-git-8.2.1200.tar.gz
patch 8.2.1200: Vim9: cannot disassemble a lambda functionv8.2.1200
Problem: Vim9: cannot disassemble a lambda function. Solution: Recognize "<lambda>123" as a function name.
Diffstat (limited to 'src/vim9execute.c')
-rw-r--r--src/vim9execute.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/vim9execute.c b/src/vim9execute.c
index 544c4226b..5fdbfbf51 100644
--- a/src/vim9execute.c
+++ b/src/vim9execute.c
@@ -2397,7 +2397,14 @@ ex_disassemble(exarg_T *eap)
int prev_current = 0;
int is_global = FALSE;
- fname = trans_function_name(&arg, &is_global, FALSE,
+ if (STRNCMP(arg, "<lambda>", 8) == 0)
+ {
+ arg += 8;
+ (void)getdigits(&arg);
+ fname = vim_strnsave(eap->arg, arg - eap->arg);
+ }
+ else
+ fname = trans_function_name(&arg, &is_global, FALSE,
TFN_INT | TFN_QUIET | TFN_NO_AUTOLOAD, NULL, NULL);
if (fname == NULL)
{