diff options
author | Bram Moolenaar <Bram@vim.org> | 2022-01-03 12:28:03 +0000 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2022-01-03 12:28:03 +0000 |
commit | 114dbda7858df956161c0adba5d4d8279645ff67 (patch) | |
tree | 3723c994d332ef83873644bee1119e9805dc87d3 /src/vim9script.c | |
parent | 5c75eed758fbeb39825834d51f3ee4e08f137af3 (diff) | |
download | vim-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.c | 3 |
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 |