Update runtime files
diff --git a/runtime/autoload/ccomplete.vim b/runtime/autoload/ccomplete.vim
index 971e736..95a20e1 100644
--- a/runtime/autoload/ccomplete.vim
+++ b/runtime/autoload/ccomplete.vim
@@ -1,13 +1,13 @@
 " Vim completion script
 " Language:	C
 " Maintainer:	Bram Moolenaar <Bram@vim.org>
-" Last Change:	2020 Apr 08
+" Last Change:	2020 Nov 14
 
 let s:cpo_save = &cpo
 set cpo&vim
 
 " This function is used for the 'omnifunc' option.
-function! ccomplete#Complete(findstart, base)
+func ccomplete#Complete(findstart, base)
   if a:findstart
     " Locate the start of the item, including ".", "->" and "[...]".
     let line = getline('.')
@@ -244,7 +244,7 @@
   return map(res, 's:Tagline2item(v:val, brackets)')
 endfunc
 
-function! s:GetAddition(line, match, memarg, bracket)
+func s:GetAddition(line, match, memarg, bracket)
   " Guess if the item is an array.
   if a:bracket && match(a:line, a:match . '\s*\[') > 0
     return '['
@@ -260,13 +260,13 @@
     endif
   endif
   return ''
-endfunction
+endfunc
 
 " Turn the tag info "val" into an item for completion.
 " "val" is is an item in the list returned by taglist().
 " If it is a variable we may add "." or "->".  Don't do it for other types,
 " such as a typedef, by not including the info that s:GetAddition() uses.
-function! s:Tag2item(val)
+func s:Tag2item(val)
   let res = {'match': a:val['name']}
 
   let res['extra'] = s:Tagcmd2extra(a:val['cmd'], a:val['name'], a:val['filename'])
@@ -289,10 +289,10 @@
   endif
 
   return res
-endfunction
+endfunc
 
 " Use all the items in dictionary for the "info" entry.
-function! s:Dict2info(dict)
+func s:Dict2info(dict)
   let info = ''
   for k in sort(keys(a:dict))
     let info  .= k . repeat(' ', 10 - len(k))
@@ -307,7 +307,7 @@
 endfunc
 
 " Parse a tag line and return a dictionary with items like taglist()
-function! s:ParseTagline(line)
+func s:ParseTagline(line)
   let l = split(a:line, "\t")
   let d = {}
   if len(l) >= 3
@@ -334,12 +334,12 @@
   endif
 
   return d
-endfunction
+endfunc
 
 " Turn a match item "val" into an item for completion.
 " "val['match']" is the matching item.
 " "val['tagline']" is the tagline in which the last part was found.
-function! s:Tagline2item(val, brackets)
+func s:Tagline2item(val, brackets)
   let line = a:val['tagline']
   let add = s:GetAddition(line, a:val['match'], [a:val], a:brackets == '')
   let res = {'word': a:val['match'] . a:brackets . add }
@@ -377,10 +377,10 @@
     let res['menu'] = s:Tagcmd2extra(s, a:val['match'], matchstr(line, '[^\t]*\t\zs[^\t]*\ze\t'))
   endif
   return res
-endfunction
+endfunc
 
 " Turn a command from a tag line to something that is useful in the menu
-function! s:Tagcmd2extra(cmd, name, fname)
+func s:Tagcmd2extra(cmd, name, fname)
   if a:cmd =~ '^/^'
     " The command is a search command, useful to see what it is.
     let x = matchstr(a:cmd, '^/^\s*\zs.*\ze$/')
@@ -395,13 +395,13 @@
     let x = a:cmd . ' - ' . a:fname
   endif
   return x
-endfunction
+endfunc
 
 " Find composing type in "lead" and match items[0] with it.
 " Repeat this recursively for items[1], if it's there.
 " When resolving typedefs "depth" is used to avoid infinite recursion.
 " Return the list of matches.
-function! s:Nextitem(lead, items, depth, all)
+func s:Nextitem(lead, items, depth, all)
 
   " Use the text up to the variable name and split it in tokens.
   let tokens = split(a:lead, '\s\+\|\<')
@@ -485,7 +485,7 @@
   endfor
 
   return res
-endfunction
+endfunc
 
 
 " Search for members of structure "typename" in tags files.
@@ -493,7 +493,7 @@
 " Each match is a dictionary with "match" and "tagline" entries.
 " When "all" is non-zero find all, otherwise just return 1 if there is any
 " member.
-function! s:StructMembers(typename, items, all)
+func s:StructMembers(typename, items, all)
   " Todo: What about local structures?
   let fnames = join(map(tagfiles(), 'escape(v:val, " \\#%")'))
   if fnames == ''
@@ -586,12 +586,12 @@
 
   " Failed to find anything.
   return []
-endfunction
+endfunc
 
 " For matching members, find matches for following items.
 " When "all" is non-zero find all, otherwise just return 1 if there is any
 " member.
-function! s:SearchMembers(matches, items, all)
+func s:SearchMembers(matches, items, all)
   let res = []
   for i in range(len(a:matches))
     let typename = ''