summaryrefslogtreecommitdiffstats
path: root/extras/filetype.vim
diff options
context:
space:
mode:
Diffstat (limited to 'extras/filetype.vim')
-rw-r--r--extras/filetype.vim25
1 files changed, 14 insertions, 11 deletions
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