xavierd / clang_complete

Vim plugin that use clang for completing C/C++ code.
http://www.vim.org/scripts/script.php?script_id=3302
1.96k stars 308 forks source link

crash after autocommand call <SID>ClangCompleteInit() #566

Open xinranli1993 opened 5 years ago

xinranli1993 commented 5 years ago

I found that my vim will crash when opening file with .c or .cc appendix. Tracking down the issue to clang_complete, but it might also because of my configuration of python? Looking forward to your help, thanks! My clang_complete config:

  1 " path to directory where library can be found
  2  let g:clang_library_path='/usr/lib/llvm-3.8/lib'
  3  " or path directly to the library file
  4  let g:clang_library_path='/usr/lib64/libclang.so.7'

python version 3.7 vim version 8.1.542 clang_complete installed with pack

Debuging message from vim:

$ vim -V test.cc

chdir(/etc)
fchdir() to previous dir
sourcing "/etc/vimrc"
Searching for "archlinux.vim" in "/home/lxr/.vim,/usr/share/vim/vimfiles,/usr/share/vim/vim81,/usr/share/vim/vimfiles/after,/home/lxr/.vim/after"
Searching for "/home/lxr/.vim/archlinux.vim"
Searching for "/usr/share/vim/vimfiles/archlinux.vim"
chdir(/usr/share/vim/vimfiles)
fchdir() to previous dir
line 11: sourcing "/usr/share/vim/vimfiles/archlinux.vim"
finished sourcing /usr/share/vim/vimfiles/archlinux.vim
continuing in /etc/vimrc
Searching for "/usr/share/vim/vim81/archlinux.vim"
Searching for "/usr/share/vim/vimfiles/after/archlinux.vim"
Searching for "/home/lxr/.vim/after/archlinux.vim"
finished sourcing /etc/vimrc
chdir(/home/lxr)
fchdir() to previous dir
sourcing "$HOME/.vimrc"
Searching for "filetype.vim" in "/home/lxr/.vim,/usr/share/vim/vimfiles,/usr/share/vim/vim81,/usr/share/vim/vimfiles/after,/home/lxr/.vim/after"
Searching for "/home/lxr/.vim/filetype.vim"
Searching for "/usr/share/vim/vimfiles/filetype.vim"
Searching for "/usr/share/vim/vim81/filetype.vim"
chdir(/usr/share/vim/vim81)
fchdir() to previous dir
line 10: sourcing "/usr/share/vim/vim81/filetype.vim"
Searching for "ftdetect/*.vim" in "/home/lxr/.vim,/usr/share/vim/vimfiles,/usr/share/vim/vim81,/usr/share/vim/vimfiles/after,/home/lxr/.vim/after"
Searching for "/home/lxr/.vim/ftdetect/*.vim"
Searching for "/usr/share/vim/vimfiles/ftdetect/*.vim"
chdir(/usr/share/vim/vimfiles/ftdetect)
fchdir() to previous dir
line 2121: sourcing "/usr/share/vim/vimfiles/ftdetect/PKGBUILD.vim"
finished sourcing /usr/share/vim/vimfiles/ftdetect/PKGBUILD.vim
continuing in /usr/share/vim/vim81/filetype.vim
Searching for "/usr/share/vim/vim81/ftdetect/*.vim"
Searching for "/usr/share/vim/vimfiles/after/ftdetect/*.vim"
Searching for "/home/lxr/.vim/after/ftdetect/*.vim"
finished sourcing /usr/share/vim/vim81/filetype.vim
continuing in /home/lxr/.vimrc
Searching for "/usr/share/vim/vimfiles/after/filetype.vim"
Searching for "/home/lxr/.vim/after/filetype.vim"
chdir(/usr/share/vim/vim81/syntax)
fchdir() to previous dir
line 11: sourcing "/usr/share/vim/vim81/syntax/syntax.vim"
Searching for "syntax/synload.vim" in "/home/lxr/.vim,/usr/share/vim/vimfiles,/usr/share/vim/vim81,/usr/share/vim/vimfiles/after,/home/lxr/.vim/after"
Searching for "/home/lxr/.vim/syntax/synload.vim"
Searching for "/usr/share/vim/vimfiles/syntax/synload.vim"
Searching for "/usr/share/vim/vim81/syntax/synload.vim"
chdir(/usr/share/vim/vim81/syntax)
fchdir() to previous dir
line 19: sourcing "/usr/share/vim/vim81/syntax/synload.vim"
Searching for "syntax/syncolor.vim" in "/home/lxr/.vim,/usr/share/vim/vimfiles,/usr/share/vim/vim81,/usr/share/vim/vimfiles/after,/home/lxr/.vim/after"
Searching for "/home/lxr/.vim/syntax/syncolor.vim"
Searching for "/usr/share/vim/vimfiles/syntax/syncolor.vim"
Searching for "/usr/share/vim/vim81/syntax/syncolor.vim"
chdir(/usr/share/vim/vim81/syntax)
fchdir() to previous dir
line 21: sourcing "/usr/share/vim/vim81/syntax/syncolor.vim"
finished sourcing /usr/share/vim/vim81/syntax/syncolor.vim
continuing in /usr/share/vim/vim81/syntax/synload.vim
Searching for "/usr/share/vim/vimfiles/after/syntax/syncolor.vim"
Searching for "/home/lxr/.vim/after/syntax/syncolor.vim"
finished sourcing /usr/share/vim/vim81/syntax/synload.vim
continuing in /usr/share/vim/vim81/syntax/syntax.vim
finished sourcing /usr/share/vim/vim81/syntax/syntax.vim
continuing in /home/lxr/.vimrc
Searching for "filetype.vim" in "/home/lxr/.vim,/usr/share/vim/vimfiles,/usr/share/vim/vim81,/usr/share/vim/vimfiles/after,/home/lxr/.vim/after"
Searching for "/home/lxr/.vim/filetype.vim"
Searching for "/usr/share/vim/vimfiles/filetype.vim"
Searching for "/usr/share/vim/vim81/filetype.vim"
chdir(/usr/share/vim/vim81)
fchdir() to previous dir
line 20: sourcing "/usr/share/vim/vim81/filetype.vim"
finished sourcing /usr/share/vim/vim81/filetype.vim
continuing in /home/lxr/.vimrc
Searching for "/usr/share/vim/vimfiles/after/filetype.vim"
Searching for "/home/lxr/.vim/after/filetype.vim"
Searching for "indent.vim" in "/home/lxr/.vim,/usr/share/vim/vimfiles,/usr/share/vim/vim81,/usr/share/vim/vimfiles/after,/home/lxr/.vim/after"
Searching for "/home/lxr/.vim/indent.vim"
Searching for "/usr/share/vim/vimfiles/indent.vim"
Searching for "/usr/share/vim/vim81/indent.vim"
chdir(/usr/share/vim/vim81)
fchdir() to previous dir
line 20: sourcing "/usr/share/vim/vim81/indent.vim"
finished sourcing /usr/share/vim/vim81/indent.vim
continuing in /home/lxr/.vimrc
Searching for "/usr/share/vim/vimfiles/after/indent.vim"
Searching for "/home/lxr/.vim/after/indent.vim"
finished sourcing $HOME/.vimrc
Searching for "pack/*/start/*" in "/home/lxr/.vim,/usr/share/vim/vimfiles,/usr/share/vim/vim81,/usr/share/vim/vimfiles/after,/home/lxr/.vim/after"
Searching for "/home/lxr/.vim/pack/*/start/*"
chdir(/home/lxr/.vim)
fchdir() to previous dir
chdir(/home/lxr/.vim)
fchdir() to previous dir
chdir(/home/lxr/.vim)
fchdir() to previous dir
chdir(/home/lxr/.vim)
fchdir() to previous dir
Searching for "/usr/share/vim/vimfiles/pack/*/start/*"
Searching for "/usr/share/vim/vim81/pack/*/start/*"
Searching for "/usr/share/vim/vimfiles/after/pack/*/start/*"
Searching for "/home/lxr/.vim/after/pack/*/start/*"
Searching for "plugin/**/*.vim" in "/home/lxr/.vim,/usr/share/vim/vimfiles,/usr/share/vim/vim81,/usr/share/vim/vimfiles/after,/home/lxr/.vim/after"
Searching for "/home/lxr/.vim/plugin/**/*.vim"
chdir(/home/lxr/.vim/plugin)
fchdir() to previous dir
sourcing "/home/lxr/.vim/plugin/_pack.vim"
finished sourcing /home/lxr/.vim/plugin/_pack.vim
Searching for "/usr/share/vim/vimfiles/plugin/**/*.vim"
Searching for "/usr/share/vim/vim81/plugin/**/*.vim"
chdir(/usr/share/vim/vim81/plugin)
fchdir() to previous dir
sourcing "/usr/share/vim/vim81/plugin/getscriptPlugin.vim"
finished sourcing /usr/share/vim/vim81/plugin/getscriptPlugin.vim
chdir(/usr/share/vim/vim81/plugin)
fchdir() to previous dir
sourcing "/usr/share/vim/vim81/plugin/gzip.vim"
finished sourcing /usr/share/vim/vim81/plugin/gzip.vim
chdir(/usr/share/vim/vim81/plugin)
fchdir() to previous dir
sourcing "/usr/share/vim/vim81/plugin/logiPat.vim"
finished sourcing /usr/share/vim/vim81/plugin/logiPat.vim
chdir(/usr/share/vim/vim81/plugin)
fchdir() to previous dir
sourcing "/usr/share/vim/vim81/plugin/manpager.vim"
finished sourcing /usr/share/vim/vim81/plugin/manpager.vim
chdir(/usr/share/vim/vim81/plugin)
fchdir() to previous dir
sourcing "/usr/share/vim/vim81/plugin/matchparen.vim"
finished sourcing /usr/share/vim/vim81/plugin/matchparen.vim
chdir(/usr/share/vim/vim81/plugin)
fchdir() to previous dir
sourcing "/usr/share/vim/vim81/plugin/netrwPlugin.vim"
finished sourcing /usr/share/vim/vim81/plugin/netrwPlugin.vim
chdir(/usr/share/vim/vim81/plugin)
fchdir() to previous dir
sourcing "/usr/share/vim/vim81/plugin/rrhelper.vim"
finished sourcing /usr/share/vim/vim81/plugin/rrhelper.vim
chdir(/usr/share/vim/vim81/plugin)
fchdir() to previous dir
sourcing "/usr/share/vim/vim81/plugin/spellfile.vim"
finished sourcing /usr/share/vim/vim81/plugin/spellfile.vim
chdir(/usr/share/vim/vim81/plugin)
fchdir() to previous dir
sourcing "/usr/share/vim/vim81/plugin/tarPlugin.vim"
finished sourcing /usr/share/vim/vim81/plugin/tarPlugin.vim
chdir(/usr/share/vim/vim81/plugin)
fchdir() to previous dir
sourcing "/usr/share/vim/vim81/plugin/tohtml.vim"
finished sourcing /usr/share/vim/vim81/plugin/tohtml.vim
chdir(/usr/share/vim/vim81/plugin)
fchdir() to previous dir
sourcing "/usr/share/vim/vim81/plugin/vimballPlugin.vim"
finished sourcing /usr/share/vim/vim81/plugin/vimballPlugin.vim
chdir(/usr/share/vim/vim81/plugin)
fchdir() to previous dir
sourcing "/usr/share/vim/vim81/plugin/zipPlugin.vim"
finished sourcing /usr/share/vim/vim81/plugin/zipPlugin.vim
Searching for "pack/*/start/*" in "/home/lxr/.vim,/usr/share/vim/vimfiles,/usr/share/vim/vim81,/usr/share/vim/vimfiles/after,/home/lxr/.vim/after"
Searching for "/home/lxr/.vim/pack/*/start/*"
chdir(/home/lxr/.vim/pack/default/start)
fchdir() to previous dir
chdir(/home/lxr/.vim/pack/default/start/clang_complete/plugin)
fchdir() to previous dir
sourcing "/home/lxr/.vim/pack/default/start/clang_complete/plugin/clang_complete.vim"
finished sourcing /home/lxr/.vim/pack/default/start/clang_complete/plugin/clang_complete.vim
chdir(/home/lxr/.vim/pack/default/start)
fchdir() to previous dir
chdir(/home/lxr/.vim/pack/default/start/completor.vim/plugin)
fchdir() to previous dir
sourcing "/home/lxr/.vim/pack/default/start/completor.vim/plugin/completor.vim"
finished sourcing /home/lxr/.vim/pack/default/start/completor.vim/plugin/completor.vim
Searching for "/usr/share/vim/vimfiles/pack/*/start/*"
Searching for "/usr/share/vim/vim81/pack/*/start/*"
Searching for "/usr/share/vim/vimfiles/after/pack/*/start/*"
Searching for "/home/lxr/.vim/after/pack/*/start/*"
Searching for "plugin/**/*.vim" in "/home/lxr/.vim,/home/lxr/.vim/pack/default/start/completor.vim,/home/lxr/.vim/pack/default/start/clang_complete,/usr/share/vim/vimfiles,/usr/share/vim/vim81,/usr/share/vim/vimfiles/after,/home/lxr/.vim/after"
Searching for "/usr/share/vim/vimfiles/after/plugin/**/*.vim"
Searching for "/home/lxr/.vim/after/plugin/**/*.vim"
not found in 'runtimepath': "plugin/**/*.vim"
Reading viminfo file "/home/lxr/.viminfo" info oldfiles
Press ENTER or type command to continue

