summaryrefslogtreecommitdiff
path: root/src/vim9script.c
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2022-01-03 12:28:03 +0000
committerBram Moolenaar <Bram@vim.org>2022-01-03 12:28:03 +0000
commit114dbda7858df956161c0adba5d4d8279645ff67 (patch)
tree3723c994d332ef83873644bee1119e9805dc87d3 /src/vim9script.c
parent5c75eed758fbeb39825834d51f3ee4e08f137af3 (diff)
downloadvim-git-114dbda7858df956161c0adba5d4d8279645ff67.tar.gz
patch 8.2.3991: Vim9: error when extending dict<any>v8.2.3991
Problem: Vim9: error when extending dict<any> with another type that it was initialized with. Solution: Also set the type for dict<any> if the initializer has a more specific type. (closes #9461)
Diffstat (limited to 'src/vim9script.c')
-rw-r--r--src/vim9script.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/vim9script.c b/src/vim9script.c
index ab6557073..12c266a27 100644
--- a/src/vim9script.c
+++ b/src/vim9script.c
@@ -907,7 +907,8 @@ update_vim9_script_var(
if (sv != NULL)
{
if (*type == NULL)
- *type = typval2type(tv, get_copyID(), &si->sn_type_list, do_member);
+ *type = typval2type(tv, get_copyID(), &si->sn_type_list,
+ do_member ? TVTT_DO_MEMBER : 0);
if (sv->sv_type_allocated)
free_type(sv->sv_type);
if (*type != NULL && ((*type)->tt_type == VAR_FUNC