patch 9.1.0080: unexpected error for modifying final list using +=

Problem:  unexpected error for modifying final list using += operator
          (Ernie Rael)
Solution: Allow List value modification of a final variable using +=
          operator
          (Yegappan Lakshmanan)

fixes: #13745
fixes: #13959
closes: #13962

Signed-off-by: Yegappan Lakshmanan <yegappan@yahoo.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
Yegappan Lakshmanan
2024-02-06 11:03:36 +01:00
committed by Christian Brabandt
parent ebfd856cfd
commit 1af35631f8
7 changed files with 129 additions and 6 deletions

View File

@ -1,4 +1,4 @@
*eval.txt* For Vim version 9.1. Last change: 2024 Feb 05
*eval.txt* For Vim version 9.1. Last change: 2024 Feb 06
VIM REFERENCE MANUAL by Bram Moolenaar
@ -425,6 +425,18 @@ To change part of a list you can specify the first and last item to be
modified. The value must at least have the number of items in the range: >
:let list[3:5] = [3, 4, 5]
To add items to a List in-place, you can use the |+=| operator: >
:let listA = [1, 2]
:let listA += [3, 4]
<
When two variables refer to the same List, changing one List in-place will
cause the referenced List to be changed in-place: >
:let listA = [1, 2]
:let listB = listA
:let listB += [3, 4]
:echo listA
[1, 2, 3, 4]
<
Adding and removing items from a list is done with functions. Here are a few
examples: >
:call insert(list, 'a') " prepend item 'a'