comparison src/proto/evalvars.pro @ 22551:86a115a80262 v8.2.1824

patch 8.2.1824: Vim9: variables at the script level escape their scope Commit: https://github.com/vim/vim/commit/fcdc5d83fbfd7ddce634769ea902e58c87f27f20 Author: Bram Moolenaar <Bram@vim.org> Date: Sat Oct 10 19:07:09 2020 +0200 patch 8.2.1824: Vim9: variables at the script level escape their scope Problem: Vim9: variables at the script level escape their scope. Solution: When leaving a scope remove variables declared in it.
author Bram Moolenaar <Bram@vim.org>
date Sat, 10 Oct 2020 19:15:04 +0200
parents 35ef9b0a81a3
children bb7531f77529
comparison
equal deleted inserted replaced
22550:d61c22faf4be 22551:86a115a80262
65 void new_script_vars(scid_T id); 65 void new_script_vars(scid_T id);
66 void init_var_dict(dict_T *dict, dictitem_T *dict_var, int scope); 66 void init_var_dict(dict_T *dict, dictitem_T *dict_var, int scope);
67 void unref_var_dict(dict_T *dict); 67 void unref_var_dict(dict_T *dict);
68 void vars_clear(hashtab_T *ht); 68 void vars_clear(hashtab_T *ht);
69 void vars_clear_ext(hashtab_T *ht, int free_val); 69 void vars_clear_ext(hashtab_T *ht, int free_val);
70 void delete_var(hashtab_T *ht, hashitem_T *hi);
70 void set_var(char_u *name, typval_T *tv, int copy); 71 void set_var(char_u *name, typval_T *tv, int copy);
71 void set_var_const(char_u *name, type_T *type, typval_T *tv_arg, int copy, int flags); 72 void set_var_const(char_u *name, type_T *type, typval_T *tv_arg, int copy, int flags);
72 int var_check_ro(int flags, char_u *name, int use_gettext); 73 int var_check_ro(int flags, char_u *name, int use_gettext);
73 int var_check_lock(int flags, char_u *name, int use_gettext); 74 int var_check_lock(int flags, char_u *name, int use_gettext);
74 int var_check_fixed(int flags, char_u *name, int use_gettext); 75 int var_check_fixed(int flags, char_u *name, int use_gettext);