vim-jp/issues — Issue #122: neocomplcacheにおいて &l:omnifunc が ClangComplete のとき、  neocomplcache#manual_omni_complete() を使用すると SEGVる。 
Author: Shougo
Created: 2012-01-11 03:07:15+00:00
State: open

2chにて報告されていた問題です。

http://toro.2ch.net/test/read.cgi/unix/1322212163/82

> neocomplcacheにおいて &l:omnifunc が ClangComplete のとき、
>neocomplcache#manual_omni_complete() を使用すると SEGVる。

>neocomplcache#manual_omni_complete() から
>omni_complete.vim の s:source.get_complete_words() 内で
>call('ClangComplete', [0, '']) が呼ばれると
>g:clang_use_library == 1 のとき ClangComplete() で dllが使用されるとSEGVる。
>これは g:neocomplcache_enable_prefetch の値に関係なく起こる。
>gdb
>Program received signal SIGSEGV, Segmentation fault.
>0x004197e3 in ins_compl_next (allow_get_expansion=0, count=1, insert_match=1)
>at edit.c:4611
>4611 else if (compl_shows_dir == BACKWARD

現在のneocomplcacheはclang_completeのオムニ補完関数に対応していません。
だから、動く保証は全くないのですが、SEGVするのはさすがにVimの問題だと思うためこちらに報告しました。