patch 8.2.4940: some code is never used
Problem: Some code is never used.
Solution: Remove dead code. Add a few more test cases.
diff --git a/src/testdir/test_vim9_builtin.vim b/src/testdir/test_vim9_builtin.vim
index 3405d9e..6fc7d06 100644
--- a/src/testdir/test_vim9_builtin.vim
+++ b/src/testdir/test_vim9_builtin.vim
@@ -4083,6 +4083,11 @@
assert_equal("4", substitute("3", '\d', '\=str2nr(submatch(0)) + 1', 'g'))
END
v9.CheckDefAndScriptSuccess(lines)
+
+ lines =<< trim END
+ assert_equal("4", substitute("3", '\d', '\="text" x', 'g'))
+ END
+ v9.CheckDefAndScriptFailure(lines, 'E488: Trailing characters: x')
enddef
def Test_swapinfo()
diff --git a/src/testdir/test_vim9_expr.vim b/src/testdir/test_vim9_expr.vim
index bbe39d1..9807b6c 100644
--- a/src/testdir/test_vim9_expr.vim
+++ b/src/testdir/test_vim9_expr.vim
@@ -2695,6 +2695,21 @@
Test()
END
v9.CheckScriptSuccess(lines)
+
+ # using funcref in legacy script
+ lines =<< trim END
+ def s:Refme(): string
+ return 'yes'
+ enddef
+
+ def TestFunc()
+ var TheRef = s:Refme
+ assert_equal('yes', TheRef())
+ enddef
+
+ call TestFunc()
+ END
+ v9.CheckScriptSuccess(lines)
enddef
let g:test_space_dict = {'': 'empty', ' ': 'space'}