Mercurial > vim
comparison src/eval.c @ 23982:9fcd71d0db89 v8.2.2533
patch 8.2.2533: Vim9: cannot use a range with :unlet
Commit: https://github.com/vim/vim/commit/5b5ae29bd3d7b832b6f15320430f7f191e0abd1f
Author: Bram Moolenaar <Bram@vim.org>
Date: Sat Feb 20 17:04:02 2021 +0100
patch 8.2.2533: Vim9: cannot use a range with :unlet
Problem: Vim9: cannot use a range with :unlet.
Solution: Implement ISN_UNLETRANGE.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sat, 20 Feb 2021 17:15:03 +0100 |
parents | a620df0ebbe5 |
children | b535ab17d160 |
comparison
equal
deleted
inserted
replaced
23981:05c1a8485fb9 | 23982:9fcd71d0db89 |
---|---|
1211 lp->ll_n1 = (long)tv_get_number(&var1); | 1211 lp->ll_n1 = (long)tv_get_number(&var1); |
1212 clear_tv(&var1); | 1212 clear_tv(&var1); |
1213 | 1213 |
1214 lp->ll_dict = NULL; | 1214 lp->ll_dict = NULL; |
1215 lp->ll_list = lp->ll_tv->vval.v_list; | 1215 lp->ll_list = lp->ll_tv->vval.v_list; |
1216 lp->ll_li = list_find(lp->ll_list, lp->ll_n1); | 1216 lp->ll_li = list_find_index(lp->ll_list, &lp->ll_n1); |
1217 if (lp->ll_li == NULL) | |
1218 { | |
1219 if (lp->ll_n1 < 0) | |
1220 { | |
1221 lp->ll_n1 = 0; | |
1222 lp->ll_li = list_find(lp->ll_list, lp->ll_n1); | |
1223 } | |
1224 } | |
1225 if (lp->ll_li == NULL) | 1217 if (lp->ll_li == NULL) |
1226 { | 1218 { |
1227 clear_tv(&var2); | 1219 clear_tv(&var2); |
1228 if (!quiet) | 1220 if (!quiet) |
1229 semsg(_(e_listidx), lp->ll_n1); | 1221 semsg(_(e_listidx), lp->ll_n1); |