From 0e1b19120995c5ba488cbe16a5281a1bf4af3aab Mon Sep 17 00:00:00 2001 From: Olaf Alders Date: Mon, 18 Apr 2022 06:03:02 -0400 Subject: Check if TestFiletypeFuncs exists before defining it (#788) Fixes #783 --- extras/filetype.vim | 25 ++++++++++++++----------- 1 file changed, 14 insertions(+), 11 deletions(-) (limited to 'extras') diff --git a/extras/filetype.vim b/extras/filetype.vim index f6cb13a1..391c2d49 100644 --- a/extras/filetype.vim +++ b/extras/filetype.vim @@ -2506,17 +2506,20 @@ endif " Function called for testing all functions defined here. These are " script-local, thus need to be executed here. " Returns a string with error messages (hopefully empty). -func! TestFiletypeFuncs(testlist) - let output = '' - for f in a:testlist - try - exe f - catch - let output = output . "\n" . f . ": " . v:exception - endtry - endfor - return output -endfunc +" Check if function exists first. See https://github.com/vim/vim/issues/9890 +if !exists("*TestFiletypeFuncs") + func! TestFiletypeFuncs(testlist) + let output = '' + for f in a:testlist + try + exe f + catch + let output = output . "\n" . f . ": " . v:exception + endtry + endfor + return output + endfunc +endif " Restore 'cpoptions' let &cpo = s:cpo_save -- cgit v1.2.3