Mercurial > vim
comparison src/list.c @ 33933:aceaf677dd92 v9.0.2163
patch 9.0.2163: Vim9: type can be assigned to list/dict
Commit: https://github.com/vim/vim/commit/fa831102c38c9192edf3aaf0cbcaff9ee5e006ac
Author: Ernie Rael <errael@raelity.com>
Date: Thu Dec 14 20:06:39 2023 +0100
patch 9.0.2163: Vim9: type can be assigned to list/dict
Problem: Vim9: type can be assigned to list/dict
Solution: Prevent assigning a `type` to a `list` or `dict`
closes: #13683
Signed-off-by: Ernie Rael <errael@raelity.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Thu, 14 Dec 2023 20:15:08 +0100 |
parents | 08f9e1eac4cf |
children | da670b1549b3 |
comparison
equal
deleted
inserted
replaced
33932:4d9213d8ba23 | 33933:aceaf677dd92 |
---|---|
1574 *arg = skipwhite_and_linebreak(*arg + 1, evalarg); | 1574 *arg = skipwhite_and_linebreak(*arg + 1, evalarg); |
1575 while (**arg != ']' && **arg != NUL) | 1575 while (**arg != ']' && **arg != NUL) |
1576 { | 1576 { |
1577 if (eval1(arg, &tv, evalarg) == FAIL) // recursive! | 1577 if (eval1(arg, &tv, evalarg) == FAIL) // recursive! |
1578 goto failret; | 1578 goto failret; |
1579 if (check_typval_is_value(&tv) == FAIL) | |
1580 { | |
1581 if (evaluate) | |
1582 clear_tv(&tv); | |
1583 goto failret; | |
1584 } | |
1579 if (evaluate) | 1585 if (evaluate) |
1580 { | 1586 { |
1581 item = listitem_alloc(); | 1587 item = listitem_alloc(); |
1582 if (item != NULL) | 1588 if (item != NULL) |
1583 { | 1589 { |