Executing BufNewFile Autocommands for "*.cc"
autocommand if exists("cynlib_syntax_for_cc")|setf cynlib|else|setf cpp|endif
Executing FileType Autocommands for "*"
autocommand exe "set syntax=" . expand("<amatch>")
Executing Syntax Autocommands for "*"
autocommand call s:SynSet()
Searching for "syntax/cpp.vim syntax/cpp/*.vim" in "/home/lxr/.vim,/home/lxr/.vim/pack/default/start/completor.vim,/home/lxr/.vim/pack/default/start/clang_complete,/usr/share/vim/vimfiles,/usr/share/vim/vim81,/usr/share/vim/vimfiles
/after,/home/lxr/.vim/after"
Searching for "/home/lxr/.vim/syntax/cpp.vim"
Searching for "/home/lxr/.vim/syntax/cpp/*.vim"
Searching for "/home/lxr/.vim/pack/default/start/completor.vim/syntax/cpp.vim"
Searching for "/home/lxr/.vim/pack/default/start/completor.vim/syntax/cpp/*.vim"
Searching for "/home/lxr/.vim/pack/default/start/clang_complete/syntax/cpp.vim"
Searching for "/home/lxr/.vim/pack/default/start/clang_complete/syntax/cpp/*.vim"
Searching for "/usr/share/vim/vimfiles/syntax/cpp.vim"
Searching for "/usr/share/vim/vimfiles/syntax/cpp/*.vim"
Searching for "/usr/share/vim/vim81/syntax/cpp.vim"
chdir(/usr/share/vim/vim81/syntax)
fchdir() to previous dir
line 24: sourcing "/usr/share/vim/vim81/syntax/cpp.vim"
Searching for "syntax/c.vim" in "/home/lxr/.vim,/home/lxr/.vim/pack/default/start/completor.vim,/home/lxr/.vim/pack/default/start/clang_complete,/usr/share/vim/vimfiles,/usr/share/vim/vim81,/usr/share/vim/vimfiles/after,/home/lxr/.v
im/after"
Searching for "/home/lxr/.vim/syntax/c.vim"
Searching for "/home/lxr/.vim/pack/default/start/completor.vim/syntax/c.vim"
Searching for "/home/lxr/.vim/pack/default/start/clang_complete/syntax/c.vim"
Searching for "/usr/share/vim/vimfiles/syntax/c.vim"
Searching for "/usr/share/vim/vim81/syntax/c.vim"
chdir(/usr/share/vim/vim81/syntax)
fchdir() to previous dir
line 13: sourcing "/usr/share/vim/vim81/syntax/c.vim"
finished sourcing /usr/share/vim/vim81/syntax/c.vim
continuing in /usr/share/vim/vim81/syntax/Traceback (most recent call last):
                                                                              File "/usr/lib/python3.7/encodings/__init__.py", line 31, in <module>
                                                                                                                                                       import codecs
                                                                                                                                                                      File "/usr/lib/python3.7/codecs.py", line 96
                                                                                                                                                                                                                      *, _is_text_encoding=None):
              ^
               SyntaxError: invalid syntax
                                          %                                                                                                                                                                                             

Thanks again!

talih0 commented 5 years ago

From the error output, this doesn't look like clang_complete issue to me. Does the following throw the same error? $ python3.7 -c "import codecs"

danboxall1988 commented 2 years ago

I know this was a long time ago, but I'm having the same issue. Running $ python3 -c "import codecs" does not throw an error.