patch 8.2.3911: Vim9: type check for filter() does not accept unknown

Problem:    Vim9: type check for filter() does not accept unknown.
Solution:   Also accept unknown for the return type. (closes #9413)
diff --git a/src/testdir/test_vim9_builtin.vim b/src/testdir/test_vim9_builtin.vim
index 6cad1e4..bc59e3a 100644
--- a/src/testdir/test_vim9_builtin.vim
+++ b/src/testdir/test_vim9_builtin.vim
@@ -1253,6 +1253,12 @@
   assert_equal([], filter([1, 2, 3], '0'))
   assert_equal([1, 2, 3], filter([1, 2, 3], '1'))
   assert_equal({b: 20}, filter({a: 10, b: 20}, 'v:val == 20'))
+
+  def GetFiltered(): list<number>
+    var Odd: func = (_, v) => v % 2
+    return range(3)->filter(Odd)
+  enddef
+  assert_equal([1], GetFiltered())
 enddef
 
 def Test_filter_wrong_dict_key_type()