patch 8.2.1178: Vim9: filter function recognized as command modifier

Problem:    Vim9: filter function recognized as command modifier, leading to a
            crash.
Solution:   Clear cmdmod after freeing items.  Do not recognize a command
            modifier followed by non-white space. (closes #6434)
diff --git a/src/testdir/test_vim9_cmd.vim b/src/testdir/test_vim9_cmd.vim
index 801404d..676e97c 100644
--- a/src/testdir/test_vim9_cmd.vim
+++ b/src/testdir/test_vim9_cmd.vim
@@ -265,6 +265,12 @@
   endif
 enddef
 
+def Test_filter_is_not_modifier()
+  let tags = [{'a': 1, 'b': 2}, {'x': 3, 'y': 4}]
+  filter(tags, { _, v -> has_key(v, 'x') ? 1 : 0 })
+  assert_equal([#{x: 3, y: 4}], tags)
+enddef
+
 def Test_eval_command()
   let from = 3
   let to = 5