Mercurial > vim
comparison src/vim9execute.c @ 24932:afaa7f3aae56 v8.2.3003
patch 8.2.3003: Vim9: closure compiled with wrong compile type
Commit: https://github.com/vim/vim/commit/968a5b62ffd3e08005d907d93eaaf807be466a88
Author: Bram Moolenaar <Bram@vim.org>
Date: Tue Jun 15 19:32:40 2021 +0200
patch 8.2.3003: Vim9: closure compiled with wrong compile type
Problem: Vim9: closure compiled with wrong compile type.
Solution: Use COMPILE_TYPE() when calling a function. (closes https://github.com/vim/vim/issues/8384)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Tue, 15 Jun 2021 19:45:03 +0200 |
parents | f11779c1d123 |
children | 345619f35112 |
comparison
equal
deleted
inserted
replaced
24931:7cefad55cbf8 | 24932:afaa7f3aae56 |
---|---|
750 typval_T argvars[MAX_FUNC_ARGS]; | 750 typval_T argvars[MAX_FUNC_ARGS]; |
751 funcexe_T funcexe; | 751 funcexe_T funcexe; |
752 int error; | 752 int error; |
753 int idx; | 753 int idx; |
754 int did_emsg_before = did_emsg; | 754 int did_emsg_before = did_emsg; |
755 compiletype_T compile_type = CT_NONE; | 755 compiletype_T compile_type = COMPILE_TYPE(ufunc); |
756 | 756 |
757 #ifdef FEAT_PROFILE | |
758 if (do_profiling == PROF_YES && ufunc->uf_profiling) | |
759 compile_type = CT_PROFILE; | |
760 #endif | |
761 if (func_needs_compiling(ufunc, compile_type) | 757 if (func_needs_compiling(ufunc, compile_type) |
762 && compile_def_function(ufunc, FALSE, compile_type, NULL) | 758 && compile_def_function(ufunc, FALSE, compile_type, NULL) |
763 == FAIL) | 759 == FAIL) |
764 return FAIL; | 760 return FAIL; |
765 if (ufunc->uf_def_status == UF_COMPILED) | 761 if (ufunc->uf_def_status == UF_COMPILED) |