summaryrefslogtreecommitdiff
path: root/src/userfunc.c
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2020-05-25 22:36:50 +0200
committerBram Moolenaar <Bram@vim.org>2020-05-25 22:36:50 +0200
commit25e0f5863e9010a75a1ff0d04e8f886403968755 (patch)
treebcb0891919dbc85578b8483487f2ef89ede0f93c /src/userfunc.c
parent2eec37926db6d31beb36f162ac00357a30c093c8 (diff)
downloadvim-git-25e0f5863e9010a75a1ff0d04e8f886403968755.tar.gz
patch 8.2.0823: Vim9: script reload test is disabledv8.2.0823
Problem: Vim9: script reload test is disabled. Solution: Compile a function in the context of the script where it was defined. Set execution stack for compiled function. Add a test that an error is reported for the right file/function.
Diffstat (limited to 'src/userfunc.c')
-rw-r--r--src/userfunc.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/userfunc.c b/src/userfunc.c
index bc92c2aaf..87e06c61d 100644
--- a/src/userfunc.c
+++ b/src/userfunc.c
@@ -1114,11 +1114,11 @@ call_user_func(
if (fp->uf_dfunc_idx != UF_NOT_COMPILED)
{
- estack_push_ufunc(ETYPE_UFUNC, fp, 1);
+ estack_push_ufunc(fp, 1);
save_current_sctx = current_sctx;
current_sctx = fp->uf_script_ctx;
- // Execute the compiled function.
+ // Execute the function, possibly compiling it first.
call_def_function(fp, argcount, argvars, funcexe->partial, rettv);
--depth;
current_funccal = fc->caller;
@@ -1288,7 +1288,7 @@ call_user_func(
++sandbox;
}
- estack_push_ufunc(ETYPE_UFUNC, fp, 1);
+ estack_push_ufunc(fp, 1);
ESTACK_CHECK_SETUP
if (p_verbose >= 12)
{