Giter Site home page Giter Site logo

emacs-clang-complete-async's People

Contributors

golevka avatar joonhwan avatar maxc01 avatar nicolamontecchio avatar to1ne avatar toojays avatar wentasah avatar yaruopooner avatar yasuyk avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

emacs-clang-complete-async's Issues

Incremental completion not working

Hi,
I've setup emacs-clang-complete-async and it is working nicely with some annoyances, see this issue and of course the one I'm opening right now.

Consider this snippet:

    #include <vector>
    int main(){
        std::vector<int> var;
        var.|
    }

where | symbolises point. When I start completion all the member functions of std::vector show up, however, if I type a (for restricting the completions to all functions starting with a), the completion menu is empty (it vanishes).

Edit: I just wanted to state that I know about using C-s for narrowing the list of completion candidates, however, it would be more consistent if ac-clang could complete a function in any situation, meaning even after the first letters of a function name are already typed.

My config is (I omitted the require statements and everything that is not related to configuring it for c-mode):

    ;; ac common settings
    (setq ac-quick-help-delay 0.5)
    (setq ac-auto-start 4) ;; so it starts after the firth letter
    (setq ac-auto-show-menu 1)
    (setq ac-menu-height 10)
    (setq ac-ignore-case nil)
    (setq ac-use-menu-map t)
    (global-auto-complete-mode t)
    (setq ac-dwim t)

    (defun ac-cc-mode-clang-setup ()
      (message " * calling ac-cc-mode-clang-setup")
      (setq ac-clang-complete-executable "~/.emacs.d/site-lisp/emacs-clang-complete-async/clang-complete")
      (setq ac-clang-cflags
        (mapcar (lambda (item)(concat "-I" item))
            (split-string
             "
               /usr/include/c++/4.7
               /usr/include/c++/4.7/x86_64-linux-gnu
               /usr/include/c++/4.7/backward
               /usr/lib/gcc/x86_64-linux-gnu/4.7/include
               /usr/local/include
               /usr/lib/gcc/x86_64-linux-gnu/4.7/include-fixed
               /usr/include/x86_64-linux-gnu
               /usr/include
               "
             )))
      (setq ac-clang-flags ac-clang-cflags)
      ;; (setq ac-sources (append '(ac-source-clang-async ac-source-yasnippet) ac-sources))
      (setq ac-sources '(ac-source-clang-async))
      (ac-clang-launch-completion-process)
      (ac-clang-update-cmdlineargs))

    (defun ac-cc-mode-clang-config ()
      (message " * calling ac-cc-mode-clang-config")
      (add-hook 'c-mode-common-hook 'ac-cc-mode-clang-setup)
      (add-hook 'auto-complete-mode-hook 'ac-common-setup))

    (ac-cc-mode-clang-config)

llvm 3.4 compatibility

--- a/src/completion.h  2013-05-26 17:27:46.000000000 +0200
+++ b/src/completion.h  2014-02-11 21:40:18.000000000 +0100
@@ -3,6 +3,7 @@


 #include <clang-c/Index.h>
+#include <stdio.h>


 typedef struct __completion_Session_struct

unable to auto-complete for std thread library.

This is the config I have and it works fine for a lot of libraries, but the library
as installed on ubuntu 13.04 doesn't work at all. Should one declare the defines
used in thread library like

if defined(_GLIBCXX_HAS_GTHREADS) && defined(_GLIBCXX_USE_C99_STDINT_TR1)

somewhere in a cflags file ?

(require 'auto-complete-config)
(add-to-list 'ac-dictionary-directories "~/.emacs.d/elpa/auto-complete-20130503.2013/dict")
(setq ac-auto-start 1)
(setq ac-auto-show-menu t)
(ac-config-default)

(require 'auto-complete-clang-async)

(defun ac-cc-mode-setup ()
(setq ac-clang-complete-executable "~/Downloads/emacs-clang-complete-async-master/clang-complete")

(setq ac-clang-cflags
(mapcar (lambda (item)(concat "-I" item))
(split-string
"
/usr/include/c++/4.7
/usr/include/c++/4.7/x86_64-linux-gnu
/usr/include/c++/4.7/backward
/usr/lib/gcc/x86_64-linux-gnu/4.7/include
/usr/local/include
/usr/lib/gcc/x86_64-linux-gnu/4.7/include-fixed
/usr/include/x86_64-linux-gnu
/usr/include
"
)))
(setq ac-sources '(ac-source-clang-async))
(ac-clang-launch-completion-process)
)

(defun my-ac-config ()
(add-hook 'c-mode-common-hook 'ac-cc-mode-setup)
(add-hook 'auto-complete-mode-hook 'ac-common-setup)
(global-auto-complete-mode t))

(my-ac-config)

Incorrect completions

Here's an example; I set HOME to an empty directory, started emacs, installed auto-complete from marmalade or melpa, loaded auto-complete-config explicitly (that step is missing from your README), then loaded your .el file and eval'ed the code from README.org.

Then I started editing at https://github.com/llvm-mirror/llvm/blob/master/lib/CodeGen/Analysis.cpp#L37

Note the completions listed are actually global symbols, most (all?) of which aren't valid at that position.

quack

It make the computer slow!

This plugin will run a process named clang-complete for every single buffer in mode of c++-mode.
So the number of the process clang-complete depends on how many buffer I create.
why can't just use a common process?

Failed to make in gentoo amd64 linux-3.7.9

ld failed when doing make in gentoo amd64

└┌(%:~/.emacs.d/emacs-clang-complete-async)┌- make

"clang" -I/usr/include -DNDEBUG -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -fPIC -Wall -Wextra -pedantic -O3 -I./src -c -o src/obj/completion_serv.o ./src/completion_serv.c
"clang" -I/usr/include -DNDEBUG -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -fPIC -Wall -Wextra -pedantic -O3 -I./src -c -o src/obj/parse_results.o ./src/parse_results.c
"clang" -I/usr/include -DNDEBUG -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -fPIC -Wall -Wextra -pedantic -O3 -I./src -c -o src/obj/msg_dispatcher.o ./src/msg_dispatcher.c
"clang" -I/usr/include -DNDEBUG -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -fPIC -Wall -Wextra -pedantic -O3 -I./src -c -o src/obj/main.o ./src/main.c
"clang" -I/usr/include -DNDEBUG -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -fPIC -Wall -Wextra -pedantic -O3 -I./src -c -o src/obj/msg_handlers.o ./src/msg_handlers.c
"clang" -I/usr/include -DNDEBUG -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -fPIC -Wall -Wextra -pedantic -O3 -I./src src/obj/completion_serv.o src/obj/parse_results.o src/obj/msg_dispatcher.o src/obj/main.o src/obj/msg_handlers.o -L/usr/lib64/llvm -lpthread -lffi -ldl -lm -lLLVMCppBackendCodeGen -lLLVMCppBackendInfo -lLLVMAsmParser -lLLVMTableGen -lLLVMDebugInfo -lLLVMX86AsmParser -lLLVMX86CodeGen -lLLVMSelectionDAG -lLLVMAsmPrinter -lLLVMX86Disassembler -lLLVMX86Desc -lLLVMX86Info -lLLVMX86AsmPrinter -lLLVMX86Utils -lLLVMJIT -lLLVMMCDisassembler -lLLVMMCParser -lLLVMInstrumentation -lLLVMInterpreter -lLLVMCodeGen -lLLVMipo -lLLVMVectorize -lLLVMScalarOpts -lLLVMInstCombine -lLLVMLinker -lLLVMTransformUtils -lLLVMipa -lLLVMAnalysis -lLLVMArchive -lLLVMBitReader -lLLVMBitWriter -lLLVMMCJIT -lLLVMRuntimeDyld -lLLVMExecutionEngine -lLLVMTarget -lLLVMMC -lLLVMObject -lLLVMCore -lLLVMSupport -lstdc++ -lclang -o clang-complete
/usr/bin/x86_64-pc-linux-gnu-ld: warning: libLLVM-3.2svn.so, needed by /usr/lib64/llvm/libclang.so, not found (try using -rpath or -rpath-link)
/usr/lib64/llvm/libclang.so: undefined reference to llvm::sys::fs::make_absolute(llvm::SmallVectorImpl<char>&)' /usr/lib64/llvm/libclang.so: undefined reference tollvm::EnableStatistics()'
/usr/lib64/llvm/libclang.so: undefined reference to vtable for llvm::format_object_base' /usr/lib64/llvm/libclang.so: undefined reference tollvm::raw_ostream::operator<<(llvm::format_object_base const&)'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::SmallPtrSetImpl::FindBucketFor(void const*) const' /usr/lib64/llvm/libclang.so: undefined reference tovtable for llvm::PrettyStackTraceString'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::raw_ostream::operator<<(unsigned long)' /usr/lib64/llvm/libclang.so: undefined reference tollvm::sys::fs::is_directory(llvm::sys::fs::file_status)'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::FoldingSetNodeID::AddPointer(void const*)' /usr/lib64/llvm/libclang.so: undefined reference tollvm::SmallPtrSetImpl::shrink_and_clear()'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::APInt::APInt(unsigned int, unsigned int, unsigned long const*)' /usr/lib64/llvm/libclang.so: undefined reference tollvm::sys::path::root_path(llvm::StringRef)'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::sys::fs::rename(llvm::Twine const&, llvm::Twine const&)' /usr/lib64/llvm/libclang.so: undefined reference tollvm::APFloat::Profile(llvm::FoldingSetNodeID&) const'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::sys::MutexImpl::acquire()' /usr/lib64/llvm/libclang.so: undefined reference tollvm::APInt::EqualSlowCase(unsigned long) const'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::StringRef::getAsInteger(unsigned int, llvm::APInt&) const' /usr/lib64/llvm/libclang.so: undefined reference tollvm::DOT::EscapeString(std::string const&)'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::StringRef::find_first_not_of(llvm::StringRef, unsigned long) const' /usr/lib64/llvm/libclang.so: undefined reference tollvm::APFloat::add(llvm::APFloat const&, llvm::APFloat::roundingMode)'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::yaml::Stream::begin()' /usr/lib64/llvm/libclang.so: undefined reference tollvm::APInt::rotr(unsigned int) const'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::APInt::toString(unsigned int, bool) const' /usr/lib64/llvm/libclang.so: undefined reference tollvm::APInt::urem(llvm::APInt const&) const'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::yaml::Stream::end()' /usr/lib64/llvm/libclang.so: undefined reference tollvm::MemoryBuffer::getOpenFile(int, char const_, llvm::OwningPtrllvm::MemoryBuffer&, unsigned long, unsigned long, long, bool)'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::sys::path::remove_filename(llvm::SmallVectorImpl<char>&)' /usr/lib64/llvm/libclang.so: undefined reference tollvm::APFloat::Bogus'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::Triple::isArch32Bit() const' /usr/lib64/llvm/libclang.so: undefined reference tollvm::report_fatal_error(std::string const&)'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::sys::fs::remove(llvm::Twine const&, bool&)' /usr/lib64/llvm/libclang.so: undefined reference tollvm::APInt::operator|=(llvm::APInt const&)'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::Twine::toVector(llvm::SmallVectorImpl<char>&) const' /usr/lib64/llvm/libclang.so: undefined reference tollvm::TimeRecord::getCurrentTime(bool)'
/usr/lib64/llvm/libclang.so: undefined reference to typeinfo for llvm::PrettyStackTraceEntry' /usr/lib64/llvm/libclang.so: undefined reference tollvm::StringRef::find(llvm::StringRef, unsigned long) const'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::report_fatal_error(char const_)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::APInt::sdiv_ov(llvm::APInt const&, bool&) const'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::FoldingSetNodeID::AddInteger(int)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::APInt::operator*(llvm::APInt const&) const'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::sys::path::system_temp_directory(bool, llvm::SmallVectorImpl<char>&)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::APInt::ashr(unsigned int) const'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::APInt::rotl(unsigned int) const' /usr/lib64/llvm/libclang.so: undefined reference to llvm::sys::AtomicIncrement(unsigned int volatile*)'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::FoldingSetNodeID::AddInteger(unsigned long)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::Triple::getVendorName() const'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::raw_fd_ostream::raw_fd_ostream(int, bool, bool)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::LockFileManager::LockFileManager(llvm::StringRef)'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::APInt::slt(llvm::APInt const&) const' /usr/lib64/llvm/libclang.so: undefined reference to llvm::APInt::trunc(unsigned int) const'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::SmallPtrSetImpl::~SmallPtrSetImpl()' /usr/lib64/llvm/libclang.so: undefined reference to llvm::sys::Process::StandardErrColumns()'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::StringRef::upper() const' /usr/lib64/llvm/libclang.so: undefined reference to llvm::APFloat::toString(llvm::SmallVectorImpl&, unsigned int, unsigned int) const'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::Regex::isValid(std::string&)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::Twine::toStringRef(llvm::SmallVectorImpl&) const'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::APInt::operator+=(llvm::APInt const&)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::raw_fd_ostream::~raw_fd_ostream()'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::getAsSignedInteger(llvm::StringRef, unsigned int, long long&)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::APInt::EqualSlowCase(llvm::APInt const&) const'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::sys::Program::ChangeStdoutToBinary()' /usr/lib64/llvm/libclang.so: undefined reference to llvm::APFloat::divide(llvm::APFloat const&, llvm::APFloat::roundingMode)'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::APFloat::convertFromString(llvm::StringRef, llvm::APFloat::roundingMode)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::system_category()'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::raw_svector_ostream::raw_svector_ostream(llvm::SmallVectorImpl<char>&)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::APFloat::convertToDouble() const'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::sys::path::native(llvm::Twine const&, llvm::SmallVectorImpl<char>&)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::MCSectionMachO::ParseSectionSpecifier(llvm::StringRef, llvm::StringRef&, llvm::StringRef&, unsigned int&, bool&, unsigned int&)'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::Twine::str() const' /usr/lib64/llvm/libclang.so: undefined reference to llvm::sys::path::extension(llvm::StringRef)'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::SmallPtrSetImpl::erase_imp(void const_)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::Triple::getOSVersion(unsigned int&, unsigned int&, unsigned int&) const'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::FoldingSetImpl::GetOrInsertNode(llvm::FoldingSetImpl::Node_)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::raw_ostream::write(char const*, unsigned long)'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::Triple::getOSName() const' /usr/lib64/llvm/libclang.so: undefined reference to llvm::sys::AtomicDecrement(unsigned int volatile*)'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::MemoryBuffer::getNewMemBuffer(unsigned long, llvm::StringRef)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::sys::MutexImpl::release()'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::APFloat::PPCDoubleDouble' /usr/lib64/llvm/libclang.so: undefined reference to llvm::yaml::ScalarNode::getValue(llvm::SmallVectorImpl&) const'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::StringMapImpl::LookupBucketFor(llvm::StringRef)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::APInt::ssub_ov(llvm::APInt const&, bool&) const'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::APInt::shlSlowCase(unsigned int) const' /usr/lib64/llvm/libclang.so: undefined reference to typeinfo for llvm::CrashRecoveryContextCleanup'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::Triple::getOSTypeName(llvm::Triple::OSType)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::APFloat::IEEEsingle'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::StringRef::compare_lower(llvm::StringRef) const' /usr/lib64/llvm/libclang.so: undefined reference to llvm::Triple::get64BitArchVariant() const'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::sys::path::has_parent_path(llvm::Twine const&)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::CrashRecoveryContext::Enable()'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::raw_ostream::operator<<(long)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::APInt::operator-(llvm::APInt const&) const'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::APInt::operator=(unsigned long)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::sys::getDefaultTargetTriple()'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::sys::path::parent_path(llvm::StringRef)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::sys::path::filename(llvm::StringRef)'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::APInt::operator-=(llvm::APInt const&)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::outs()'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::CrashRecoveryContext::RunSafelyOnThread(void (_)(void_), void_, unsigned int)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::PrettyStackTraceEntry::PrettyStackTraceEntry()'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::APInt::smul_ov(llvm::APInt const&, bool&) const' /usr/lib64/llvm/libclang.so: undefined reference to llvm::Timer::stopTimer()'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::raw_ostream::operator<<(double)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::Triple::setArch(llvm::Triple::ArchType)'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::APFloat::IEEEquad' /usr/lib64/llvm/libclang.so: undefined reference to llvm::MCContext::MCContext(llvm::MCAsmInfo const&, llvm::MCRegisterInfo const&, llvm::MCObjectFileInfo const_, llvm::SourceMgr const_)'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::yaml::Stream::~Stream()' /usr/lib64/llvm/libclang.so: undefined reference tollvm::FoldingSetNodeID::ComputeHash() const'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::sys::TimeValue::normalize()' /usr/lib64/llvm/libclang.so: undefined reference tollvm::APInt::operator+(llvm::APInt const&) const'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::CrashRecoveryContext::HandleCrash()' /usr/lib64/llvm/libclang.so: undefined reference tollvm::APFloat::operator=(llvm::APFloat const&)'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::APInt::OrSlowCase(llvm::APInt const&) const' /usr/lib64/llvm/libclang.so: undefined reference tollvm::APInt::operator_=(llvm::APInt const&)'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::sys::fs::unique_file(llvm::Twine const&, int&, llvm::SmallVectorImpl<char>&, bool, unsigned int)' /usr/lib64/llvm/libclang.so: undefined reference tollvm::Triple::getiOSVersion(unsigned int&, unsigned int&, unsigned int&) const'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::APInt::sext(unsigned int) const' /usr/lib64/llvm/libclang.so: undefined reference tollvm::sys::locale::isPrint(int)'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::sys::Path::Path(llvm::StringRef)' /usr/lib64/llvm/libclang.so: undefined reference tollvm::FoldingSetImpl::clear()'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::APFloat::APFloat(llvm::APInt const&, bool)' /usr/lib64/llvm/libclang.so: undefined reference tollvm::APFloat::subtract(llvm::APFloat const&, llvm::APFloat::roundingMode)'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::sys::Path::makeUnique(bool, std::string*)' /usr/lib64/llvm/libclang.so: undefined reference tollvm::sys::PathSeparator'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::FoldingSetNodeID::AddInteger(unsigned int)' /usr/lib64/llvm/libclang.so: undefined reference tollvm::MemoryBuffer::getMemBufferCopy(llvm::StringRef, llvm::StringRef)'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::sys::fs::is_directory(llvm::Twine const&, bool&)' /usr/lib64/llvm/libclang.so: undefined reference tollvm::APFloat::APFloat(llvm::fltSemantics const&, llvm::APFloat::fltCategory, bool)'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::SmallPtrSetImpl::CopyFrom(llvm::SmallPtrSetImpl const&)' /usr/lib64/llvm/libclang.so: undefined reference tollvm::APFloat::x87DoubleExtended'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::Triple::get32BitArchVariant() const' /usr/lib64/llvm/libclang.so: undefined reference tollvm::APInt::operator--()'
/usr/lib64/llvm/libclang.so: undefined reference to typeinfo for llvm::format_object_base' /usr/lib64/llvm/libclang.so: undefined reference tollvm::sys::path::const_iterator::operator!=(llvm::sys::path::const_iterator const&) const'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::Triple::setArchName(llvm::StringRef)' /usr/lib64/llvm/libclang.so: undefined reference tollvm::MemoryBuffer::getSTDIN(llvm::OwningPtrllvm::MemoryBuffer&)'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::APInt::clearBit(unsigned int)' /usr/lib64/llvm/libclang.so: undefined reference tollvm::BumpPtrAllocator::getTotalMemory() const'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::APInt::countLeadingZerosSlowCase() const' /usr/lib64/llvm/libclang.so: undefined reference tollvm::APFloat::makeNaN(llvm::fltSemantics const&, bool, bool, llvm::APInt const_)'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::Triple::setTriple(llvm::Twine const&)' /usr/lib64/llvm/libclang.so: undefined reference tollvm::CrashRecoveryContextCleanup::~CrashRecoveryContextCleanup()'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::sys::fs::detail::directory_iterator_increment(llvm::sys::fs::detail::DirIterState&)' /usr/lib64/llvm/libclang.so: undefined reference tollvm::sys::Path::GetMainExecutable(char const_, void_)'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::APInt::countLeadingOnes() const' /usr/lib64/llvm/libclang.so: undefined reference tollvm::TargetRegistry::lookupTarget(std::string const&, std::string&)'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::APFloat::APFloat(double)' /usr/lib64/llvm/libclang.so: undefined reference tollvm::BumpPtrAllocator::PrintStats() const'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::StringRef::lower() const' /usr/lib64/llvm/libclang.so: undefined reference tollvm::APInt::countPopulationSlowCase() const'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::sys::path::is_separator(char)' /usr/lib64/llvm/libclang.so: undefined reference tollvm::FoldingSetNodeID::AddNodeID(llvm::FoldingSetNodeID const&)'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::getNonStreamedMemoryObject(unsigned char const_, unsigned char const_)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::APFloat::APFloat(llvm::APFloat const&)'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::hashing::detail::fixed_seed_override' /usr/lib64/llvm/libclang.so: undefined reference to llvm::sys::fs::create_directory(llvm::Twine const&, bool&)'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::sys::Path::canWrite() const' /usr/lib64/llvm/libclang.so: undefined reference to llvm::APInt::zextOrTrunc(unsigned int) const'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::MCAsmParserSemaCallback::~MCAsmParserSemaCallback()' /usr/lib64/llvm/libclang.so: undefined reference to llvm::sys::Path::eraseComponent()'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::sys::fs::detail::directory_iterator_destruct(llvm::sys::fs::detail::DirIterState&)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::StringRef::rfind(llvm::StringRef) const'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::APInt::Profile(llvm::FoldingSetNodeID&) const' /usr/lib64/llvm/libclang.so: undefined reference to llvm::APInt::shl(llvm::APInt const&) const'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::DisablePrettyStackTrace' /usr/lib64/llvm/libclang.so: undefined reference to llvm::APFloat::convertToInteger(llvm::APSInt&, llvm::APFloat::roundingMode, bool_) const'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::raw_string_ostream::~raw_string_ostream()' /usr/lib64/llvm/libclang.so: undefined reference tollvm::FoldingSetImpl::FindNodeOrInsertPos(llvm::FoldingSetNodeID const&, void_&)'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::sys::path::stem(llvm::StringRef)' /usr/lib64/llvm/libclang.so: undefined reference tollvm::MemoryBuffer::getNewUninitMemBuffer(unsigned long, llvm::StringRef)'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::raw_fd_ostream::close()' /usr/lib64/llvm/libclang.so: undefined reference tollvm::raw_ostream::operator<<(void const_)'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::APFloat::changeSign()' /usr/lib64/llvm/libclang.so: undefined reference tollvm::SmallPtrSetImpl::swap(llvm::SmallPtrSetImpl&)'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::StringMapImpl::StringMapImpl(unsigned int, unsigned int)' /usr/lib64/llvm/libclang.so: undefined reference tollvm::Timer::init(llvm::StringRef)'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::APFloat::IEEEhalf' /usr/lib64/llvm/libclang.so: undefined reference tollvm::Timer::~Timer()'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::BumpPtrAllocator::~BumpPtrAllocator()' /usr/lib64/llvm/libclang.so: undefined reference tollvm::BumpPtrAllocator::BumpPtrAllocator(unsigned long, unsigned long, llvm::SlabAllocator&)'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::sys::Path::Path(llvm::StringRef)' /usr/lib64/llvm/libclang.so: undefined reference tollvm::raw_ostream::flush_nonempty()'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::BumpPtrAllocator::DefaultSlabAllocator' /usr/lib64/llvm/libclang.so: undefined reference tollvm::APFloat::bitwiseIsEqual(llvm::APFloat const&) const'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::Triple::getArchName() const' /usr/lib64/llvm/libclang.so: undefined reference tollvm::Regex::~Regex()'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::sys::fs::detail::directory_iterator_construct(llvm::sys::fs::detail::DirIterState&, llvm::StringRef)' /usr/lib64/llvm/libclang.so: undefined reference tollvm::sys::Path::eraseSuffix()'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::FoldingSetIteratorImpl::advance()' /usr/lib64/llvm/libclang.so: undefined reference tollvm::sys::path::end(llvm::StringRef)'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::Regex::match(llvm::StringRef, llvm::SmallVectorImpl<llvm::StringRef>*)' /usr/lib64/llvm/libclang.so: undefined reference tollvm::BumpPtrAllocator::Reset()'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::APInt::udiv(llvm::APInt const&) const' /usr/lib64/llvm/libclang.so: undefined reference tollvm::LockFileManager::waitForUnlock()'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::llvm_start_multithreaded()' /usr/lib64/llvm/libclang.so: undefined reference tollvm::sys::path::append(llvm::SmallVectorImpl&, llvm::sys::path::const_iterator, llvm::sys::path::const_iterator)'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::APInt::byteSwap() const' /usr/lib64/llvm/libclang.so: undefined reference tollvm::raw_fd_ostream::raw_fd_ostream(char const_, std::string&, unsigned int)'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::sys::Program::FindProgramByName(std::string const&)' /usr/lib64/llvm/libclang.so: undefined reference tollvm::SourceMgr::~SourceMgr()'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::llvm_execute_on_thread(void (_)(void_), void_, unsigned int)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::raw_fd_ostream::seek(unsigned long)'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::sys::path::const_iterator::operator++()' /usr/lib64/llvm/libclang.so: undefined reference to llvm::sys::locale::columnWidth(llvm::StringRef)'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::errs()' /usr/lib64/llvm/libclang.so: undefined reference to llvm::APFloat::bitcastToAPInt() const'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::sys::Process::StandardErrHasColors()' /usr/lib64/llvm/libclang.so: undefined reference to llvm::APInt::sextOrTrunc(unsigned int) const'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::FoldingSetNodeID::operator==(llvm::FoldingSetNodeID const&) const' /usr/lib64/llvm/libclang.so: undefined reference to llvm::APFloat::IEEEdouble'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::Triple::Triple(llvm::Twine const&)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::FoldingSetImpl::FoldingSetImpl(unsigned int)'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::sys::Path::appendSuffix(llvm::StringRef)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::Regex::Regex(llvm::StringRef, unsigned int)'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::generic_category()' /usr/lib64/llvm/libclang.so: undefined reference to llvm::APInt::initSlowCase(llvm::APInt const&)'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::raw_ostream::SetBufferAndMode(char_, unsigned long, llvm::raw_ostream::BufferKind)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::sys::fs::equivalent(llvm::Twine const&, llvm::Twine const&, bool&)'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::sys::fs::current_path(llvm::SmallVectorImpl<char>&)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::yaml::KeyValueNode::getValue()'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::LockFileManager::~LockFileManager()' /usr/lib64/llvm/libclang.so: undefined reference to llvm::MemoryBuffer::getFile(llvm::StringRef, llvm::OwningPtrllvm::MemoryBuffer&, long, bool)'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::sys::path::append(llvm::SmallVectorImpl<char>&, llvm::Twine const&, llvm::Twine const&, llvm::Twine const&, llvm::Twine const&)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::raw_svector_ostream::~raw_svector_ostream()'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::getAsUnsignedInteger(llvm::StringRef, unsigned int, unsigned long long&)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::BumpPtrAllocator::BumpPtrAllocator(unsigned long, unsigned long, llvm::SlabAllocator&)'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::APInt::APInt(unsigned int, llvm::ArrayRef<unsigned long>)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::LockFileManager::getState() const'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::CrashRecoveryContext::RunSafely(void (_)(void_), void_)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::raw_ostream::write_escaped(llvm::StringRef, bool)'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::yaml::KeyValueNode::getKey()' /usr/lib64/llvm/libclang.so: undefined reference to llvm::APInt::XorSlowCase(llvm::APInt const&) const'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::Triple::setOSName(llvm::StringRef)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::BumpPtrAllocator::AlignPtr(char*, unsigned long)'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::TimeRecord::print(llvm::TimeRecord const&, llvm::raw_ostream&) const' /usr/lib64/llvm/libclang.so: undefined reference to llvm::APInt::print(llvm::raw_ostream&, bool) const'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::CrashRecoveryContext::registerCleanup(llvm::CrashRecoveryContextCleanup_)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::createNullStreamer(llvm::MCContext&)'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::APSInt::Profile(llvm::FoldingSetNodeID&) const' /usr/lib64/llvm/libclang.so: undefined reference to llvm::APInt::zext(unsigned int) const'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::APInt::sadd_ov(llvm::APInt const&, bool&) const' /usr/lib64/llvm/libclang.so: undefined reference to llvm::Twine::print(llvm::raw_ostream&) const'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::CrashRecoveryContext::~CrashRecoveryContext()' /usr/lib64/llvm/libclang.so: undefined reference to llvm::APInt::initSlowCase(unsigned int, unsigned long, bool)'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::BumpPtrAllocator::~BumpPtrAllocator()' /usr/lib64/llvm/libclang.so: undefined reference to llvm::APFloat::compare(llvm::APFloat const&) const'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::FoldingSetImpl::~FoldingSetImpl()' /usr/lib64/llvm/libclang.so: undefined reference to llvm::APFloat::~APFloat()'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::FoldingSetNodeID::AddString(llvm::StringRef)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::yaml::MappingNode::increment()'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::FoldingSetIteratorImpl::FoldingSetIteratorImpl(void__)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::sys::Path::eraseFromDisk(bool, std::string_) const'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::yaml::Stream::Stream(llvm::StringRef, llvm::SourceMgr&)' /usr/lib64/llvm/libclang.so: undefined reference tollvm::CrashRecoveryContext::unregisterCleanup(llvm::CrashRecoveryContextCleanup_)'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::APFloat::getSmallest(llvm::fltSemantics const&, bool)' /usr/lib64/llvm/libclang.so: undefined reference tollvm::raw_ostream::write(unsigned char)'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::MemoryBuffer::getFile(char const_, llvm::OwningPtrllvm::MemoryBuffer&, long, bool)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::install_fatal_error_handler(void ()(void, std::string const&), void*)'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::sys::Path::appendComponent(llvm::StringRef)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::SmallPtrSetImpl::SmallPtrSetImpl(void const**, llvm::SmallPtrSetImpl const&)'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::MCAsmParser::setTargetParser(llvm::MCTargetAsmParser&)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::APInt::ult(llvm::APInt const&) const'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::sys::Path::createDirectoryOnDisk(bool, std::string_)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::CrashRecoveryContext::Disable()'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::format_object_base::home()' /usr/lib64/llvm/libclang.so: undefined reference to llvm::SmallVectorBase::grow_pod(void_, unsigned long, unsigned long)'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::StringMapImpl::RehashTable()' /usr/lib64/llvm/libclang.so: undefined reference tollvm::APFloat::APFloat(llvm::fltSemantics const&)'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::BumpPtrAllocator::Allocate(unsigned long, unsigned long)' /usr/lib64/llvm/libclang.so: undefined reference tollvm::sys::fs::exists(llvm::Twine const&, bool&)'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::Timer::startTimer()' /usr/lib64/llvm/libclang.so: undefined reference tollvm::CrashRecoveryContext::GetCurrent()'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::report_fatal_error(llvm::Twine const&)' /usr/lib64/llvm/libclang.so: undefined reference tollvm::Twine::toNullTerminatedStringRef(llvm::SmallVectorImpl&) const'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::APInt::lshr(unsigned int) const' /usr/lib64/llvm/libclang.so: undefined reference tollvm::sys::path::replace_extension(llvm::SmallVectorImpl&, llvm::Twine const&)'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::createMCAsmParser(llvm::SourceMgr&, llvm::MCContext&, llvm::MCStreamer&, llvm::MCAsmInfo const&)' /usr/lib64/llvm/libclang.so: undefined reference tollvm::sys::path::is_absolute(llvm::Twine const&)'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::sys::fs::copy_file(llvm::Twine const&, llvm::Twine const&, llvm::sys::fs::copy_option)' /usr/lib64/llvm/libclang.so: undefined reference tollvm::StringRef::split(llvm::SmallVectorImplllvm::StringRef&, llvm::StringRef, int, bool) const'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::APInt::AssignSlowCase(llvm::APInt const&)' /usr/lib64/llvm/libclang.so: undefined reference tollvm::StringMapImpl::RemoveKey(llvm::StringMapEntryBase_)'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::sys::RemoveFileOnSignal(llvm::sys::Path const&, std::string_)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::sys::path::begin(llvm::StringRef)'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::sys::MutexImpl::MutexImpl(bool)' /usr/lib64/llvm/libclang.so: undefined reference to llvm::raw_ostream::write_hex(unsigned long long)'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::MCContext::~MCContext()' /usr/lib64/llvm/libclang.so: undefined reference to llvm::APFloat::getLargest(llvm::fltSemantics const&, bool)'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::raw_svector_ostream::str()' /usr/lib64/llvm/libclang.so: undefined reference to llvm::StringRef::edit_distance(llvm::StringRef, bool, unsigned int)'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::sys::Path::canExecute() const' /usr/lib64/llvm/libclang.so: undefined reference to llvm::APInt::operator++()'
/usr/lib64/llvm/libclang.so: undefined reference totypeinfo for llvm::FoldingSetImpl' /usr/lib64/llvm/libclang.so: undefined reference to llvm::sys::getHostCPUName()'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::error_code::message() const' /usr/lib64/llvm/libclang.so: undefined reference to llvm::sys::Path::isRegularFile() const'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::sys::PathWithStatus::getFileStatus(bool, std::string_) const' /usr/lib64/llvm/libclang.so: undefined reference to llvm::APInt::AndSlowCase(llvm::APInt const&) const'
/usr/lib64/llvm/libclang.so: undefined reference tollvm::APInt::sshl_ov(unsigned int, bool&) const' /usr/lib64/llvm/libclang.so: undefined reference to llvm::APFloat::convert(llvm::fltSemantics const&, llvm::APFloat::roundingMode, bool_)'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::SourceMgr::FindBufferContainingLoc(llvm::SMLoc) const' /usr/lib64/llvm/libclang.so: undefined reference tollvm::PrettyStackTraceEntry::~PrettyStackTraceEntry()'
/usr/lib64/llvm/libclang.so: undefined reference to typeinfo for llvm::MCAsmParserSemaCallback' /usr/lib64/llvm/libclang.so: undefined reference tollvm::sys::Program::ExecuteAndWait(llvm::sys::Path const&, char const**, char const**, llvm::sys::Path const*, unsigned int, unsigned int, std::string)'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::sys::PrintStackTraceOnErrorSignal()' /usr/lib64/llvm/libclang.so: undefined reference tollvm::APInt::toString(llvm::SmallVectorImpl&, unsigned int, bool, bool) const'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::APFloat::multiply(llvm::APFloat const&, llvm::APFloat::roundingMode)' /usr/lib64/llvm/libclang.so: undefined reference tollvm::MemoryBuffer::getMemBuffer(llvm::StringRef, llvm::StringRef, bool)'
/usr/lib64/llvm/libclang.so: undefined reference to vtable for llvm::raw_string_ostream' /usr/lib64/llvm/libclang.so: undefined reference tollvm::sys::MutexImpl::~MutexImpl()'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::APFloat::copySign(llvm::APFloat const&)' /usr/lib64/llvm/libclang.so: undefined reference tollvm::APFloat::convertFromAPInt(llvm::APInt const&, bool, llvm::APFloat::roundingMode)'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::StringMapImpl::FindKey(llvm::StringRef) const' /usr/lib64/llvm/libclang.so: undefined reference tollvm::yaml::Document::parseBlockNode()'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::StringRef::find_first_of(llvm::StringRef, unsigned long) const' /usr/lib64/llvm/libclang.so: undefined reference tollvm::yaml::SequenceNode::increment()'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::Triple::normalize(llvm::StringRef)' /usr/lib64/llvm/libclang.so: undefined reference tollvm::APFloat::APFloat(llvm::fltSemantics const&, unsigned long)'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::SmallPtrSetImpl::insert_imp(void const*)' /usr/lib64/llvm/libclang.so: undefined reference tollvm::sys::fs::directory_entry::status(llvm::sys::fs::file_status&) const'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::FoldingSetImpl::InsertNode(llvm::FoldingSetImpl::Node*, void*)' /usr/lib64/llvm/libclang.so: undefined reference tollvm::Triple::getMacOSXVersion(unsigned int&, unsigned int&, unsigned int&) const'
/usr/lib64/llvm/libclang.so: undefined reference to llvm::raw_ostream::indent(unsigned int)' /usr/lib64/llvm/libclang.so: undefined reference tollvm::sys::path::is_relative(llvm::Twine const&)'
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [clang-complete] 错误 1

I've noticed the message:
/usr/bin/x86_64-pc-linux-gnu-ld: warning: libLLVM-3.2svn.so, needed by /usr/lib64/llvm/libclang.so, not found (try using -rpath or -rpath-link)

After adding this to LDFLAGS,problem fixed.
LDLIBS := $(shell llvm-config --ldflags) $(shell llvm-config --libs all) -lstdc++ -lclang -rpath $(shell llvm-config --libdir)

no completion

Hi, I have no completion of local variables & objects methods.
I use emacs 24.2. Compile with clang 3.1.
I have completion of namespaces & class names.

when I type
std::
completion show vector;
std::vector abc;
but when type ab no completion "abc" is appear & after
type: abc.
no methods.
Thanks.

Unable to get any completion suggestions (Cygwin)

Hi - I am unable to get autocompletion suggestions for anything when I am editing C files in C-mode. I'm using the emacs-w32 package from Cygwin on Windows 7.

(emacs-version)
"GNU Emacs 24.3.1 (i686-pc-cygwin)
 of 2013-03-11 on fiona"

I was able to build it successfully

alex ~/.emacs.d/emacs-clang-complete-async>make
cc -std=c99 -I/usr/include  -DNDEBUG -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -O3 -fomit-frame-pointer -g -Wall -Wextra -pedantic -O3 -I./src   -c -o src/obj/msg_handlers.o ./src/msg_handlers.c
cc -std=c99 -I/usr/include  -DNDEBUG -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -O3 -fomit-frame-pointer -g -Wall -Wextra -pedantic -O3 -I./src   -c -o src/obj/main.o ./src/main.c
cc -std=c99 -I/usr/include  -DNDEBUG -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -O3 -fomit-frame-pointer -g -Wall -Wextra -pedantic -O3 -I./src   -c -o src/obj/msg_dispatcher.o ./src/msg_dispatcher.c
cc -std=c99 -I/usr/include  -DNDEBUG -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -O3 -fomit-frame-pointer -g -Wall -Wextra -pedantic -O3 -I./src   -c -o src/obj/parse_results.o ./src/parse_results.c
cc -std=c99 -I/usr/include  -DNDEBUG -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -O3 -fomit-frame-pointer -g -Wall -Wextra -pedantic -O3 -I./src   -c -o src/obj/completion_serv.o ./src/completion_serv.c
cc -std=c99 -I/usr/include  -DNDEBUG -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -O3 -fomit-frame-pointer -g -Wall -Wextra -pedantic -O3 -I./src    src/obj/msg_handlers.o src/obj/main.o src/obj/msg_dispatcher.o src/obj/parse_results.o src/obj/completion_serv.o -L/usr/lib  -lpthread -lffi -lm  -lclang -o clang-complete
alex ~/.emacs.d/emacs-clang-complete-async>

The llvm-config version I used is:

alex ~/.emacs.d/emacs-clang-complete-async>llvm-config --version
3.1

I have this in my .emacs.d/init.el

;; Emacs Clang Complete Async
(require 'auto-complete-clang-async)
(defun ac-cc-mode-setup ()
  (setq ac-clang-complete-executable "~/.emacs.d/clang-complete")
  (setq ac-sources '(ac-source-clang-async))
  (ac-clang-launch-completion-process)
)

(defun my-ac-config ()
  (add-hook 'c-mode-common-hook 'ac-cc-mode-setup)
  (global-auto-complete-mode t))

(my-ac-config)

(setq ac-clang-flags
      (mapcar (lambda (item)(concat "-I" item))
               (split-string
                "
/cygdrive/c/gcc-arm-embedded/lib/gcc/arm-none-eabi/4.7.4/include
/cygdrive/c/gcc-arm-embedded/lib/gcc/arm-none-eabi/4.7.4/include-fixed
/cygdrive/c/gcc-arm-embedded/arm-non-eabi/include
"
                )))

When I evaluate

ac-sources 

with C-x-e in a C-mode buffer, it lists ac-source-clang-async in the minibuffer.

How to enable clang complete async only for C or C++ mode?

In your setup guide, clang complete async is activated when c-mode-common-hook executes. This causes clang complete async to be incorrectly activated in other modes that are submodes of cc-mode, like java-mode. I was trying to place the ac-cc-mode-setup in c++-mode-hook. It works without problem when I directly opened a C++ source file, but fails to work when I created a new C++ source file in Emacs.

Add this repo to the auto-complete organization

Hi there,

I'm collecting the various sources for AC under the newly minted auto-complete organization. We would like to make this source the "official" clang source and make the canonical repo at the auto-complete organization. You would obviously have full access to the repo.

If you don't like that idea, we can also just mirror the repo.

Auto-completion is not working

The auto-completion is not working.
clang-complete compile without problem, but the error is generated using auto-completion in Emacs
My system:
Ubuntu: 13.1
clang 3.4
llvm 3.4
emacs 24.3.1
This is the error captured in the clang buffer:
error while loading shared libraries: libclang.so: cannot open shared object file: No such file or directory..
Thanks

ac-clang-syntax-check requires additional setup

It appears that ac-clang-cflags aren't getting written into the temporary Makefile generated for/by flymake(?) I get fatal errors from ac-clang-syntax-check trying to #include any of the files in my project. Standard headers like , , etc., work fine.

Debugger entered--Lisp error: (error "SIGPIPE raised on process clang-complete; closed it")

Backtrace
Debugger entered--Lisp error: (error "SIGPIPE raised on process clang-complete; closed it")
process-send-string(# "my code")
(save-restriction (widen) (process-send-string proc (format "source_length:%d\n" ...)) (process-send-string proc (buffer-substring-no-properties ... ...)) (process-send-string proc "\n\n"))
ac-clang-send-source-code(#)
(save-restriction (widen) (process-send-string proc "SOURCEFILE\n") (ac-clang-send-source-code proc) (process-send-string proc "REPARSE\n\n"))
(if (eq (process-status "clang-complete") (quote run)) (save-restriction (widen) (process-send-string proc "SOURCEFILE\n") (ac-clang-send-source-code proc) (process-send-string proc "REPARSE\n\n")))
ac-clang-send-reparse-request(#)
ac-clang-launch-completion-process-with-file("my code path")
(if filename (ac-clang-launch-completion-process-with-file filename))
(let ((filename ...)) (if filename (ac-clang-launch-completion-process-with-file filename)))
ac-clang-launch-completion-process()
ac-cc-mode-setup()
run-hooks(c-mode-common-hook c++-mode-hook)
apply(run-hooks (c-mode-common-hook c++-mode-hook))
run-mode-hooks(c-mode-common-hook c++-mode-hook)
c++-mode()
set-auto-mode-0(c++-mode nil)
set-auto-mode()
normal-mode(t)
after-find-file(nil t)
find-file-noselect-1(# "my code path" (144 2052))
find-file-noselect("my code path" nil nil t)
find-file("my code path" t)
call-interactively(find-file nil nil)

Completing a type which has a constructor results in the constructor, not the type.

Consider the following code:

class MyClass
{
  MyClass();
};

int main (void)
{
  M|
}

Where the | represents the cursor position. I would like to complete the type name MyClass. However, when I press TAB (or RET) here, it completes to MyClass()

The completion I want is being passed back from the async process, because the clang-complete buffer includes:

COMPLETION: MyClass
COMPLETION: MyClass : MyClass()

So something in the elisp is causing the completion of the type to be ignored, but only when there is a constructor. If I don't declare the constructor in my example above, I can complete MyClass.

Explain how to integrate this with CEDET/semantic

Yeah, I realize this might be considered out-of-scope for your project, but when it works it works so well! So it would be awesome if there were some explanation in the README of how to use this effectively with CEDET.

Makefile is not correctly tracking changes to header files.

When one of the header files is changed, the makefile should rebuild the appropriate object files and the binary. But it does not. For example:

┌(toojays@kano)─(540)─(0)─(2013 06 05 20:15:40)
└─(~/src/emacs-clang-complete-async)─> touch src/msg_callback.h 
┌(toojays@kano)─(541)─(0)─(2013 06 05 20:15:50)
└─(~/src/emacs-clang-complete-async)─> make LLVM_CONFIG=llvm-config-3.4
make: `clang-complete' is up to date.

It should have recognized that msg_callback.h had changed, and rebuilt the objects which depend on it.

Mac OS X w/ Xcode 4.6: 'clang-c/Index.h' file not found

I've installed llvm using brew, but encountered another error while compiling

In file included from ./src/completion_serv.c:3:
./src/completion.h:5:10: fatal error: 'clang-c/Index.h' file not found
#include <clang-c/Index.h>
         ^
1 error generated.
make: *** [src/obj/completion_serv.o] Error 1

How can I install or find the required header and library? brew doesn't seem to have a formula for clang

Link failed on mingw.

I comile this on mingw, everything goes well, but when begin to link, there're a lot of errors as below:

C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x1bb): undefined reference to llvm::sys::MutexImpl::~MutexImpl()'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x212): undefined reference toclang::SourceManager::isBeforeInTranslationUnit(clang::SourceLocation, clang::SourceLocation) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x25c): undefined reference to clang::SourceManager::isBeforeInTranslationUnit(clang::SourceLocation, clang::SourceLocation) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x4ae): undefined reference toclang::SourceManager::isBeforeInTranslationUnit(clang::SourceLocation, clang::SourceLocation) const'

Will you fix this problem in the future?

PS: I use clang and llvm version 2.9.

problem compiling on gentoo

I'm not exactly sure if it's problem of this program or gentoo distribution in general.

Trying to compile gives me /usr/lib/gcc/i686-pc-linux-gnu/4.5.3/../../../../i686-pc-linux-gnu/bin/ld: warning: libLLVM-3.1.so, needed by /usr/lib/llvm/libclang.so, not found (try using -rpath or -rpath-link)
and a bunch of undefined references like so /usr/lib/llvm/libclang.so: undefined reference tollvm::APFloat::APFloat(llvm::fltSemantics const&, unsigned long long)'`

After doing ln -s /usr/lib/llvm/libLLVM-3.1.so /usr/lib/libLLVM-3.1.so all compiled fine.

Linux 3.2.21-gentoo i686,
llvm-3.1-r2 USE="libffi -debug -gold -multitarget -ocaml -test -udis86 -vim-syntax"
clang-3.1-r5 USE="static-analyzer -debug -multitarget -test"

compiling on os x

compiling worked on os x lion after editing makefile.mk as follows:

remove these lines:

 LOADLIBES += \
    -Xlinker --start-group \
        $(addprefix  -Xlinker , $(EXTERNAL_LIBS)) \
    -Xlinker --end-group

and replace with this:

LOADLIBS += $(addprefix  -Xlinker , $(EXTERNAL_LIBS))

Overloaded functions are completed to duplicates

Hey,

If I use ac-clang-async to complete member functions which have different signatures, the
function name gets inserted twice. I think its best to show you the problem using images:

First Step: Completion menu shows all member function and also that the function has three signatures.

Step 01

Second Step: I have hit ret and the function's base name is inserted, now I'm selecting the function signature. At this step the function's name is already inserted twice.

Step 02

Third Step: I accept the completion candidate (hitting ret) and the malformatted function was inserted.

Step 03

Request for meaningful project name :)

I wrote about this emacs mode here and there writing that's "Golevka/clang-complete", but wait Golevka is nickname of package's developer :P .

Frome http://www.emacswiki.org/emacs/CategoryCompletion , there's a couple of completition modes like , this ; can you name your tool and just add it to the wiki, Golevka : ?

Some completions are available in modes that provide command interaction.

EshellCompletion – Input filename completion.
GCCSense – Development tool for C/C++ using GCC’s code analyzers.
SubprocessCompletion – Handling completion by a subprocess such as a shell or a debugger, rather than by Emacs.
Anything – Lisp:anything-complete.el replaces Emacs Completion.
CSense – Completion extension.
irony-mode – Completion based on clang
CLang – Completion extension based on CLang.
function-args – C++ completion extension for CEDET.

<<

best regards paul424.

llvm-config has changed it's name (Linux Mint 14)

In the Makefile there is a shell call to llvm-config but the command for the version of llvm that my package manager gives me is llvm-config-3.0. Editing the Makefile to use the newer command worked.

I guess making it work across multiple versions is more difficult...

See also: https://bugs.launchpad.net/ubuntu/+source/llvm/+bug/768143

edit: I guess this may not be the correct "fix" because it only worked inconsistently. It's possible that I just got the wrong llvm package.

where is llvm-config?

Sorry for this stupid question. But, em..
I work in 10.8, XCode 4.5.1. and GNU Emacs 24.1 . When I make this project, the Makefile need llvm-config. But it not in /usr, /usr/local, /opt/local(I use macport) and /Application/Xcode/Contents/Developer/usr.
There is a way build emacs-clang-complete-async without llvm-config ?

Completion of constructors doesn't work properly with namespaces

When I try this :

namespace User
{
     class MyClass
     {
          MyClass(int a);
     };
};

using namespace User;

int main(int argc, char *argv[])
{
     MyClass *myclass1 = new MyCla|;
     return 0;
}

Where | is the cursor. When I complete, it works fine, it expands with all the arguments etc :

MyClass *myclass1 = new MyClass(int a)

But when I try like this :

User::MyClass *myclass2 = new User::MyCla|

It doesn't expand properly, it's only giving me the name of the constructor without the arguments :

User::MyClass *myclass2 = new User::MyClass|

auto-complete fail

Setup everything as given in the help me file.

  1. My auto-complete.el that I use to load is attached.

  2. When I try to auto-complete I sometimes get unrelated completions
    as shown in snapshot1.png

  3. But when I delete vec and start again, I get the right results as shown
    in snapshot2.png.

auto-complete.el

(add-to-list 'load-path "/workset/emacs/pkgs/ac")
(add-to-list 'load-path "
/.emacs.d/")
(require 'auto-complete-config)
(add-to-list 'ac-dictionary-directories "~/.emacs.d//ac-dict")
(ac-config-default)

(add-to-list 'load-path "/.emacs.d/")
(require 'auto-complete-config)
(add-to-list 'ac-dictionary-directories "
/.emacs.d/ac-dict")
(ac-config-default)
(require 'auto-complete-clang)
(setq clang-completion-suppress-error 't)

;; echo "" | g++ -v -x c++ -E -
(setq ac-clang-flags
(mapcar (lambda (item)(concat "-I" item))
(split-string
"
/usr/include/c++/4.7
/usr/include/c++/4.7/x86_64-linux-gnu
/usr/include/c++/4.7/backward
/usr/lib/gcc/x86_64-linux-gnu/4.7/include
/usr/local/include
/usr/lib/gcc/x86_64-linux-gnu/4.7/include-fixed
/usr/include/x86_64-linux-gnu
/usr/include
"
)))

(defun my-ac-clang-mode-common-hook()
(define-key c-mode-base-map (kbd "M-/") 'ac-complete-clang)
)

(add-hook 'c-mode-common-hook 'my-ac-clang-mode-common-hook)

(require 'auto-complete-clang-async)

(defun ac-cc-mode-setup ()
(setq ac-clang-complete-executable "~/workset/emacs/pkgs/ac/clang-complete")
(setq ac-sources '(ac-source-clang-async))
(ac-clang-launch-completion-process)
)

(defun my-ac-config ()
(add-hook 'c-mode-common-hook 'ac-cc-mode-setup)
(add-hook 'auto-complete-mode-hook 'ac-common-setup)
(global-auto-complete-mode t))

(my-ac-config)

What is wrong here ?
snapshot1
snapshot2

Cannot be used with other ac-sources

auto-complete-clang-async recommends (setq ac-sources '(ac-source-clang-async)), but there are other useful sources (e.g., yasnippet) I want to use. I tried it with other sources, but AC does not show candidates from clang, for example when I insert foo.. Although it looks like that merging candidates from different sources is not possible due to limitation in AC (tkf/emacs-jedi#57), having multiple ac-sources is possible. Take a look at my emacs-jedi. It includes AC source for Python and I can use it with other AC sources.

Repeated "fetching candidates" (windows)

On windows, I found sometimes the completion couldn't be shown
Clang completion buffer keeps flushing
After enabled some "message" traces, I found Message buffer keeps showing
"ac-clang-candidate triggered - fetching candidates..."

(defun ac-clang-candidate ()
  (case ac-clang-status
    (idle
     (message "ac-clang-candidate triggered - fetching candidates...")

More debugging shows that somehow after the status set to idle in ac-clang-filter-output at:

    (otherwise
     (setq ac-clang-current-candidate (ac-clang-parse-completion-results proc))
     (message "ac-clang results arrived")
     (setq ac-clang-status 'acknowledged)
     (ac-start :force-init t)
     (ac-update)
     (setq ac-clang-status 'idle) <<<

Then the ac-clang-candidate is somehow called again and triggered ac-clang-filter-output again...
This makes a infinite loop and stops the completion working.

I'm able to work around by remove that setq line, not sure how the nature of the problem should be though.

Environment: win7+emacs24.3(official binary)+auto-completion1.3.1

Various compilation problems and solutions. "-Wcovered-switch-default", "cannot find -lz", etc...

Hi everybody,

I'm posting here because I had much trouble compiling this project on my brand new Opensuse 13.10 64 bit, so I wanted to share the solutions i found to help those who might be experiencing the same problems.

Since my Opensuse was freshly installed, I think that I'm going to list about all the various stuff needed on your computer to be able to use the command "make" on that project.

First, after having cloned the repo, you find out that gcc doesn't recognize the "-Wcovered-switch-default" flag. It's normal, you need to compile with clang, using the command :
make CC=clang

You will need various clang-llvm packages, libs, development packages (I don't remember exactly which ones, but i trust you to figure it out).

The last one you will need is the zlib-development package (if you have the error 'cannot find -lz' at linkage).

In my case, i was able to compile the project only after having installed all those packages. I used YaST2 with the default repos to find all of them.

I hope this post will be of some help for some people. Please correct me if anything I stated here is wrong or inaccurate.

Have a good day and a good compilation =)

Banzaï.

EDIT: I got less lazy, and here are the exact packages I downloaded to make it work:

libclang 3.3-6.4.1
llvm-clang 3.3-6.4.1
llvm-clang-devel 3.3-6.4.1
llvm 3.3-6.4.1
libLLVM 3.3-6.4.1
llvm-devel 3.3-6.4.1
zlib-devel

no run

After build success. I copy the el and the binary in my setting path, and write the setting file and load it.

While I edit a c source file , run the auto-complete function. Not output and no error show. But when I try to kill the buffer, emacs show message: "clang-complete is no running."

PS. It can be used in objc-mode?

Please add a version tag

Hi,

I added a MELPA recipe so that easily-installable packages of auto-complete-clang-async.el are available.

Next, I'm adding a Homebrew formula so that clang-complete are available effortlessly on Mac OS X. But it is pending, so Homebrew formula needs versioned download (See #19499).

For the above reason, please add a version tag?

Cheers!

--Yasuyuki

Patch, make clang_complete only one instance.

I noticed that clang_complete server will be launched for every source buffer in emacs.
When emacs opend too many source files, there are too many clang_complete server runs.

Here is a patch to enable it run only one instance and switch the buffer and files when you enter a new source buffer.

diff -Nur emacs-clang-complete-async-master/auto-complete-clang-async.el emacs-clang-complete-async-mastern/auto-complete-clang-async.el
--- emacs-clang-complete-async-master/auto-complete-clang-async.el 2012-12-04 22:51:26.237823425 +0800
+++ emacs-clang-complete-async-mastern/auto-complete-clang-async.el 2012-12-04 22:52:26.942833706 +0800
@@ -1,4 +1,4 @@
-;;; auto-complete-clang-async.el --- Auto Completion source for clang for GNU Emacs
+;;; auto-complete-clang-async-once.el --- Auto Completion source for clang for GNU Emacs

;; Copyright (C) 2010 Brian Jiang
;; Copyright (C) 2012 Taylan Ulrich Bayirli/Kammer
@@ -6,6 +6,7 @@
;; Authors: Brian Jiang [email protected]
;; Golevka(?) [https://github.com/Golevka]
;; Taylan Ulrich Bayirli/Kammer [email protected]
+;; Cjacker [email protected]
;; Many others
;; Keywords: completion, convenience
;; Version: 0
@@ -29,7 +30,7 @@
;; Auto Completion source for clang.
;; Uses a "completion server" process to utilize libclang.

;; Also provides flymake syntax checking.

+;; Cjacker: Made clang-complete server only run once for one emacs instance, and change the source file internally
;;; Code:

@@ -396,9 +397,11 @@
(defvar ac-clang-completion-process nil)
(defvar ac-clang-saved-prefix "")

-(make-variable-buffer-local 'ac-clang-status)
-(make-variable-buffer-local 'ac-clang-current-candidate)
-(make-variable-buffer-local 'ac-clang-completion-process)
+(defvar current-clang-file "")
+
+;;(make-variable-buffer-local 'ac-clang-status)
+;;(make-variable-buffer-local 'ac-clang-current-candidate)
+;;(make-variable-buffer-local 'ac-clang-completion-process)

;;;
;;; Functions to speak with the clang-complete process
@@ -423,6 +426,8 @@
(process-send-string proc "REPARSE\n\n")))

(defun ac-clang-send-completion-request (proc)

  • (if (not (string= current-clang-file (buffer-file-name)))
  •  (ac-clang-filechanged))
    
    (save-restriction
    (widen)
    (process-send-string proc "COMPLETION\n")
    @@ -448,6 +453,27 @@
    (ac-clang-send-cmdline-args ac-clang-completion-process)
    (message "`ac-clang-cflags' should be a list of strings")))

+(defun ac-clang-send-filechanged (proc)

  • ;; send message head and num_args
  • (process-send-string proc "FILECHANGED\n")
  • (process-send-string
  • proc (format "filename:%s\n" (buffer-file-name)))
  • (process-send-string
  • proc (format "num_args:%d\n" (length (ac-clang-build-complete-args))))
  • ;; send arguments
  • (mapc
  • (lambda (arg)
  • (process-send-string proc (format "%s " arg)))
    
  • (ac-clang-build-complete-args))
  • (process-send-string proc "\n"))

+(defun ac-clang-filechanged ()

  • (interactive)
  • (if (not (string= current-clang-file (buffer-file-name)))
  • (setq current-clang-file (buffer-file-name)))
  • (ac-clang-send-filechanged ac-clang-completion-process))

(defun ac-clang-send-shutdown-command (proc)
(if (eq (process-status "clang-complete") 'run)
(process-send-string proc "SHUTDOWN\n"))
@@ -494,8 +520,8 @@
(case ac-clang-status
(idle
;; (message "ac-clang-candidate triggered - fetching candidates...")

  • (setq ac-clang-saved-prefix ac-prefix)
    
  • (setq ac-clang-saved-prefix ac-prefix)
    

    ;; NOTE: although auto-complete would filter the result for us, but when there's
    ;; a HUGE number of candidates avaliable it would cause auto-complete to
    ;; block. So we filter it uncompletely here, then let auto-complete filter
    @@ -541,20 +567,29 @@
    (setq ac-clang-status 'preempted)))

    (defun ac-clang-launch-completion-process ()

  • (interactive)

  • (if ac-clang-completion-process

  •   (ac-clang-filechanged)
    
  •   (ac-clang-launch-completion-process-internal)))
    

    +(defun ac-clang-launch-completion-process-internal ()

  • (interactive)
    (setq ac-clang-completion-process
    (let ((process-connection-type nil))
    (apply 'start-process
    "clang-complete" "clang-complete"
    ac-clang-complete-executable
    (append (ac-clang-build-complete-args)

  •                     (list (buffer-file-name))))))
    
  •                     (list (buffer-file-name)))
    

    +)))

    (set-process-filter ac-clang-completion-process 'ac-clang-filter-output)
    (set-process-query-on-exit-flag ac-clang-completion-process nil)
    ;; Pre-parse source code.
    (ac-clang-send-reparse-request ac-clang-completion-process)

  • (add-hook 'kill-buffer-hook 'ac-clang-shutdown-process nil t)
    +;; (add-hook 'kill-buffer-hook 'ac-clang-shutdown-process nil t)

  • (add-hook 'kill-emacs-hook 'ac-clang-shutdown-process nil t)
    (add-hook 'before-save-hook 'ac-clang-reparse-buffer)

(local-set-key (kbd ".") 'ac-clang-async-preemptive)
diff -Nur emacs-clang-complete-async-master/src/msg_callback.h emacs-clang-complete-async-mastern/src/msg_callback.h
--- emacs-clang-complete-async-master/src/msg_callback.h 2012-10-28 00:51:28.000000000 +0800
+++ emacs-clang-complete-async-mastern/src/msg_callback.h 2012-12-04 22:52:01.296830076 +0800
@@ -46,6 +46,7 @@
void completion_doCompletion(completion_Session session, FILE *fp); / COMPLETION /
void completion_doSourcefile(completion_Session *session, FILE *fp); /
SOURCEFILE /
void completion_doCmdlineArgs(completion_Session *session, FILE *fp); /
CMDLINEARGS /
+void completion_doFileChanged(completion_Session *session, FILE *fp); /
FILECHANGED /
void completion_doReparse(completion_Session *session, FILE *fp); /
REPARSE /
void completion_doSyntaxCheck(completion_Session *session, FILE *fp); /
SYNTAXCHECK /
void completion_doShutdown(completion_Session *session, FILE *fp); /
SHUTDOWN */
diff -Nur emacs-clang-complete-async-master/src/msg_dispatcher.c emacs-clang-complete-async-mastern/src/msg_dispatcher.c
--- emacs-clang-complete-async-master/src/msg_dispatcher.c 2012-10-28 00:51:28.000000000 +0800
+++ emacs-clang-complete-async-mastern/src/msg_dispatcher.c 2012-12-04 22:52:01.296830076 +0800
@@ -17,6 +17,7 @@
{"COMPLETION", completion_doCompletion},
{"SOURCEFILE", completion_doSourcefile},
{"CMDLINEARGS", completion_doCmdlineArgs},

  • {"FILECHANGED", completion_doFileChanged},
    {"SYNTAXCHECK", completion_doSyntaxCheck},
    {"REPARSE", completion_doReparse},
    {"SHUTDOWN", completion_doShutdown}
    diff -Nur emacs-clang-complete-async-master/src/msg_handlers.c emacs-clang-complete-async-mastern/src/msg_handlers.c
    --- emacs-clang-complete-async-master/src/msg_handlers.c 2012-10-28 00:51:28.000000000 +0800
    +++ emacs-clang-complete-async-mastern/src/msg_handlers.c 2012-12-04 22:54:43.162860818 +0800
    @@ -146,6 +146,50 @@
    completion_reparseTranslationUnit(session); /* dump PCH for acceleration */
    }

+/* Update command line arguments and source files passing to clang translation unit. Format

  • of the coming FILECHANGED message is as follows:
  •   filename: [#new filename#]  
    
  •   num_args: [#n_args#]
    
  •   arg1 arg2 ... (there should be n_args items here)
    
    +*/
    +void completion_doFileChanged(completion_Session *session, FILE *fp)
    +{
  • int i_arg = 0;
  • char arg[LINE_MAX];
  • /* destroy command line args, and we will rebuild it later */
  • completion_freeCmdlineArgs(session);
  • char filename[LINE_MAX];
  • fscanf(fp, "filename:%s", filename); __skip_the_rest(fp);
  • session->src_filename = strdup(filename);
  • session->src_length = 0; /* we haven't read any source code yet. */
  • session->buffer_capacity = INITIAL_SRC_BUFFER_SIZE;
  • free(session->src_buffer);
  • session->src_buffer = (char*)calloc(sizeof(char), session->buffer_capacity);
  • /* get number of arguments */
  • fscanf(fp, "num_args:%d", &(session->num_args)); __skip_the_rest(fp);
  • session->cmdline_args = (char*)calloc(sizeof(char), session->num_args);
  • /* rebuild command line arguments vector according to the message */
  • for ( ; i_arg < session->num_args; i_arg++)
  • {
  •    /\* fetch an argument from message */
    
  •    fscanf(fp, "%s", arg);
    
  •    /\* and add it to cmdline_args */
    
  •    session->cmdline_args[i_arg] = (char*)calloc(sizeof(char), strlen(arg) + 1);
    
  •    strcpy(session->cmdline_args[i_arg], arg);
    
  • }
  • /* we have to rebuild our translation units to make these cmdline args changes
  •   take place */
    
  • clang_disposeTranslationUnit(session->cx_tu);
  • completion_parseTranslationUnit(session);
  • completion_reparseTranslationUnit(session); /* dump PCH for acceleration _/
    +}

/_ Handle syntax checking request, message format:
source_length: [#src_length#]
<# SOURCE CODE #>

does not compile on windows/mingw32

OS Windows 7, gnu make 3.81

Executing mingw32-make results in
process_begin: CreateProcess(NULL, llvm-config --ldflags, ...) failed. process_begin: CreateProcess(NULL, llvm-config --libs all, ...) failed. process_begin: CreateProcess(NULL, llvm-config --cflags, ...) failed. cc -Wall -Wextra -pedantic -O3 -I./src -c -o src/obj/completion_serv.o ./src/ completion_serv.c process_begin: CreateProcess(NULL, cc -Wall -Wextra -pedantic -O3 -I./src -c -o src/obj/completion_serv.o ./src/completion_serv.c, ...) failed. make (e=2): The system cannot find the file specified. mingw32-make: *** [src/obj/completion_serv.o] Error 2

Crash after clang_codeCompleteAt returned NULL

clang_codeCompleteAt returns NULL on completion failure.
After call to completion_codeCompleteAt, res == NULL.
Further usage of the NULL pointer leads to crash on line: clang_sortCodeCompletionResults(res->Results, res->NumResults);

Event to trigger ac

emacs-clang-complete-async really auto-complete faster than auto-complete-clang when using c++. However there seems no easy way to make auto-complete for it triggered by ac-trigger-key, actually I am wondering whether there is a way to temporarily stop auto-complete. I have set ac-auto-start as nil, but no effect. Also there seems no c source code completion for me(c++ is triggered with .,:,->, although it omits other completion cases).

Build fails with GCC from -Wcovered-switch-default

cc -pipe -std=c99 -I/usr/local/include -pipe -fPIC -Wall -W -Wno-unused-parameter -Wwrite-strings -Wmissing-field-initializers -pedantic -Wno-long-long -Wcovered-switch-default -g -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -Wall -Wextra -pedantic -O3 -I./src -c -o src/obj/completion_serv.o ./src/completion_serv.c
cc: error: unrecognized command line option ‘-Wcovered-switch-default’

clang-check crashes when run with no arguments

I'm having trouble getting it to work, but I was noticing that the clang-complete process was never running. Trying to run it resulted in crashes. I'm using a recent git build of clang.

$ gdb --args ./clang-complete
Reading symbols from /home/marsenau/.emacs.d/clang-complete...done.
(gdb) r
Starting program: /home/marsenau/.emacs.d/clang-complete
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[New Thread 0x7ffff519f700 (LWP 18021)]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7ffff519f700 (LWP 18021)]
0x00007ffff65eb7a6 in clang_parseTranslationUnit_Impl (UserData=0x7fffffffda90)
at /home/marsenau/src/llvm/tools/clang/tools/libclang/CIndex.cpp:2571
2571 if (strcmp(command_line_args[I], "-fno-spell-checking") == 0 ||
(gdb) bt
#0 0x00007ffff65eb7a6 in clang_parseTranslationUnit_Impl (UserData=0x7fffffffda90)

at /home/marsenau/src/llvm/tools/clang/tools/libclang/CIndex.cpp:2571

#1 0x00007ffff66ace25 in llvm::CrashRecoveryContext::RunSafely (this=0x7fffffffdad0,

Fn=0x7ffff65eb414 <clang_parseTranslationUnit_Impl(void*)>, UserData=0x7fffffffda90)
at /home/marsenau/src/llvm/lib/Support/CrashRecoveryContext.cpp:308

#2 0x00007ffff66acf2d in RunSafelyOnThread_Dispatch (UserData=0x7fffffffda00)

at /home/marsenau/src/llvm/lib/Support/CrashRecoveryContext.cpp:339

#3 0x00007ffff66cda23 in ExecuteOnThread_Dispatch (Arg=0x7fffffffd970)

at /home/marsenau/src/llvm/lib/Support/Threading.cpp:75

#4 0x00007ffff59b7e9a in start_thread (arg=0x7ffff519f700) at pthread_create.c:308
#5 0x00007ffff5ec34bd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#6 0x0000000000000000 in ?? ()

(gdb) p command_line_args
$1 = (const char * const *) 0x0

libclang: crash detected in code completion

I built this against llvm’s trunk:

libclang: crash detected in code completion
/Users/dave/bin/clang-complete: line 2: 13871 Segmentation fault: 11 DYLD_LIBRARY_PATH=/usr/local/llvm-trunk/lib ~/src/emacs-clang-complete-async/clang-complete "$*"

Process clang-complete exited abnormally with code 139

I’ll try building against clang-3.2 now

Make error

First of all: my english is bad, sorry!
My environment: mingw32, gcc version 4.7.0, clang 3.1
I try to make, but i got some errors: LINE_MAX wasn't define, so i try to add "#define LINE_MAX 4096", this time i still got errors:
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x1bb): undefined reference to llvm::sys::MutexImpl::~MutexImpl()' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x212): undefined reference toclang::SourceManager::isBeforeInTranslationUnit(clang::SourceLocation, clang::SourceLocation) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x25c): undefined reference to clang::SourceManager::isBeforeInTranslationUnit(clang::SourceLocation, clang::SourceLocation) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x4ae): undefined reference toclang::SourceManager::isBeforeInTranslationUnit(clang::SourceLocation, clang::SourceLocation) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x4cf): undefined reference to clang::SourceManager::isBeforeInTranslationUnit(clang::SourceLocation, clang::SourceLocation) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x5d8): undefined reference toclang::SourceManager::isBeforeInTranslationUnit(clang::SourceLocation, clang::SourceLocation) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x60c): more undefined references to clang::SourceManager::isBeforeInTranslationUnit(clang::SourceLocation, clang::SourceLocation) const' follow C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x61e): undefined reference toclang::SourceManager::getMacroArgExpandedLocation(clang::SourceLocation) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x68f): undefined reference to clang::ASTUnit::Save(llvm::StringRef)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x92b): undefined reference toclang::SourceManager::isBeforeInTranslationUnit(clang::SourceLocation, clang::SourceLocation) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x9e5): undefined reference to clang::SourceManager::isBeforeInTranslationUnit(clang::SourceLocation, clang::SourceLocation) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xa84): undefined reference toclang::SourceManager::isBeforeInTranslationUnit(clang::SourceLocation, clang::SourceLocation) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xb21): undefined reference to clang::SourceManager::isBeforeInTranslationUnit(clang::SourceLocation, clang::SourceLocation) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xc76): undefined reference toclang::Stmt::getLocStart() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xcfc): undefined reference to clang::SourceManager::isBeforeInTranslationUnit(clang::SourceLocation, clang::SourceLocation) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xd43): undefined reference toclang::SourceManager::isBeforeInTranslationUnit(clang::SourceLocation, clang::SourceLocation) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xdad): undefined reference to clang::SourceManager::isBeforeInTranslationUnit(clang::SourceLocation, clang::SourceLocation) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xdfc): undefined reference toclang::SourceManager::isBeforeInTranslationUnit(clang::SourceLocation, clang::SourceLocation) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xeef): undefined reference to clang::SourceManager::isBeforeInTranslationUnit(clang::SourceLocation, clang::SourceLocation) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xf36): more undefined references toclang::SourceManager::isBeforeInTranslationUnit(clang::SourceLocation, clang::SourceLocation) const' follow
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x12a5): undefined reference to llvm::raw_svector_ostream::raw_svector_ostream(llvm::SmallVectorImpl<char>&)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x12b8): undefined reference toclang::DeclarationName::printName(llvm::raw_ostream&) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x12c0): undefined reference to llvm::raw_svector_ostream::str()' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x12e4): undefined reference tollvm::raw_svector_ostream::~raw_svector_ostream()'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x1325): undefined reference to clang::DeclarationName::getObjCSelector() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x1346): undefined reference toclang::Selector::getAsString() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x1377): undefined reference to std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::_S_empty_rep_storage' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x145d): undefined reference tostd::basic_string<char, std::char_traits, std::allocator >::_Rep::M_destroy(std::allocator const&)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x15bc): undefined reference to clang::Stmt::getSourceRange() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x15ee): undefined reference toclang::Stmt::getSourceRange() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x1738): undefined reference to clang::ASTUnit::mapLocationFromPreamble(clang::SourceLocation)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x1746): undefined reference toclang::ASTUnit::mapLocationFromPreamble(clang::SourceLocation)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x1891): undefined reference to clang::SourceManager::getFileIDSize(clang::FileID) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x1a44): undefined reference toclang::SourceManager::loadSLocEntry(unsigned int, bool
) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x1a60): undefined reference to clang::SourceManager::loadSLocEntry(unsigned int, bool_) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x1b0d): undefined reference to operator new(unsigned int)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x1b9c): undefined reference toclang::Lexer::MeasureTokenLength(clang::SourceLocation, clang::SourceManager const&, clang::LangOptions const&)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x1be3): undefined reference to clang::SourceManager::isMacroArgExpansion(clang::SourceLocation) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x1bf7): undefined reference toclang::SourceManager::getExpansionRange(clang::SourceLocation) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x1c0c): undefined reference to clang::SourceManager::getSpellingLocSlowCase(clang::SourceLocation) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x1e19): undefined reference toclang::TypeLoc::getBeginLoc() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x1e43): undefined reference to clang::SourceManager::isBeforeInTranslationUnit(clang::SourceLocation, clang::SourceLocation) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x1e80): undefined reference toclang::TypeLoc::getBeginLoc() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x1eab): undefined reference to llvm::llvm_unreachable_internal(char const*, char const*, unsigned int)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x1f96): undefined reference tollvm::DisablePrettyStackTrace' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x1f9c): undefined reference to llvm::CrashRecoveryContext::Enable()'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x1fa8): undefined reference tollvm::sys::MutexImpl::acquire()' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x1fbd): undefined reference to llvm::sys::MutexImpl::release()'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x1fc9): undefined reference tooperator new(unsigned int)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x1fe0): undefined reference to std::basic_string<char, std::char_traits, std::allocator >::_Rep::_S_empty_rep_storage'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x1fe7): undefined reference tostd::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::_S_empty_rep_storage' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x2041): undefined reference to llvm::install_fatal_error_handler(void ()(void, std::basic_string<char, std::char_traits, std::allocator > const&), void*)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x2046): undefined reference tollvm::llvm_start_multithreaded()' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x207b): undefined reference to std::basic_string<char, std::char_traits, std::allocator >::_Rep::S_empty_rep_storage'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x2089): undefined reference tostd::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::_S_empty_rep_storage' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x2093): undefined reference to operator delete(void*)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x20c5): undefined reference tostd::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::_M_destroy(std::allocator<char> const&)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x20ed): undefined reference to std::basic_string<char, std::char_traits, std::allocator >::Rep::M_destroy(std::allocator const&)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x218a): undefined reference tostd::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::_S_empty_rep_storage' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x219a): undefined reference to std::basic_string<char, std::char_traits, std::allocator >::assign(std::basic_string<char, std::char_traits, std::allocator > const&)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x21bd): undefined reference tostd::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const_, std::allocator<char> const&)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x21f5): undefined reference to clang::ASTUnit::LoadFromASTFile(std::basic_string<char, std::char_traits, std::allocator > const&, llvm::IntrusiveRefCntPtrclang::DiagnosticsEngine, clang::FileSystemOptions const&, bool, std::pair<std::basic_string<char, std::char_traits, std::allocator >, llvm::PointerUnion<char const
, llvm::MemoryBuffer const
> >
, unsigned int, bool, bool)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x2202): undefined reference to std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::_S_empty_rep_storage' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x2229): undefined reference toclang::DiagnosticsEngine::~DiagnosticsEngine()'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x2231): undefined reference to operator delete(void*)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x224a): undefined reference tostd::basic_string<char, std::char_traits, std::allocator >::_Rep::_S_empty_rep_storage'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x228a): undefined reference to std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::_M_destroy(std::allocator<char> const&)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x22b9): undefined reference tostd::basic_string<char, std::char_traits, std::allocator >::_Rep::_M_destroy(std::allocator const&)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x2392): undefined reference to clang::ASTUnit::getOriginalSourceFileName()' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x248f): undefined reference toclang::FileManager::getFile(llvm::StringRef, bool, bool)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x24da): undefined reference to clang::HeaderSearch::isFileMultipleIncludeGuarded(clang::FileEntry const*)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x26d0): undefined reference toclang::LabelStmt::getName() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x277c): undefined reference to clang::DeclarationName::getAsString() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x27a7): undefined reference tostd::basic_string<char, std::char_traits, std::allocator >::_Rep::_S_empty_rep_storage'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x27e3): undefined reference to std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::_M_destroy(std::allocator<char> const&)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x2810): undefined reference toclang::DeclarationName::getAsString() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x283b): undefined reference to std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::_S_empty_rep_storage' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x288c): undefined reference toclang::DeclarationName::getAsString() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x28b7): undefined reference to std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::_S_empty_rep_storage' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x28fa): undefined reference toclang::LabelStmt::getName() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x29a3): undefined reference to clang::QualType::getAsString(clang::Type const*, clang::Qualifiers)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x29ce): undefined reference tostd::basic_string<char, std::char_traits, std::allocator >::_Rep::_S_empty_rep_storage'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x2a5c): undefined reference to clang::DeclarationName::getAsString() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x2a87): undefined reference tostd::basic_string<char, std::char_traits, std::allocator >::_Rep::_S_empty_rep_storage'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x2aea): undefined reference to clang::DeclarationName::getAsString() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x2b16): undefined reference tostd::basic_string<char, std::char_traits, std::allocator >::~basic_string()'

:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x2b5d): undefined reference to clang::QualType::getAsString(clang::Type const*, clang::Qualifiers)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x2b88): undefined reference tostd::basic_string<char, std::char_traits, std::allocator >::Rep::S_empty_rep_storage'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x2d78): undefined reference to clang::ASTContext::getTypeDeclTypeSlow(clang::TypeDecl const*) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x2dec): undefined reference toclang::DeclarationName::getAsString() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x2e17): undefined reference to std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::_S_empty_rep_storage' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x2e76): undefined reference toclang::DeclarationName::getAsString() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x2ea1): undefined reference to std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::_S_empty_rep_storage' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x31a3): undefined reference tostd::basic_string<char, std::char_traits, std::allocator >::basic_string(std::basic_string<char, std::char_traits, std::allocator > const&)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x31bc): undefined reference to std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x31d5): undefined reference tostd::basic_string<char, std::char_traits, std::allocator >::basic_string(std::basic_string<char, std::char_traits, std::allocator > const&)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x3329): undefined reference to llvm::raw_svector_ostream::raw_svector_ostream(llvm::SmallVectorImpl<char>&)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x333c): undefined reference toclang::DeclarationName::printName(llvm::raw_ostream&) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x3344): undefined reference to clang::FunctionDecl::getPrimaryTemplate() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x339a): undefined reference toclang::FunctionDecl::getNumParams() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x33bc): undefined reference to clang::FunctionDecl::getNumParams() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x33d5): undefined reference tostd::basic_string<char, std::char_traits, std::allocator >::Rep::S_empty_rep_storage'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x3408): undefined reference to clang::QualType::getAsStringInternal(clang::Type const*, clang::Qualifiers, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, clang::PrintingPolicy const&)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x3426): undefined reference tollvm::raw_ostream::write(char const
, unsigned int)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x3436): undefined reference to std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::_S_empty_rep_storage' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x34b8): undefined reference tollvm::raw_ostream::write(char const
, unsigned int)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x34c5): undefined reference to clang::FunctionDecl::isVariadic() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x34fb): undefined reference tollvm::raw_svector_ostream::str()'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x3523): undefined reference to llvm::raw_svector_ostream::~raw_svector_ostream()' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x3555): undefined reference tostd::basic_string<char, std::char_traits, std::allocator >::Rep::S_empty_rep_storage'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x356b): undefined reference to std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::_S_empty_rep_storage' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x3581): undefined reference tostd::basic_string<char, std::char_traits, std::allocator >::Rep::S_empty_rep_storage'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x35c0): undefined reference to std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::_M_destroy(std::allocator<char> const&)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x35fe): undefined reference tollvm::raw_ostream::write(char const
, unsigned int)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x3631): undefined reference to llvm::raw_ostream::write(char const_, unsigned int)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x3684): undefined reference to llvm::raw_svector_ostream::raw_svector_ostream(llvm::SmallVectorImpl&)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x3697): undefined reference toclang::DeclarationName::printName(llvm::raw_ostream&) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x380b): undefined reference to llvm::raw_ostream::write(char const*, unsigned int)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x383d): undefined reference tollvm::raw_svector_ostream::str()' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x3865): undefined reference to llvm::raw_svector_ostream::~raw_svector_ostream()'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x3938): undefined reference tollvm::raw_ostream::write(char const_, unsigned int)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x3959): undefined reference to llvm::raw_ostream::write(char const
, unsigned int)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x3966): undefined reference to clang::FunctionDecl::getNumParams() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x39b2): undefined reference tostd::basic_string<char, std::char_traits, std::allocator >::Rep::S_empty_rep_storage'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x39f1): undefined reference to clang::QualType::getAsStringInternal(clang::Type const*, clang::Qualifiers, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, clang::PrintingPolicy const&)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x3a0f): undefined reference tollvm::raw_ostream::write(char const
, unsigned int)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x3a1f): undefined reference to std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::_S_empty_rep_storage' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x3a56): undefined reference tostd::basic_string<char, std::char_traits, std::allocator >::Rep::M_destroy(std::allocator const&)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x3aaa): undefined reference to std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::_S_empty_rep_storage' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x3ae8): undefined reference toclang::QualType::getAsStringInternal(clang::Type const
, clang::Qualifiers, std::basic_string<char, std::char_traits, std::allocator >&, clang::PrintingPolicy const&)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x3b16): undefined reference to std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::_S_empty_rep_storage' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x3b55): undefined reference tostd::basic_string<char, std::char_traits, std::allocator >::Rep::M_destroy(std::allocator const&)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x3b7e): undefined reference to llvm::raw_ostream::write(char const*, unsigned int)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x3b9f): undefined reference tollvm::raw_ostream::write(char const
, unsigned int)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x3bc0): undefined reference to llvm::raw_ostream::write(char const_, unsigned int)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x3c1c): undefined reference to llvm::raw_ostream::write(char const*, unsigned int)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x3c69): undefined reference tollvm::raw_svector_ostream::raw_svector_ostream(llvm::SmallVectorImpl<char>&)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x3c7c): undefined reference to clang::DeclarationName::printName(llvm::raw_ostream&) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x3caa): undefined reference toclang::TemplateSpecializationType::PrintTemplateArgumentList(clang::TemplateArgument const_, unsigned int, clang::PrintingPolicy const&, bool)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x3ccb): undefined reference to llvm::raw_ostream::write(char const
, unsigned int)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x3cdb): undefined reference to std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::_S_empty_rep_storage' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x3ced): undefined reference tollvm::raw_svector_ostream::str()'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x3d15): undefined reference to llvm::raw_svector_ostream::~raw_svector_ostream()' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x3d83): undefined reference tostd::basic_string<char, std::char_traits, std::allocator >::Rep::M_destroy(std::allocator const&)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x3e05): undefined reference to std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::_M_destroy(std::allocator<char> const&)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x3e47): undefined reference tostd::basic_string<char, std::char_traits, std::allocator >::Rep::M_destroy(std::allocator const&)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x3eaf): undefined reference to std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::_M_destroy(std::allocator<char> const&)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x3ef6): undefined reference tollvm::llvm_unreachable_internal(char const
, char const
, unsigned int)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x501e): undefined reference to clang::Decl::getASTContext() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x52c8): undefined reference toclang::Stmt::getLocStart() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x5375): undefined reference to clang::Decl::getASTContext() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x5488): undefined reference toclang::Decl::getASTContext() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x54f5): undefined reference to clang::Decl::getASTContext() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x5562): undefined reference toclang::Decl::getASTContext() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x55fc): undefined reference to clang::TypeLoc::getBeginLoc() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x56a9): undefined reference toclang::Decl::getASTContext() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x5716): undefined reference to clang::Decl::getASTContext() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x5829): undefined reference toclang::Decl::getASTContext() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x5b31): undefined reference to clang::DeclarationName::getObjCSelector() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x5b4f): undefined reference toclang::Selector::getNumArgs() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x5c04): undefined reference to clang::DeclarationName::getObjCSelector() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x5c37): undefined reference toclang::getStandardSelectorLoc(unsigned int, clang::Selector, bool, llvm::ArrayRefclang::ParmVarDecl*, clang::SourceLocation)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x5fbc): undefined reference to clang::ObjCMessageExpr::getSelector() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x5fe1): undefined reference toclang::Selector::getNumArgs() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x6089): undefined reference to clang::DeclarationName::getObjCSelector() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x60ae): undefined reference toclang::Selector::getNumArgs() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x60fd): undefined reference to clang::ObjCMessageExpr::getSelector() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x6122): undefined reference toclang::Selector::getNumArgs() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x6171): undefined reference to clang::ObjCMessageExpr::getSelector() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x61a5): undefined reference toclang::getStandardSelectorLoc(unsigned int, clang::Selector, bool, llvm::ArrayRefclang::Expr*, clang::SourceLocation)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x61c0): undefined reference to clang::DeclarationName::getObjCSelector() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x61e5): undefined reference toclang::Selector::getNumArgs() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x6243): undefined reference to clang::DeclarationName::getObjCSelector() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x6277): undefined reference toclang::getStandardSelectorLoc(unsigned int, clang::Selector, bool, llvm::ArrayRefclang::ParmVarDecl*, clang::SourceLocation)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x6d9f): undefined reference to clang::UsingDirectiveDecl::getNominatedNamespace()' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x6e0b): undefined reference toclang::Decl::getASTContext() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x6e17): undefined reference to clang::VarDecl::getDefinition(clang::ASTContext&)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x6e34): undefined reference toclang::TagDecl::getDefinition() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x6e6b): undefined reference to clang::FunctionDecl::getBody(clang::FunctionDecl const*&) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x6f46): undefined reference toclang::FunctionDecl::getBody(clang::FunctionDecl const
&) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x6fce): undefined reference to clang::ObjCInterfaceDecl::getImplementation() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x6ffe): undefined reference toclang::DeclarationName::getObjCSelector() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x7012): undefined reference to clang::ObjCContainerDecl::getMethod(clang::Selector, bool) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x7082): undefined reference toclang::ObjCCategoryDecl::getImplementation() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x7249): undefined reference to clang::ObjCInterfaceDecl::getImplementation() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x74c7): undefined reference toclang::ObjCCategoryImplDecl::getCategoryDecl() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x78bb): undefined reference to clang::Decl::getASTContext() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x78d8): undefined reference toclang::SourceManager::getCharacterData(clang::SourceLocation, bool
) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x78f5): undefined reference to clang::SourceManager::getCharacterData(clang::SourceLocation, bool*) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x7912): undefined reference toclang::SourceManager::getSpellingLineNumber(clang::SourceLocation, bool) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x792f): undefined reference to clang::SourceManager::getSpellingColumnNumber(clang::SourceLocation, bool_) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x794c): undefined reference to clang::SourceManager::getSpellingLineNumber(clang::SourceLocation, bool*) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x7969): undefined reference toclang::SourceManager::getSpellingColumnNumber(clang::SourceLocation, bool_) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x7ab4): undefined reference to clang::SourceManager::getFileIDSlow(unsigned int) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x7b18): undefined reference toclang::SourceManager::getBufferData(clang::FileID, bool_) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x7cb8): undefined reference to clang::SourceManager::loadSLocEntry(unsigned int, bool*) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x7cd1): undefined reference toclang::SourceManager::loadSLocEntry(unsigned int, bool_) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x7cec): undefined reference to clang::SourceManager::getDecomposedSpellingLocSlowCase(clang::SrcMgr::SLocEntry const, unsigned int) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x7d46): undefined reference to clang::SourceManager::loadSLocEntry(unsigned int, bool*) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x7f11): undefined reference toclang::NamedDecl::getLinkage() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x7fbd): undefined reference to clang::Decl::getAvailability(std::basic_string<char, std::char_traits<char>, std::allocator<char> >*) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x81a7): undefined reference toclang::Decl::castFromDeclContext(clang::DeclContext const)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x82b2): undefined reference to clang::Decl::castFromDeclContext(clang::DeclContext const_)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x8419): undefined reference to operator new[](unsigned int)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x85f6): undefined reference toclang::CXXMethodDecl::begin_overridden_methods() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x8600): undefined reference to clang::CXXMethodDecl::end_overridden_methods() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x8766): undefined reference tooperator delete(void_)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x8853): undefined reference to clang::ASTUnit::ConcurrencyState::start()'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x88ba): undefined reference tollvm::CrashRecoveryContext::~CrashRecoveryContext()' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x88c2): undefined reference to clang::ASTUnit::ConcurrencyState::finish()'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x8a27): undefined reference toclang::getClangFullVersion()' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x8a56): undefined reference to std::basic_string<char, std::char_traits, std::allocator >::Rep::S_empty_rep_storage'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x8a92): undefined reference tostd::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::_M_destroy(std::allocator<char> const&)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x93b0): undefined reference to clang::Stmt::children()'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x9459): undefined reference toclang::StmtIteratorBase::NextVA()' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x9474): undefined reference to clang::StmtIteratorBase::GetDeclExpr() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x94c0): undefined reference toclang::StmtIteratorBase::NextDecl(bool)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x9556): undefined reference to llvm::llvm_unreachable_internal(char const
, char const
, unsigned int)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x959e): undefined reference to clang::CXXDependentScopeMemberExpr::isImplicitAccess() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x95aa): undefined reference toclang::CXXDependentScopeMemberExpr::isImplicitAccess() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x9610): undefined reference to clang::WhileStmt::getConditionVariable() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x963c): undefined reference toclang::SwitchStmt::getConditionVariable() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x978c): undefined reference to clang::IfStmt::getConditionVariable() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x98ae): undefined reference toclang::ForStmt::getConditionVariable() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x9b20): undefined reference to clang::UnresolvedMemberExpr::isImplicitAccess() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x9b30): undefined reference toclang::UnresolvedMemberExpr::isImplicitAccess() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x9e0b): undefined reference to clang::Expr::isImplicitCXXThis() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x9e4b): undefined reference toclang::LambdaExpr::getBody() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x9fc4): undefined reference to clang::Stmt::children()' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xa093): undefined reference toclang::DesignatedInitExpr::getArrayRangeEnd(clang::DesignatedInitExpr::Designator const&)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xa0a8): undefined reference to clang::DesignatedInitExpr::getArrayRangeStart(clang::DesignatedInitExpr::Designator const&)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xa7bd): undefined reference toclang::DesignatedInitExpr::getArrayIndex(clang::DesignatedInitExpr::Designator const&)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xab37): undefined reference to clang::StmtIteratorBase::GetDeclExpr() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xb23c): undefined reference tollvm::SmallVectorBase::grow_pod(unsigned int, unsigned int)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xb25c): undefined reference to operator new(unsigned int)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xb2a7): undefined reference tollvm::SmallVectorBase::grow_pod(unsigned int, unsigned int)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xb4eb): undefined reference to llvm::llvm_unreachable_internal(char const_, char const_, unsigned int)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xb696): undefined reference to clang::ASTUnit::RealizeTopLevelDeclsFromPreamble()'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xb6b9): undefined reference toclang::ASTUnit::RealizeTopLevelDeclsFromPreamble()' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xba22): undefined reference to llvm::llvm_unreachable_internal(char const, char const, unsigned int)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xbcfc): undefined reference to operator delete(void_)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xbfc9): undefined reference to llvm::llvm_unreachable_internal(char const*, char const*, unsigned int)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xc044): undefined reference toclang::Decl::getAttrs() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xc058): undefined reference to clang::Decl::getAttrs() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xc129): undefined reference toclang::InjectedClassNameType::getDecl() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xc4c9): undefined reference to clang::TagType::getDecl() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xc4ff): undefined reference toclang::TagType::getDecl() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xc5a4): undefined reference to clang::TagType::getDecl() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xc814): undefined reference toclang::ASTContext::getObjCIdDecl() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xc8c8): undefined reference to clang::ASTContext::getTypeDeclTypeSlow(clang::TypeDecl const*) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xc8d5): undefined reference toclang::ASTContext::getObjCSelDecl() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xc904): undefined reference to clang::ASTContext::getObjCClassDecl() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xc98b): undefined reference toclang::TemplateName::getKind() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xc9ac): undefined reference to llvm::llvm_unreachable_internal(char const*, char const*, unsigned int)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xcabe): undefined reference toclang::TemplateName::getAsTemplateDecl() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xcd76): undefined reference to llvm::llvm_unreachable_internal(char const*, char const*, unsigned int)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xd1f2): undefined reference tooperator delete[](void*)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xd230): undefined reference to llvm::APInt::initSlowCase(llvm::APInt const&)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xd634): undefined reference toclang::DeclarationName::getNameKind() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xd655): undefined reference to llvm::llvm_unreachable_internal(char const*, char const*, unsigned int)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xd685): undefined reference toclang::DeclarationName::getNameKind() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xd692): undefined reference to clang::DeclarationName::getNameKind() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xd69f): undefined reference toclang::DeclarationName::getNameKind() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xdd18): undefined reference to clang::NestedNameSpecifier::getKind() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xdd31): undefined reference toclang::NestedNameSpecifierLoc::getTypeLoc() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xdd5d): undefined reference to clang::NestedNameSpecifierLoc::getLocalSourceRange() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xdd69): undefined reference toclang::NestedNameSpecifier::getAsNamespaceAlias() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xdde6): undefined reference to clang::NestedNameSpecifierLoc::getLocalSourceRange() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xddf2): undefined reference toclang::NestedNameSpecifier::getAsNamespace() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xe0c6): undefined reference to operator delete'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xe102): undefined reference tollvm::APInt::initSlowCase(llvm::APInt const&)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xe758): undefined reference to llvm::llvm_unreachable_internal(char const*, char const*, unsigned int)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xeda3): undefined reference toclang::LambdaExpr::explicit_capture_begin() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xedb1): undefined reference to clang::LambdaExpr::explicit_capture_end() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xee51): undefined reference toclang::LambdaExpr::getCallOperator() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xf1ee): undefined reference to clang::NestedNameSpecifier::getKind() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xf287): undefined reference toclang::NestedNameSpecifier::getAsNamespaceAlias() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xf2e9): undefined reference to clang::NestedNameSpecifier::getAsNamespace() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xf3b0): undefined reference toclang::TagType::getDecl() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xf769): undefined reference to clang::ObjCPropertyDecl::findPropertyDecl(clang::DeclContext const*, clang::IdentifierInfo*)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0xff6b): undefined reference tollvm::SmallVectorBase::grow_pod(unsigned int, unsigned int)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x10229): undefined reference to clang::TypeLoc::IgnoreParensImpl(clang::TypeLoc)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x10463): undefined reference toclang::DeclContext::decls_begin() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x1046f): undefined reference to clang::DeclContext::decls_end() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x10740): undefined reference toclang::DeclContext::decls_begin() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x1074a): undefined reference to clang::DeclContext::decls_end() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x107b5): undefined reference tollvm::SmallVectorBase::grow_pod(unsigned int, unsigned int)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x109a2): undefined reference to clang::SourceManager::isBeforeInTranslationUnit(clang::SourceLocation, clang::SourceLocation) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x10a9c): undefined reference toclang::SourceManager::isBeforeInTranslationUnit(clang::SourceLocation, clang::SourceLocation) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x10b08): undefined reference to llvm::SmallVectorBase::grow_pod(unsigned int, unsigned int)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x10b2d): undefined reference tollvm::SmallVectorBase::grow_pod(unsigned int, unsigned int)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x10dfa): undefined reference to clang::ObjCInterfaceDecl::LoadExternalDefinition() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x10e24): undefined reference toclang::ObjCInterfaceDecl::LoadExternalDefinition() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x10e3c): undefined reference to clang::ObjCInterfaceDecl::LoadExternalDefinition() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x10e58): undefined reference toclang::ObjCInterfaceDecl::LoadExternalDefinition() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x10e74): undefined reference to clang::ObjCInterfaceDecl::LoadExternalDefinition() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x11169): undefined reference toclang::Decl::getASTContext() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x111de): undefined reference to clang::Decl::getASTContext() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x11643): undefined reference tooperator delete[](void*)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x11680): undefined reference to llvm::APInt::initSlowCase(llvm::APInt const&)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x117f6): undefined reference toclang::PreprocessingRecord::getPreprocessedEntitiesInRange(clang::SourceRange)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x1194f): undefined reference to clang::SourceManager::getFileIDSlow(unsigned int) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x1196f): undefined reference toclang::SourceManager::getFileIDSlow(unsigned int) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x11a5c): undefined reference to clang::SourceManager::getFileLocSlowCase(clang::SourceLocation) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x11a7c): undefined reference toclang::SourceManager::getFileLocSlowCase(clang::SourceLocation) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x11b81): undefined reference to clang::SourceManager::loadSLocEntry(unsigned int, bool*) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x11ba0): undefined reference toclang::SourceManager::loadSLocEntry(unsigned int, bool_) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x11bb9): undefined reference to clang::SourceManager::loadSLocEntry(unsigned int, bool) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x11bd4): undefined reference to clang::SourceManager::loadSLocEntry(unsigned int, bool*) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x11c72): undefined reference toclang::ASTUnit::mapLocationToPreamble(clang::SourceLocation)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x11c86): undefined reference to clang::ASTUnit::mapLocationToPreamble(clang::SourceLocation)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x11c97): undefined reference toclang::ASTUnit::isInPreambleFileID(clang::SourceLocation)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x11cbc): undefined reference to clang::ASTUnit::getEndOfPreambleFileID()' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x11d8c): undefined reference toclang::ASTUnit::getStartOfMainFileID()'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x11e27): undefined reference to clang::ASTUnit::findFileRegionDecls(clang::FileID, unsigned int, unsigned int, llvm::SmallVectorImpl<clang::Decl*>&)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x11e3c): undefined reference toclang::SourceManager::getFileIDSlow(unsigned int) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x11ea4): undefined reference to clang::ASTUnit::findFileRegionDecls(clang::FileID, unsigned int, unsigned int, llvm::SmallVectorImpl<clang::Decl*>&)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x1205a): undefined reference toclang::Decl::castFromDeclContext(clang::DeclContext const_)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x1207c): undefined reference to clang::DeclContext::classof(clang::Decl const_)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x12216): undefined reference to clang::Decl::castFromDeclContext(clang::DeclContext const*)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x12378): undefined reference toclang::SourceManager::getDecomposedExpansionLocSlowCase(clang::SrcMgr::SLocEntry const_) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x123f0): undefined reference to clang::SourceManager::loadSLocEntry(unsigned int, bool_) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x12410): undefined reference to clang::SourceManager::loadSLocEntry(unsigned int, bool*) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x12434): undefined reference toclang::SourceManager::loadSLocEntry(unsigned int, bool_) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x12444): undefined reference to clang::DeclContext::classof(clang::Decl const_)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x12454): undefined reference to clang::Decl::castToDeclContext(clang::Decl const*)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x124c5): undefined reference toclang::SourceManager::loadSLocEntry(unsigned int, bool_) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x1277c): undefined reference to clang::SourceManager::getFileIDSlow(unsigned int) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x127cc): undefined reference toclang::SourceManager::getFileIDSize(clang::FileID) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x12860): undefined reference to clang::SourceManager::getFileIDSlow(unsigned int) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x12a08): undefined reference toclang::SourceManager::getFileLocSlowCase(clang::SourceLocation) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x12a23): undefined reference to clang::SourceManager::getFileLocSlowCase(clang::SourceLocation) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x12b32): undefined reference toclang::SourceManager::loadSLocEntry(unsigned int, bool_) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x12b50): undefined reference to clang::SourceManager::loadSLocEntry(unsigned int, bool*) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x12b70): undefined reference toclang::SourceManager::loadSLocEntry(unsigned int, bool_) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x12b90): undefined reference to clang::SourceManager::loadSLocEntry(unsigned int, bool_) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x12ba9): undefined reference to clang::SourceManager::loadSLocEntry(unsigned int, bool*) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x12bc2): more undefined references toclang::SourceManager::loadSLocEntry(unsigned int, bool_) const' follow
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x12c65): undefined reference to clang::Lexer::GetBeginningOfToken(clang::SourceLocation, clang::SourceManager const&, clang::LangOptions const&)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x12cf9): undefined reference toclang::SourceManager::isMacroArgExpansion(clang::SourceLocation) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x12dfb): undefined reference to operator delete(void_)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x12e90): undefined reference to clang::ASTUnit::ConcurrencyState::start()'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x132f7): undefined reference toclang::ASTUnit::ConcurrencyState::finish()' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x135d4): undefined reference to clang::SourceManager::getFileIDSlow(unsigned int) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x13668): undefined reference toclang::SourceManager::getFileIDSlow(unsigned int) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x1381c): undefined reference to operator delete(void*)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x13b1b): undefined reference tooperator delete(void_)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x13b6a): undefined reference to operator delete(void_)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x13bf8): undefined reference to clang::SourceManager::getBufferData(clang::FileID, bool*) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x13c8c): undefined reference toclang::Lexer::Lexer(clang::SourceLocation, clang::LangOptions const&, char const_, char const_, char const_)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x13d22): undefined reference to clang::Lexer::LexTokenInternal(clang::Token&)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x14094): undefined reference toclang::SourceManager::loadSLocEntry(unsigned int, bool_) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x14103): undefined reference to clang::SourceManager::loadSLocEntry(unsigned int, bool*) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x1411c): undefined reference toclang::SourceManager::loadSLocEntry(unsigned int, bool_) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x14135): undefined reference to clang::SourceManager::loadSLocEntry(unsigned int, bool_) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x14206): undefined reference to clang::Lexer::LexTokenInternal(clang::Token&)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x14257): undefined reference tollvm::SmallVectorBase::grow_pod(unsigned int, unsigned int)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x143b3): undefined reference to operator new(unsigned int)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x14505): undefined reference tooperator delete(void_)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x14718): undefined reference to operator new(unsigned int)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x14860): undefined reference tooperator delete(void_)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x14bf9): undefined reference to clang::SourceManager::loadSLocEntry(unsigned int, bool*) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x14c12): undefined reference toclang::SourceManager::loadSLocEntry(unsigned int, bool_) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x14d6c): undefined reference to clang::SourceManager::loadSLocEntry(unsigned int, bool_) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x15011): undefined reference to clang::DeclarationName::getNameKind() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x1533d): undefined reference toclang::NestedNameSpecifierLoc::getSourceRange() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x154d6): undefined reference to clang::NestedNameSpecifierLoc::getSourceRange() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x155f2): undefined reference toclang::NestedNameSpecifierLoc::getSourceRange() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x15836): undefined reference to clang::ASTUnit::ConcurrencyState::start()' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x15842): undefined reference tooperator new(unsigned int)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x1585d): undefined reference to llvm::CrashRecoveryContext::GetCurrent()' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x1587b): undefined reference tooperator new(unsigned int)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x1589b): undefined reference to llvm::CrashRecoveryContext::registerCleanup(llvm::CrashRecoveryContextCleanup*)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x15915): undefined reference tollvm::MemoryBuffer::getMemBufferCopy(llvm::StringRef, llvm::StringRef)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x15935): undefined reference to std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x15972): undefined reference tostd::basic_string<char, std::char_traits, std::allocator >::basic_string(std::basic_string<char, std::char_traits, std::allocator > const&)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x1598f): undefined reference to std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::_S_empty_rep_storage' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x159d0): undefined reference toclang::ASTUnit::Reparse(std::pair<std::basic_string<char, std::char_traits, std::allocator >, llvm::PointerUnion<char const*, llvm::MemoryBuffer const*> >, unsigned int)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x159fa): undefined reference to std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::_S_empty_rep_storage' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x15a15): undefined reference tooperator delete(void
)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x15a1d): undefined reference to operator delete(void*)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x15a29): undefined reference toclang::ASTUnit::ConcurrencyState::finish()'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x15a6b): undefined reference to llvm::CrashRecoveryContext::unregisterCleanup(llvm::CrashRecoveryContextCleanup*)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x15aae): undefined reference tostd::basic_string<char, std::char_traits, std::allocator >::Rep::M_destroy(std::allocator const&)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x15afa): undefined reference to std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::_M_destroy(std::allocator<char> const&)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x15bc5): undefined reference toclang::ASTUnit::ConcurrencyState::start()'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x15c73): undefined reference to clang::SourceManager::getFileIDSlow(unsigned int) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x15d17): undefined reference toclang::SourceManager::getFileIDSlow(unsigned int) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x15db6): undefined reference to clang::ASTUnit::ConcurrencyState::finish()' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x15df9): undefined reference toclang::ASTUnit::ConcurrencyState::finish()'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x15f2b): undefined reference to clang::SourceManager::getBufferData(clang::FileID, bool*) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x15fc9): undefined reference toclang::Lexer::Lexer(clang::SourceLocation, clang::LangOptions const&, char const
, char const
, char const_)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x160aa): undefined reference to clang::Lexer::LexTokenInternal(clang::Token&)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x163b2): undefined reference tovtable for clang::Lexer'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x163bb): undefined reference to std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::_S_empty_rep_storage' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x163d1): undefined reference tostd::basic_string<char, std::char_traits, std::allocator >::Rep::S_empty_rep_storage'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x163e7): undefined reference to std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::_S_empty_rep_storage' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x16406): undefined reference tovtable for clang::PreprocessorLexer'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x16430): undefined reference to clang::SourceManager::loadSLocEntry(unsigned int, bool_) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x16450): undefined reference to clang::SourceManager::loadSLocEntry(unsigned int, bool*) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x16470): undefined reference toclang::SourceManager::loadSLocEntry(unsigned int, bool_) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x16490): undefined reference to clang::SourceManager::loadSLocEntry(unsigned int, bool
) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x16526): undefined reference to clang::Preprocessor::LookUpIdentifierInfo(clang::Token&) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x165ad): undefined reference toclang::SourceManager::loadSLocEntry(unsigned int, bool
) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x165c8): undefined reference to clang::SourceManager::loadSLocEntry(unsigned int, bool_) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x165e3): undefined reference to clang::SourceManager::loadSLocEntry(unsigned int, bool*) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x16689): undefined reference tostd::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::_M_destroy(std::allocator<char> const&)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x166bb): undefined reference to std::basic_string<char, std::char_traits, std::allocator >::_Rep::M_destroy(std::allocator const&)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x166ed): undefined reference tostd::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::_M_destroy(std::allocator<char> const&)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x16890): undefined reference to clang::Decl::getAttrs() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x169da): undefined reference tollvm::llvm_unreachable_internal(char const_, char const_, unsigned int)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x16e11): undefined reference to clang::Stmt::getLocStart() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x16e30): undefined reference toclang::Stmt::getLocStart() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x16e59): undefined reference to clang::Stmt::getLocStart() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x16f06): undefined reference toclang::TypeLoc::getBeginLoc() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x16f32): undefined reference to clang::SourceManager::isBeforeInTranslationUnit(clang::SourceLocation, clang::SourceLocation) const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x16f56): undefined reference toclang::SourceManager::getSpellingLocSlowCase(clang::SourceLocation) const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x17016): undefined reference to clang::Decl::getAttrs() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x1704f): undefined reference toclang::Decl::getAttrs() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x170f1): undefined reference to operator new(unsigned int)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x17247): undefined reference tooperator delete(void_)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x17367): undefined reference to clang::TypeLoc::getBeginLoc() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x17436): undefined reference tooperator new(unsigned int)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x17589): undefined reference to operator delete(void
)'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x176c6): undefined reference to operator new(unsigned int)' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x176f1): undefined reference tollvm::BumpPtrAllocator::getTotalMemory() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x17736): undefined reference to llvm::BumpPtrAllocator::getTotalMemory() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x17778): undefined reference toclang::SelectorTable::getTotalMemory() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x177b4): undefined reference to clang::ASTContext::getSideTableAllocatedMemory() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x1781e): undefined reference tollvm::BumpPtrAllocator::getTotalMemory() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x17863): undefined reference to llvm::BumpPtrAllocator::getTotalMemory() const' C:/MinGW/lib/libclang.a(CIndex.o):CIndex.cpp:(.text+0x178a6): undefined reference toclang::SourceManager::getMemoryBufferSizes() const'
C:/MinGW/lib/libclang.a(CIndex.o):CIndex.c

Normal auto completion features doesn't work properly with auto-complete-clang

Hey,

Usually, when i use the normal auto-complete, it goes in the other buffers to search for propositions. For instance, when I open a header file with some function proptotypes in a new buffer, i can in another buffer start to type a function name included in the header file and be proposed to complete it.
That functionality seems to be disabled when I load auto-complete-clang-async at the same time.

Has anyone experienced the same issue ?

Snippet expansion only occurs for overloaded functions.

emacs-clang-complete-async f01488
auto-complete 1.4ish (a4f83db)
yasnippet 0.8beta (20130218.2229 from MELPA)

When expanding a non-overloaded function, snippet expansion does not occur.

For example:

#include <stdio.h>

void main (void)
{
  fclos
}

with the cursor after "fclos", the completion fclose(FILE *__stream) will be offered. But when pressing RET to expand, point is moved after fclose(FILE *__stream), and snippet expansion does not occur.

[Feature Request] Create Variable on heap using `clang` constructor completion

Hi,

Maybe this is more a request for a yasnippet snippet, however, I don't know where else to ask.

When creating a Heap variable using clang you need to do a lot of manual work. You write the variable's type (Without completion because otherwise it becomes the constructor), then its name, then the string = new, again the type and finally can use clang to auto-complete the constructor. I think it would be useful to have a yasnippet (conveniently using the "N" key) which asks for a type (maybe with namespace), a name and which constructor to use and expands this to

$VarType$ * $VarName$ = new $Namespace$::$VarType$( $ConstructorArgs$ );

Increase responsiveness?

When there is a great number of potential completion candidates, I often find that autocomplete stalls for a second or so (and clang-complete blows up to several megabytes). I have tried to fix this by only returning candidates beginning with ac-clang-saved-prefix; also, no more than ac-candidate-limit candidates are returned. This seems to work for me, but I'm not sure whether my changes are good enough for a pull request. Comments greatly appreciated

launch Emacs error

run-hooks: Symbol's function definition is void: ac-common-setup
Error in post-command-hook (global-auto-complete-mode-check-buffers): (void-function ac-common-setup)

On Ubuntu 13.04

Installed auto-complete in emacs 24 using package system

Request for control commands of that parser

From documentation -- C-h m , your ecca does not have any steering commands.
Especially I would like to have command like CEDET/semantic M-x senator-force-tag-refresh to be able to parse and ad tags to the database. I recently wanted to add OGRE3d lib header files to the auto completition database . Only what I could was to open all header files from /usr/include/OGRE. and pray that the computer would not choke off to death ( waited 15 minutes and finally it worked ) !
So what I ask you is not to implement in new features to resemeble existing software,
I just ask you present meaningful interface to the user.
( That we have a nice bunch of commands via C-h m ) :) .

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.