Mercurial > vim
comparison src/vim9type.c @ 33886:cd7acb9bc4fd v9.0.2152
patch 9.0.2152: Using type unknown for List/Dict containers
Commit: https://github.com/vim/vim/commit/668971958c126d5e105fd44b60a4efcaf2c4b55c
Author: Yegappan Lakshmanan <yegappan@yahoo.com>
Date: Tue Dec 5 15:51:50 2023 +0100
patch 9.0.2152: Using type unknown for List/Dict containers
Problem: Using type unknown for List/Dict containers
Solution: Use 'any' instead
fixes: #13582
closes: #13625
Signed-off-by: Yegappan Lakshmanan <yegappan@yahoo.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Sun, 10 Dec 2023 15:16:23 +0100 |
parents | f126ffc85f7c |
children | a9ccbadecda1 |
comparison
equal
deleted
inserted
replaced
33885:a8a44f90e584 | 33886:cd7acb9bc4fd |
---|---|
1704 name = vartype_name(type->tt_type); | 1704 name = vartype_name(type->tt_type); |
1705 | 1705 |
1706 if (type->tt_type == VAR_LIST || type->tt_type == VAR_DICT) | 1706 if (type->tt_type == VAR_LIST || type->tt_type == VAR_DICT) |
1707 { | 1707 { |
1708 char *member_free; | 1708 char *member_free; |
1709 char *member_name = type_name(type->tt_member, &member_free); | 1709 char *member_name; |
1710 if (type->tt_member->tt_type == VAR_UNKNOWN) | |
1711 member_name = type_name(&t_any, &member_free); | |
1712 else | |
1713 member_name = type_name(type->tt_member, &member_free); | |
1710 size_t len = STRLEN(name) + STRLEN(member_name) + 3; | 1714 size_t len = STRLEN(name) + STRLEN(member_name) + 3; |
1711 *tofree = alloc(len); | 1715 *tofree = alloc(len); |
1712 if (*tofree != NULL) | 1716 if (*tofree != NULL) |
1713 { | 1717 { |
1714 vim_snprintf(*tofree, len, "%s<%s>", name, member_name); | 1718 vim_snprintf(*tofree, len, "%s<%s>", name, member_name); |