Mercurial > vim
diff src/evalfunc.c @ 27457:4c16acb2525f v8.2.4257
patch 8.2.4257: Vim9: finding global function without g: prefix inconsistent
Commit: https://github.com/vim/vim/commit/62aec93bfdb9e1b40d03a6d2e8e9511f8b1bdb2d
Author: Bram Moolenaar <Bram@vim.org>
Date: Sat Jan 29 21:45:34 2022 +0000
patch 8.2.4257: Vim9: finding global function without g: prefix inconsistent
Problem: Vim9: finding global function without g: prefix but not finding
global variable is inconsistent.
Solution: Require using g: for a global function. Change the vim9.vim
script into a Vim9 script with exports. Fix that import in legacy
script does not work.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sat, 29 Jan 2022 23:00:05 +0100 |
parents | c7f614c9ceb3 |
children | b43f6c879d52 |
line wrap: on
line diff
--- a/src/evalfunc.c +++ b/src/evalfunc.c @@ -3830,14 +3830,7 @@ f_exists(typval_T *argvars, typval_T *re } else if (*p == '*') // internal or user defined function { - int save_version = current_sctx.sc_version; - - // Vim9 script assumes a function is script-local, but here we want to - // find any matching function. - if (current_sctx.sc_version == SCRIPT_VERSION_VIM9) - current_sctx.sc_version = SCRIPT_VERSION_MAX; n = function_exists(p + 1, FALSE); - current_sctx.sc_version = save_version; } else if (*p == '?') // internal function only {