diff src/testdir/test_vim9_func.vim @ 22496:454b78ca8247 v8.2.1796

patch 8.2.1796: Vim9: invalid memory access with weird function name Commit: https://github.com/vim/vim/commit/7b5d5442696d86daab062592d5c86c829757c352 Author: Bram Moolenaar <Bram@vim.org> Date: Sun Oct 4 13:42:34 2020 +0200 patch 8.2.1796: Vim9: invalid memory access with weird function name Problem: Vim9: invalid memory access with weird function name. (Dhiraj Mishra) Solution: Check the name is valid. Add a test.
author Bram Moolenaar <Bram@vim.org>
date Sun, 04 Oct 2020 13:45:04 +0200
parents 990b47e15cd7
children 04a9b1399d8e
line wrap: on
line diff
--- a/src/testdir/test_vim9_func.vim
+++ b/src/testdir/test_vim9_func.vim
@@ -1906,6 +1906,32 @@ def Test_closure_in_map()
   delete('XclosureDir', 'rf')
 enddef
 
+def Test_invalid_function_name()
+  var lines =<< trim END
+      vim9script
+      def s: list<string>
+  END
+  CheckScriptFailure(lines, 'E129:')
+
+  lines =<< trim END
+      vim9script
+      def g: list<string>
+  END
+  CheckScriptFailure(lines, 'E129:')
+
+  lines =<< trim END
+      vim9script
+      def <SID>: list<string>
+  END
+  CheckScriptFailure(lines, 'E884:')
+
+  lines =<< trim END
+      vim9script
+      def F list<string>
+  END
+  CheckScriptFailure(lines, 'E488:')
+enddef
+
 def Test_partial_call()
   var Xsetlist = function('setloclist', [0])
   Xsetlist([], ' ', {'title': 'test'})