updated for version 7.3.758
Problem:    Matchit plugin does not handle space in #ifdef.
Solution:   Change matching pattern to allow spaces. (Mike Morearty)
diff --git a/runtime/macros/matchit.vim b/runtime/macros/matchit.vim
index 03dae6a..74c1a1e 100644
--- a/runtime/macros/matchit.vim
+++ b/runtime/macros/matchit.vim
@@ -131,7 +131,7 @@
     " let default = substitute(escape(&mps, '[$^.*~\\/?]'), '[,:]\+',
     "  \ '\\|', 'g').'\|\/\*\|\*\/\|#if\>\|#ifdef\>\|#else\>\|#elif\>\|#endif\>'
     let default = escape(&mps, '[$^.*~\\/?]') . (strlen(&mps) ? "," : "") .
-      \ '\/\*:\*\/,#if\%(def\)\=:#else\>:#elif\>:#endif\>'
+      \ '\/\*:\*\/,#\s*if\%(def\)\=:#\s*else\>:#\s*elif\>:#\s*endif\>'
     " s:all = pattern with all the keywords
     let match_words = match_words . (strlen(match_words) ? "," : "") . default
     if match_words !~ s:notslash . '\\\d'
@@ -649,7 +649,7 @@
   "   s:all	regexp based on s:pat and the default groups
   " This part is copied and slightly modified from s:Match_wrapper().
   let default = escape(&mps, '[$^.*~\\/?]') . (strlen(&mps) ? "," : "") .
-    \ '\/\*:\*\/,#if\%(def\)\=:#else\>:#elif\>:#endif\>'
+    \ '\/\*:\*\/,#\s*if\%(def\)\=:#\s*else\>:#\s*elif\>:#\s*endif\>'
   " Allow b:match_words = "GetVimMatchWords()" .
   if b:match_words =~ ":"
     let match_words = b:match_words
diff --git a/src/version.c b/src/version.c
index 562bb04..5a0f815 100644
--- a/src/version.c
+++ b/src/version.c
@@ -726,6 +726,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    758,
+/**/
     757,
 /**/
     756,