From b16a9ddc281dc11c0f7bd70de6a9d7041d9b2e54 Mon Sep 17 00:00:00 2001 From: thinca Date: Sun, 31 May 2026 19:43:42 +0000 Subject: [PATCH] patch 9.2.0574: tests: missing test for v9.2.0572 Problem: tests: missing test for v9.2.0572 (the patch accidentally included some additional unwanted changes from #20372) (thinca) Solution: Add additional test for delfunc (thinca) Patch 9.2.0572 fixed ":call d.key()" and ":delfunction d.key" failing with E1017 in Vim9 script, but only the :call form was covered by a regression test. Add Test_delfunction_dict_funcref to exercise both "delfunction d.key" and "delfunction d['k2']". closes: #20372 Signed-off-by: thinca Signed-off-by: Christian Brabandt --- src/testdir/test_vim9_cmd.vim | 19 +++++++++++++++++++ src/version.c | 2 ++ 2 files changed, 21 insertions(+) diff --git a/src/testdir/test_vim9_cmd.vim b/src/testdir/test_vim9_cmd.vim index a4c2d05d45..cec81f3ed6 100644 --- a/src/testdir/test_vim9_cmd.vim +++ b/src/testdir/test_vim9_cmd.vim @@ -2178,4 +2178,23 @@ def Test_call_dict_funcref() v9.CheckScriptSuccess(lines) enddef +" :delfunction on a funcref stored in a dict member used to fail with E1017 in +" Vim9 script for the same reason as :call. +def Test_delfunction_dict_funcref() + var lines =<< trim END + vim9script + func g:LegacyFunc() + endfunc + var d: dict = {} + d.key = g:LegacyFunc + d['k2'] = g:LegacyFunc + delfunction d.key + assert_false(has_key(d, 'key')) + delfunction d['k2'] + assert_false(has_key(d, 'k2')) + delfunction g:LegacyFunc + END + v9.CheckScriptSuccess(lines) +enddef + " vim: ts=8 sw=2 sts=2 expandtab tw=80 fdm=marker diff --git a/src/version.c b/src/version.c index 53c557e432..361a0ca1f5 100644 --- a/src/version.c +++ b/src/version.c @@ -729,6 +729,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 574, /**/ 573, /**/