comparison src/vim9.h @ 23266:00f7cd9b6033 v8.2.2179

patch 8.2.2179: Vim9: crash when indexing a dict with a number Commit: https://github.com/vim/vim/commit/4f5e39775616795ac7d1c01bf15a1bd316feb387 Author: Bram Moolenaar <Bram@vim.org> Date: Mon Dec 21 17:30:50 2020 +0100 patch 8.2.2179: Vim9: crash when indexing a dict with a number Problem: Vim9: crash when indexing a dict with a number. Solution: Add ISN_STOREINDEX. (closes https://github.com/vim/vim/issues/7513)
author Bram Moolenaar <Bram@vim.org>
date Mon, 21 Dec 2020 17:45:04 +0100
parents 657216220293
children 112fa621b127
comparison
equal deleted inserted replaced
23265:684de8fd484a 23266:00f7cd9b6033
53 ISN_STOREENV, // pop into environment variable isn_arg.string 53 ISN_STOREENV, // pop into environment variable isn_arg.string
54 ISN_STOREREG, // pop into register isn_arg.number 54 ISN_STOREREG, // pop into register isn_arg.number
55 // ISN_STOREOTHER, // pop into other script variable isn_arg.other. 55 // ISN_STOREOTHER, // pop into other script variable isn_arg.other.
56 56
57 ISN_STORENR, // store number into local variable isn_arg.storenr.stnr_idx 57 ISN_STORENR, // store number into local variable isn_arg.storenr.stnr_idx
58 ISN_STORELIST, // store into list, value/index/variable on stack 58 ISN_STOREINDEX, // store into list or dictionary, type isn_arg.vartype,
59 ISN_STOREDICT, // store into dictionary, value/index/variable on stack 59 // value/index/variable on stack
60 60
61 ISN_UNLET, // unlet variable isn_arg.unlet.ul_name 61 ISN_UNLET, // unlet variable isn_arg.unlet.ul_name
62 ISN_UNLETENV, // unlet environment variable isn_arg.unlet.ul_name 62 ISN_UNLETENV, // unlet environment variable isn_arg.unlet.ul_name
63 63
64 ISN_LOCKCONST, // lock constant value 64 ISN_LOCKCONST, // lock constant value
302 int isn_lnum; 302 int isn_lnum;
303 union { 303 union {
304 char_u *string; 304 char_u *string;
305 varnumber_T number; 305 varnumber_T number;
306 blob_T *blob; 306 blob_T *blob;
307 vartype_T vartype;
307 #ifdef FEAT_FLOAT 308 #ifdef FEAT_FLOAT
308 float_T fnumber; 309 float_T fnumber;
309 #endif 310 #endif
310 channel_T *channel; 311 channel_T *channel;
311 job_T *job; 312 job_T *job;