Hi list,<br><br>I'm using libclang to complete a C++ code in my plugin for <a href="http://kate-editor.org">kate editor</a>. Aafter upgrade to 3.3 I've got a 'pure virtual function call' from time to time trying to use auto-complete in my other projects. Despite the bug can be reproduced, I can't find (and show) a simple enough code snippet w/o boost and a bunch of other dependencies :( <br>
Right now I have the following backtrace:<br><span style="font-family:courier new,monospace"><br>
</span><style type="text/css">
p, li { white-space: pre-wrap; }
</style><p style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px;text-indent:0px"><span style="font-family:courier new,monospace">#6 0x00007f943aa39329 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56</span></p>
<span style="font-family:courier new,monospace">
</span><p style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px;text-indent:0px"><span style="font-family:courier new,monospace">#7 0x00007f943aa3a688 in __GI_abort () at abort.c:90</span></p><span style="font-family:courier new,monospace">
</span><p style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px;text-indent:0px"><span style="font-family:courier new,monospace">#8 0x00007f943ae116c5 in __gnu_cxx::__verbose_terminate_handler () at /storage/tmp/paludis/sys-devel-gcc-4.8.1/work/gcc-4.8.1/libstdc++-v3/libsupc++/vterminate.cc:95</span></p>
<span style="font-family:courier new,monospace">
</span><p style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px;text-indent:0px"><span style="font-family:courier new,monospace">#9 0x00007f943ae0f836 in __cxxabiv1::__terminate (handler=<optimized out>) at /storage/tmp/paludis/sys-devel-gcc-4.8.1/work/gcc-4.8.1/libstdc++-v3/libsupc++/eh_terminate.cc:38</span></p>
<span style="font-family:courier new,monospace">
</span><p style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px;text-indent:0px"><span style="font-family:courier new,monospace">#10 0x00007f943ae0f863 in std::terminate () at /storage/tmp/paludis/sys-devel-gcc-4.8.1/work/gcc-4.8.1/libstdc++-v3/libsupc++/eh_terminate.cc:48</span></p>
<span style="font-family:courier new,monospace">
</span><p style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px;text-indent:0px"><span style="font-family:courier new,monospace">#11 0x00007f943ae1033f in __cxxabiv1::__cxa_pure_virtual () at /storage/tmp/paludis/sys-devel-gcc-4.8.1/work/gcc-4.8.1/libstdc++-v3/libsupc++/pure.cc:50</span></p>
<span style="font-family:courier new,monospace">
</span><p style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px;text-indent:0px"><span style="font-family:courier new,monospace">#12 0x00007f9422d34cc0 in clang::SourceManager::loadSLocEntry (this=this@entry=0x7f938dcdcd50, Index=Index@entry=388526, Invalid=Invalid@entry=0x0) at SourceManager.cpp:489</span></p>
<span style="font-family:courier new,monospace">
</span><p style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px;text-indent:0px"><span style="font-family:courier new,monospace">#13 0x00007f9422d3646f in getLoadedSLocEntry (Invalid=0x0, Index=388526, this=0x7f938dcdcd50) at /storage/tmp/paludis/sys-devel-clang-3.3-r1/work/llvm-3.3.src/tools/clang/lib/Basic/../../include/clang/Basic/SourceManager.h:1462</span></p>
<span style="font-family:courier new,monospace">
</span><p style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px;text-indent:0px"><span style="font-family:courier new,monospace">#14 getLoadedSLocEntryByID (Invalid=0x0, ID=-388528, this=0x7f938dcdcd50) at /storage/tmp/paludis/sys-devel-clang-3.3-r1/work/llvm-3.3.src/tools/clang/lib/Basic/../../include/clang/Basic/SourceManager.h:1543</span></p>
<span style="font-family:courier new,monospace">
</span><p style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px;text-indent:0px"><span style="font-family:courier new,monospace">#15 getSLocEntryByID (ID=-388528, this=0x7f938dcdcd50) at /storage/tmp/paludis/sys-devel-clang-3.3-r1/work/llvm-3.3.src/tools/clang/lib/Basic/../../include/clang/Basic/SourceManager.h:1537</span></p>
<span style="font-family:courier new,monospace">
</span><p style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px;text-indent:0px"><span style="font-family:courier new,monospace">#16 isOffsetInFileID (SLocOffset=2142953111, FID=..., this=0x7f938dcdcd50) at /storage/tmp/paludis/sys-devel-clang-3.3-r1/work/llvm-3.3.src/tools/clang/lib/Basic/../../include/clang/Basic/SourceManager.h:1570</span></p>
<span style="font-family:courier new,monospace">
</span><p style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px;text-indent:0px"><span style="font-family:courier new,monospace">#17 clang::SourceManager::getFileIDLoaded (this=this@entry=0x7f938dcdcd50, SLocOffset=SLocOffset@entry=2142953111) at SourceManager.cpp:858</span></p>
<span style="font-family:courier new,monospace">
</span><p style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px;text-indent:0px"><span style="font-family:courier new,monospace">#18 0x00007f9422d364b5 in clang::SourceManager::getFileIDSlow (this=this@entry=0x7f938dcdcd50, SLocOffset=SLocOffset@entry=2142953111) at SourceManager.cpp:703</span></p>
<span style="font-family:courier new,monospace">
</span><p style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px;text-indent:0px"><span style="font-family:courier new,monospace">#19 0x00007f94225ab560 in getFileID (SpellingLoc=..., this=0x7f938dcdcd50) at /storage/tmp/paludis/sys-devel-clang-3.3-r1/work/llvm-3.3.src/tools/clang/tools/libclang/../../include/clang/Basic/SourceManager.h:977</span></p>
<span style="font-family:courier new,monospace">
</span><p style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px;text-indent:0px"><span style="font-family:courier new,monospace">#20 getDecomposedLoc (Loc=..., this=0x7f938dcdcd50) at /storage/tmp/paludis/sys-devel-clang-3.3-r1/work/llvm-3.3.src/tools/clang/tools/libclang/../../include/clang/Basic/SourceManager.h:1092</span></p>
<span style="font-family:courier new,monospace">
</span><p style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px;text-indent:0px"><span style="font-family:courier new,monospace">#21 clang_getSpellingLocation (location=..., file=0x7fff1852fdc0, line=0x7fff1852fd60, column=0x7fff1852fd70, offset=0x0) at CXSourceLocation.cpp:314</span></p>
<span style="font-family:courier new,monospace">
</span><p style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px;text-indent:0px"><span style="font-family:courier new,monospace">#22 0x00007f942258a2a2 in clang_formatDiagnostic (Diagnostic=0x31bb9d0, Options=11) at CIndexDiagnostic.cpp:254</span></p>
<p style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px;text-indent:0px"><br></p>maybe this can help (to someone) to realize that's happened... this caused by the following code in my plugin:<br><br>
<span style="font-family:courier new,monospace"> CXCodeCompleteResults res = clang_codeCompleteAt( blah-blah );<br> ...<br> for (unsigned i = 0; i < clang_codeCompleteGetNumDiagnostics(res); ++i)<br> {<br> CXDiagnostic diag = clang_codeCompleteGetDiagnostic(res, i);<br>
CXString s = clang_formatDiagnostic(diag, clang_defaultDiagnosticDisplayOptions()); // <-- CORE HERE<br> ...<br></span><br>and everything (always) was fine before upgrade to 3.3... A'm I doing smth wrong?<br>
<br>