Mercurial > vim
diff src/vim9compile.c @ 27968:40c6e5f849dc v8.2.4509
patch 8.2.4509: Vim9: can declare a variable with ":va"
Commit: https://github.com/vim/vim/commit/e1d1211799bc37c063666e97437cf4e9af4782b0
Author: Bram Moolenaar <Bram@vim.org>
Date: Sat Mar 5 11:37:48 2022 +0000
patch 8.2.4509: Vim9: can declare a variable with ":va"
Problem: Vim9: can declare a variable with ":va".
Solution: Disallow using ":va", require using ":var".
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sat, 05 Mar 2022 12:45:03 +0100 |
parents | 6a0ecde89d35 |
children | 212c5894b8b1 |
line wrap: on
line diff
--- a/src/vim9compile.c +++ b/src/vim9compile.c @@ -1883,7 +1883,14 @@ compile_assignment(char_u *arg, exarg_T lhs_T lhs; long start_lnum = SOURCING_LNUM; - // Skip over the "var" or "[var, var]" to get to any "=". + p = eap->cmd; + if (eap->cmdidx == CMD_var && arg > p && !checkforcmd_noparen(&p, "var", 3)) + { + emsg(_(e_must_use_var_instead_of_va)); + return NULL; + } + + // Skip over the "varname" or "[varname, varname]" to get to any "=". p = skip_var_list(arg, TRUE, &var_count, &semicolon, TRUE); if (p == NULL) return *arg == '[' ? arg : NULL;