Bug 300440

Summary: Crash when parsing cpp project with lots of boost usage - DUChain concurrent writers
Product: [Developer tools] kdevplatform Reporter: Adam Wood <adamwood>
Component: languageAssignee: kdevelop-bugs-null
Status: RESOLVED DUPLICATE    
Severity: crash    
Priority: NOR    
Version: git master   
Target Milestone: 1.3.0   
Platform: Ubuntu   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Adam Wood 2012-05-22 08:50:56 UTC
Application: kdevelop (4.3.60)
KDE Platform Version: 4.8.2 (4.8.2)
Qt Version: 4.8.1
Operating System: Linux 3.2.0-24-generic x86_64
Distribution: Ubuntu 12.04 LTS

-- Information about the crash:
- What I was doing when the application crashed:
Watching Kdevelop parse the project in the background.  A (small) bit of invesitgation leads me to think it's related to boost headers being included. Possibly the boost spirit library.  The project builds with Boost.Build and I'm using the CustomBuildSystem plugin.  It is very easily reproducible on my desktop machine.  On my laptop which has an SSD I have never had it crash.

- Custom settings of the application:
It will crash with concurrent write even when background parsing is set to use 1 thread only.

The crash can be reproduced every time.

-- Backtrace:
Application: KDevelop (kdevelop), signal: Aborted
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
[Current thread is 1 (Thread 0x7f2110275780 (LWP 3107))]

Thread 11 (Thread 0x7f20f590c700 (LWP 3108)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007f210e6c14db in wait (time=18446744073709551615, this=0x3f25b00) at thread/qwaitcondition_unix.cpp:86
#2  QWaitCondition::wait (this=<optimized out>, mutex=0x3f02ab0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:158
#3  0x00007f210e6bbce6 in QReadWriteLock::lockForWrite (this=0x36bb1d8) at thread/qreadwritelock.cpp:293
#4  0x00007f210a931e8a in KDevelop::DUChainPrivate::doMoreCleanup (this=0x2ad5100, retries=1, needLockRepository=true) at /home/adamw/code/public/kdevplatform/language/duchain/duchain.cpp:720
#5  0x00007f210a92f2b4 in KDevelop::DUChainPrivate::CleanupThread::run (this=0x2ad2530) at /home/adamw/code/public/kdevplatform/language/duchain/duchain.cpp:291
#6  0x00007f210e6c0fcb in QThreadPrivate::start (arg=0x2ad2530) at thread/qthread_unix.cpp:298
#7  0x00007f210c70fe9a in start_thread (arg=0x7f20f590c700) at pthread_create.c:308
#8  0x00007f210d3ac4bd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#9  0x0000000000000000 in ?? ()

Thread 10 (Thread 0x7f20dcf28700 (LWP 3111)):
#0  0x00007fff181ff977 in clock_gettime ()
#1  0x00007f210bdb315d in __GI_clock_gettime (clock_id=<optimized out>, tp=<optimized out>) at ../sysdeps/unix/clock_gettime.c:116
#2  0x00007f210e717bb4 in do_gettime (frac=0x7f20dcf27b98, sec=0x7f20dcf27b90) at tools/qelapsedtimer_unix.cpp:123
#3  qt_gettime () at tools/qelapsedtimer_unix.cpp:140
#4  0x00007f210e7efb8d in QTimerInfoList::updateCurrentTime (this=0x7f20d8002860) at kernel/qeventdispatcher_unix.cpp:343
#5  0x00007f210e7efec3 in QTimerInfoList::timerWait (this=0x7f20d8002860, tm=...) at kernel/qeventdispatcher_unix.cpp:450
#6  0x00007f210e7ee97c in timerSourcePrepareHelper (src=<optimized out>, timeout=0x7f20dcf27c6c) at kernel/qeventdispatcher_glib.cpp:136
#7  0x00007f210e7eea25 in timerSourcePrepare (source=<optimized out>, timeout=<optimized out>) at kernel/qeventdispatcher_glib.cpp:169
#8  0x00007f210832a71e in g_main_context_prepare () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#9  0x00007f210832af1b in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#10 0x00007f210832b124 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#11 0x00007f210e7ef426 in QEventDispatcherGlib::processEvents (this=0x7f20d80008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#12 0x00007f210e7bec82 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#13 0x00007f210e7beed7 in QEventLoop::exec (this=0x7f20dcf27dd0, flags=...) at kernel/qeventloop.cpp:204
#14 0x00007f210e6bdfa7 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:501
#15 0x00007f210e79e9ff in QInotifyFileSystemWatcherEngine::run (this=0x3639830) at io/qfilesystemwatcher_inotify.cpp:248
#16 0x00007f210e6c0fcb in QThreadPrivate::start (arg=0x3639830) at thread/qthread_unix.cpp:298
#17 0x00007f210c70fe9a in start_thread (arg=0x7f20dcf28700) at pthread_create.c:308
#18 0x00007f210d3ac4bd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#19 0x0000000000000000 in ?? ()

Thread 9 (Thread 0x7f20d7a07700 (LWP 3112)):
#0  0x00007f210d3a0b03 in __GI___poll (fds=<optimized out>, nfds=<optimized out>, timeout=<optimized out>) at ../sysdeps/unix/sysv/linux/poll.c:87
#1  0x00007f210832aff6 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f210832b124 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f210e7ef426 in QEventDispatcherGlib::processEvents (this=0x7f20d00008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#4  0x00007f210e7bec82 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#5  0x00007f210e7beed7 in QEventLoop::exec (this=0x7f20d7a06dd0, flags=...) at kernel/qeventloop.cpp:204
#6  0x00007f210e6bdfa7 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:501
#7  0x00007f210aa536b9 in KDevelop::CompletionWorkerThread::run (this=0x3692140) at /home/adamw/code/public/kdevplatform/language/codecompletion/codecompletionmodel.cpp:84
#8  0x00007f210e6c0fcb in QThreadPrivate::start (arg=0x3692140) at thread/qthread_unix.cpp:298
#9  0x00007f210c70fe9a in start_thread (arg=0x7f20d7a07700) at pthread_create.c:308
#10 0x00007f210d3ac4bd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#11 0x0000000000000000 in ?? ()

Thread 8 (Thread 0x7f20d7206700 (LWP 3113)):
#0  0x00007f210836658c in g_mutex_unlock () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#1  0x00007f210832a713 in g_main_context_prepare () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f210832af1b in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f210832b124 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007f210e7ef426 in QEventDispatcherGlib::processEvents (this=0x7f20c80008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#5  0x00007f210e7bec82 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#6  0x00007f210e7beed7 in QEventLoop::exec (this=0x7f20d7205dd0, flags=...) at kernel/qeventloop.cpp:204
#7  0x00007f210e6bdfa7 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:501
#8  0x00007f210aa536b9 in KDevelop::CompletionWorkerThread::run (this=0x368ef90) at /home/adamw/code/public/kdevplatform/language/codecompletion/codecompletionmodel.cpp:84
#9  0x00007f210e6c0fcb in QThreadPrivate::start (arg=0x368ef90) at thread/qthread_unix.cpp:298
#10 0x00007f210c70fe9a in start_thread (arg=0x7f20d7206700) at pthread_create.c:308
#11 0x00007f210d3ac4bd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#12 0x0000000000000000 in ?? ()

Thread 7 (Thread 0x7f20d6a05700 (LWP 3118)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007f20f5ea3222 in ?? () from /usr/lib/x86_64-linux-gnu/libQtScript.so.4
#2  0x00007f20f5ea3259 in ?? () from /usr/lib/x86_64-linux-gnu/libQtScript.so.4
#3  0x00007f210c70fe9a in start_thread (arg=0x7f20d6a05700) at pthread_create.c:308
#4  0x00007f210d3ac4bd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#5  0x0000000000000000 in ?? ()

Thread 6 (Thread 0x7f20d5df4700 (LWP 3132)):
#0  0x00007f210d3a0b03 in __GI___poll (fds=<optimized out>, nfds=<optimized out>, timeout=<optimized out>) at ../sysdeps/unix/sysv/linux/poll.c:87
#1  0x00007f210832aff6 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f210832b124 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f210e7ef426 in QEventDispatcherGlib::processEvents (this=0x7f20cc0008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#4  0x00007f210e7bec82 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#5  0x00007f210e7beed7 in QEventLoop::exec (this=0x7f20d5df3dd0, flags=...) at kernel/qeventloop.cpp:204
#6  0x00007f210e6bdfa7 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:501
#7  0x00007f210e79e9ff in QInotifyFileSystemWatcherEngine::run (this=0x461d4c0) at io/qfilesystemwatcher_inotify.cpp:248
#8  0x00007f210e6c0fcb in QThreadPrivate::start (arg=0x461d4c0) at thread/qthread_unix.cpp:298
#9  0x00007f210c70fe9a in start_thread (arg=0x7f20d5df4700) at pthread_create.c:308
#10 0x00007f210d3ac4bd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#11 0x0000000000000000 in ?? ()

Thread 5 (Thread 0x7f20c7fff700 (LWP 3197)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007f2105450dec in ?? () from /usr/lib/x86_64-linux-gnu/libQtWebKit.so.4
#2  0x00007f2105450f19 in ?? () from /usr/lib/x86_64-linux-gnu/libQtWebKit.so.4
#3  0x00007f210c70fe9a in start_thread (arg=0x7f20c7fff700) at pthread_create.c:308
#4  0x00007f210d3ac4bd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#5  0x0000000000000000 in ?? ()

Thread 4 (Thread 0x7f20d4b5b700 (LWP 3198)):
#0  0x00007f210d3a0b03 in __GI___poll (fds=<optimized out>, nfds=<optimized out>, timeout=<optimized out>) at ../sysdeps/unix/sysv/linux/poll.c:87
#1  0x00007f210832aff6 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f210832b124 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f210e7ef426 in QEventDispatcherGlib::processEvents (this=0x7f20bc0015c0, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#4  0x00007f210e7bec82 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#5  0x00007f210e7beed7 in QEventLoop::exec (this=0x7f20d4b5ae00, flags=...) at kernel/qeventloop.cpp:204
#6  0x00007f210e6bdfa7 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:501
#7  0x00007f210e6c0fcb in QThreadPrivate::start (arg=0x33e7420) at thread/qthread_unix.cpp:298
#8  0x00007f210c70fe9a in start_thread (arg=0x7f20d4b5b700) at pthread_create.c:308
#9  0x00007f210d3ac4bd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#10 0x0000000000000000 in ?? ()

Thread 3 (Thread 0x7f20c5836700 (LWP 3769)):
[KCrash Handler]
#6  0x00007f210d2f0445 in __GI_raise (sig=<optimized out>) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#7  0x00007f210d2f3bab in __GI_abort () at abort.c:91
#8  0x00007f210e6b650b in qt_message_output (msgType=<optimized out>, buf=0x7f207b139ff8 "ASSERT: \"DUChain::lock()->currentThreadHasWriteLock()\" in file /home/adamw/code/public/kdevplatform/language/duchain/ducontext.cpp, line 550") at global/qglobal.cpp:2276
#9  0x00007f210e6b68bf in qt_message(QtMsgType, const char *, typedef __va_list_tag __va_list_tag *) (msgType=QtFatalMsg, msg=0x7f210e823ae8 "ASSERT: \"%s\" in file %s, line %d", ap=0x7f20c5826388) at global/qglobal.cpp:2322
#10 0x00007f210e6b6a64 in qFatal (msg=<optimized out>) at global/qglobal.cpp:2505
#11 0x00007f210a95245d in KDevelop::DUContext::setOwner (this=0x7f2079492940, owner=0x0) at /home/adamw/code/public/kdevplatform/language/duchain/ducontext.cpp:550
#12 0x00007f210a984399 in KDevelop::Declaration::~Declaration (this=0x7f207b139e20, __in_chrg=<optimized out>) at /home/adamw/code/public/kdevplatform/language/duchain/declaration.cpp:167
#13 0x00007f20d7d673b2 in TemplateParameterDeclaration::~TemplateParameterDeclaration (this=0x7f207b139e20, __in_chrg=<optimized out>) at /home/adamw/code/public/kdevelop/languages/cpp/cppduchain/templateparameterdeclaration.cpp:36
#14 0x00007f20d7d32e5e in Cpp::SpecialTemplateDeclaration<TemplateParameterDeclaration>::~SpecialTemplateDeclaration (this=0x7f207b139e20, __in_chrg=<optimized out>) at /home/adamw/code/public/kdevelop/languages/cpp/cppduchain/templatedeclaration.h:247
#15 0x00007f20d7d32e9c in Cpp::SpecialTemplateDeclaration<TemplateParameterDeclaration>::~SpecialTemplateDeclaration (this=0x7f207b139e20, __in_chrg=<optimized out>) at /home/adamw/code/public/kdevelop/languages/cpp/cppduchain/templatedeclaration.h:247
#16 0x00007f210a956010 in KDevelop::DUContext::deleteLocalDeclarations (this=0x7f207b12ae10) at /home/adamw/code/public/kdevplatform/language/duchain/ducontext.cpp:1086
#17 0x00007f210a9520a1 in KDevelop::DUContext::~DUContext (this=0x7f207b12ae10, __in_chrg=<optimized out>) at /home/adamw/code/public/kdevplatform/language/duchain/ducontext.cpp:518
#18 0x00007f20d7cf8c4a in Cpp::CppDUContext<KDevelop::DUContext>::~CppDUContext (this=0x7f207b12ae10, __in_chrg=<optimized out>) at /home/adamw/code/public/kdevelop/languages/cpp/cppduchain/cppducontext.h:713
#19 0x00007f20d7cf8c7c in Cpp::CppDUContext<KDevelop::DUContext>::~CppDUContext (this=0x7f207b12ae10, __in_chrg=<optimized out>) at /home/adamw/code/public/kdevelop/languages/cpp/cppduchain/cppducontext.h:713
#20 0x00007f20d7d7737f in Cpp::TemplateDeclaration::instantiate (this=0x7f20794914e0, _templateArguments=..., source=0x7f20c3ca9830, forceLocal=false) at /home/adamw/code/public/kdevelop/languages/cpp/cppduchain/templatedeclaration.cpp:901
#21 0x00007f20d7d6995d in Cpp::FindDeclaration::instantiateDeclaration (this=0x7f20c5828900, decl=0x7f20794914b0, templateArguments=...) at /home/adamw/code/public/kdevelop/languages/cpp/cppduchain/cppducontext.cpp:125
#22 0x00007f20d7d6aba3 in Cpp::FindDeclaration::closeIdentifier (this=0x7f20c5828900, isFinalIdentifier=true) at /home/adamw/code/public/kdevelop/languages/cpp/cppduchain/cppducontext.cpp:273
#23 0x00007f20d7da328e in NameASTVisitor::visitUnqualifiedName (this=0x7f20c58288a0, node=0x7f207b0c58f8) at /home/adamw/code/public/kdevelop/languages/cpp/cppduchain/name_visitor.cpp:90
#24 0x00007f20d7a2c0c3 in Visitor::visit (this=0x7f20c58288a0, node=0x7f207b0c58f8) at /home/adamw/code/public/kdevelop/languages/cpp/parser/visitor.cpp:124
#25 0x00007f20d7a285e5 in DefaultVisitor::visitName (this=0x7f20c58288a0, node=0x7f207b0c5ac8) at /home/adamw/code/public/kdevelop/languages/cpp/parser/default_visitor.cpp:257
#26 0x00007f20d7a2c0c3 in Visitor::visit (this=0x7f20c58288a0, node=0x7f207b0c5ac8) at /home/adamw/code/public/kdevelop/languages/cpp/parser/visitor.cpp:124
#27 0x00007f20d7da4670 in NameASTVisitor::run (this=0x7f20c58288a0, node=0x7f207b0c5ac8, skipLastNamePart=false) at /home/adamw/code/public/kdevelop/languages/cpp/cppduchain/name_visitor.cpp:287
#28 0x00007f20d7da65a9 in TypeASTVisitor::visitName (this=0x7f20c5828d90, node=0x7f207b0c5ac8) at /home/adamw/code/public/kdevelop/languages/cpp/cppduchain/type_visitor.cpp:308
#29 0x00007f20d7a2c0c3 in Visitor::visit (this=0x7f20c5828d90, node=0x7f207b0c5ac8) at /home/adamw/code/public/kdevelop/languages/cpp/parser/visitor.cpp:124
#30 0x00007f20d7da64b8 in TypeASTVisitor::visitSimpleTypeSpecifier (this=0x7f20c5828d90, node=0x7f207b0c5af8) at /home/adamw/code/public/kdevelop/languages/cpp/cppduchain/type_visitor.cpp:299
#31 0x00007f20d7a2c0c3 in Visitor::visit (this=0x7f20c5828d90, node=0x7f207b0c5af8) at /home/adamw/code/public/kdevelop/languages/cpp/parser/visitor.cpp:124
#32 0x00007f20d7da591b in TypeASTVisitor::run (this=0x7f20c5828d90, node=0x7f207b0c5af8) at /home/adamw/code/public/kdevelop/languages/cpp/cppduchain/type_visitor.cpp:113
#33 0x00007f20d7da5255 in TypeASTVisitor::run (this=0x7f20c5828d90, node=0x7f207b0c5bb8) at /home/adamw/code/public/kdevelop/languages/cpp/cppduchain/type_visitor.cpp:51
#34 0x00007f20d7da3f83 in NameASTVisitor::processTemplateArgument (this=0x7f20c58290c0, node=0x7f207b0c5be0) at /home/adamw/code/public/kdevelop/languages/cpp/cppduchain/name_visitor.cpp:198
#35 0x00007f20d7d08cac in DeclarationBuilder::createSpecializationInformation (this=0x7f20c582a160, base=..., name=0x7f207b0c5078, templateContext=0x7f207b138f60) at /home/adamw/code/public/kdevelop/languages/cpp/cppduchain/declarationbuilder.cpp:973
#36 0x00007f20d7d08f1f in DeclarationBuilder::createSpecializationInformation (this=0x7f20c582a160, name=0x7f207b0c5c28, templateContext=0x7f207b138f60) at /home/adamw/code/public/kdevelop/languages/cpp/cppduchain/declarationbuilder.cpp:1005
#37 0x00007f20d7d09968 in DeclarationBuilder::visitClassSpecifier (this=0x7f20c582a160, node=0x7f207b0c6940) at /home/adamw/code/public/kdevelop/languages/cpp/cppduchain/declarationbuilder.cpp:1114
#38 0x00007f20d7a2c0c3 in Visitor::visit (this=0x7f20c582a1c0, node=0x7f207b0c6940) at /home/adamw/code/public/kdevelop/languages/cpp/parser/visitor.cpp:124
#39 0x00007f20d7d3b12c in TypeBuilder::visitSimpleDeclaration (this=0x7f20c582a160, node=0x7f207b0c6f10) at /home/adamw/code/public/kdevelop/languages/cpp/cppduchain/typebuilder.cpp:624
#40 0x00007f20d7d069ae in DeclarationBuilder::visitSimpleDeclaration (this=0x7f20c582a160, node=0x7f207b0c6f10) at /home/adamw/code/public/kdevelop/languages/cpp/cppduchain/declarationbuilder.cpp:414
#41 0x00007f20d7a2c0c3 in Visitor::visit (this=0x7f20c582a1c0, node=0x7f207b0c6f10) at /home/adamw/code/public/kdevelop/languages/cpp/parser/visitor.cpp:124
#42 0x00007f20d7cf050e in ContextBuilder::visitTemplateDeclaration (this=0x7f20c582a160, ast=0x7f207b0c6f68) at /home/adamw/code/public/kdevelop/languages/cpp/cppduchain/contextbuilder.cpp:292
#43 0x00007f20d7a2c0c3 in Visitor::visit (this=0x7f20c582a1c0, node=0x7f207b0c6f68) at /home/adamw/code/public/kdevelop/languages/cpp/parser/visitor.cpp:124
#44 0x00007f20d7a29662 in visitNodes<DeclarationAST*> (v=0x7f20c582a1c0, nodes=0x7f207b0c6fa0) at /home/adamw/code/public/kdevelop/languages/cpp/parser/visitor.h:139
#45 0x00007f20d7a284ed in DefaultVisitor::visitLinkageBody (this=0x7f20c582a1c0, node=0x7f207b081800) at /home/adamw/code/public/kdevelop/languages/cpp/parser/default_visitor.cpp:239
#46 0x00007f20d7a2c0c3 in Visitor::visit (this=0x7f20c582a1c0, node=0x7f207b081800) at /home/adamw/code/public/kdevelop/languages/cpp/parser/visitor.cpp:124
#47 0x00007f20d7a2861a in DefaultVisitor::visitNamespace (this=0x7f20c582a1c0, node=0x7f207b0817c8) at /home/adamw/code/public/kdevelop/languages/cpp/parser/default_visitor.cpp:262
#48 0x00007f20d7cf19f4 in ContextBuilder::visitNamespace (this=0x7f20c582a160, node=0x7f207b0817c8) at /home/adamw/code/public/kdevelop/languages/cpp/cppduchain/contextbuilder.cpp:472
#49 0x00007f20d7d0972d in DeclarationBuilder::visitNamespace (this=0x7f20c582a160, ast=0x7f207b0817c8) at /home/adamw/code/public/kdevelop/languages/cpp/cppduchain/declarationbuilder.cpp:1085
#50 0x00007f20d7a2c0c3 in Visitor::visit (this=0x7f20c582a1c0, node=0x7f207b0817c8) at /home/adamw/code/public/kdevelop/languages/cpp/parser/visitor.cpp:124
#51 0x00007f20d7a29662 in visitNodes<DeclarationAST*> (v=0x7f20c582a1c0, nodes=0x7f207b0e7678) at /home/adamw/code/public/kdevelop/languages/cpp/parser/visitor.h:139
#52 0x00007f20d7a284ed in DefaultVisitor::visitLinkageBody (this=0x7f20c582a1c0, node=0x7f207b0817a8) at /home/adamw/code/public/kdevelop/languages/cpp/parser/default_visitor.cpp:239
#53 0x00007f20d7a2c0c3 in Visitor::visit (this=0x7f20c582a1c0, node=0x7f207b0817a8) at /home/adamw/code/public/kdevelop/languages/cpp/parser/visitor.cpp:124
#54 0x00007f20d7a2861a in DefaultVisitor::visitNamespace (this=0x7f20c582a1c0, node=0x7f207b081770) at /home/adamw/code/public/kdevelop/languages/cpp/parser/default_visitor.cpp:262
#55 0x00007f20d7cf19f4 in ContextBuilder::visitNamespace (this=0x7f20c582a160, node=0x7f207b081770) at /home/adamw/code/public/kdevelop/languages/cpp/cppduchain/contextbuilder.cpp:472
#56 0x00007f20d7d0972d in DeclarationBuilder::visitNamespace (this=0x7f20c582a160, ast=0x7f207b081770) at /home/adamw/code/public/kdevelop/languages/cpp/cppduchain/declarationbuilder.cpp:1085
#57 0x00007f20d7a2c0c3 in Visitor::visit (this=0x7f20c582a1c0, node=0x7f207b081770) at /home/adamw/code/public/kdevelop/languages/cpp/parser/visitor.cpp:124
#58 0x00007f20d7a29662 in visitNodes<DeclarationAST*> (v=0x7f20c582a1c0, nodes=0x7f207b0e7690) at /home/adamw/code/public/kdevelop/languages/cpp/parser/visitor.h:139
#59 0x00007f20d7a284ed in DefaultVisitor::visitLinkageBody (this=0x7f20c582a1c0, node=0x7f207b081750) at /home/adamw/code/public/kdevelop/languages/cpp/parser/default_visitor.cpp:239
#60 0x00007f20d7a2c0c3 in Visitor::visit (this=0x7f20c582a1c0, node=0x7f207b081750) at /home/adamw/code/public/kdevelop/languages/cpp/parser/visitor.cpp:124
#61 0x00007f20d7a2861a in DefaultVisitor::visitNamespace (this=0x7f20c582a1c0, node=0x7f207b081718) at /home/adamw/code/public/kdevelop/languages/cpp/parser/default_visitor.cpp:262
#62 0x00007f20d7cf19f4 in ContextBuilder::visitNamespace (this=0x7f20c582a160, node=0x7f207b081718) at /home/adamw/code/public/kdevelop/languages/cpp/cppduchain/contextbuilder.cpp:472
#63 0x00007f20d7d0972d in DeclarationBuilder::visitNamespace (this=0x7f20c582a160, ast=0x7f207b081718) at /home/adamw/code/public/kdevelop/languages/cpp/cppduchain/declarationbuilder.cpp:1085
#64 0x00007f20d7a2c0c3 in Visitor::visit (this=0x7f20c582a1c0, node=0x7f207b081718) at /home/adamw/code/public/kdevelop/languages/cpp/parser/visitor.cpp:124
#65 0x00007f20d7a29662 in visitNodes<DeclarationAST*> (v=0x7f20c582a1c0, nodes=0x7f207b0e76a8) at /home/adamw/code/public/kdevelop/languages/cpp/parser/visitor.h:139
#66 0x00007f20d7a28ded in DefaultVisitor::visitTranslationUnit (this=0x7f20c582a1c0, node=0x7f207b0816d0) at /home/adamw/code/public/kdevelop/languages/cpp/parser/default_visitor.cpp:412
#67 0x00007f20d7a2c0c3 in Visitor::visit (this=0x7f20c582a1c0, node=0x7f207b0816d0) at /home/adamw/code/public/kdevelop/languages/cpp/parser/visitor.cpp:124
#68 0x00007f20d7cefc5b in ContextBuilder::startVisiting (this=0x7f20c582a160, node=0x7f207b0816d0) at /home/adamw/code/public/kdevelop/languages/cpp/cppduchain/contextbuilder.cpp:186
#69 0x00007f20d7cf68e7 in KDevelop::AbstractContextBuilder<AST, NameAST>::supportBuild (this=0x7f20c582a160, node=0x7f207b0816d0, context=0x7f20c3ca9830) at /usr/local/include/kdevplatform/language/duchain/builders/abstractcontextbuilder.h:133
#70 0x00007f20d7cf1586 in ContextBuilder::buildContexts (this=0x7f20c582a160, file=..., node=0x7f207b0816d0, includes=0x7f20c582ab50, updateContext=..., removeOldImports=false) at /home/adamw/code/public/kdevelop/languages/cpp/cppduchain/contextbuilder.cpp:421
#71 0x00007f20d7d04bcf in DeclarationBuilder::buildDeclarations (this=0x7f20c582a160, file=..., node=0x7f207b0816d0, includes=0x7f20c582ab50, updateContext=..., removeOldImports=false) at /home/adamw/code/public/kdevelop/languages/cpp/cppduchain/declarationbuilder.cpp:94
#72 0x00007f20dc47a249 in CPPInternalParseJob::run (this=0x7f207abf8e30) at /home/adamw/code/public/kdevelop/languages/cpp/cppparsejob.cpp:639
#73 0x00007f20dc476f7c in CPPParseJob::parseForeground (this=0x7f2079c37680) at /home/adamw/code/public/kdevelop/languages/cpp/cppparsejob.cpp:177
#74 0x00007f20dc485cb1 in PreprocessJob::sourceNeeded (this=0x7f207a4d5560, _fileName=..., type=rpp::Preprocessor::IncludeGlobal, sourceLine=21, skipCurrentPath=false) at /home/adamw/code/public/kdevelop/languages/cpp/preprocessjob.cpp:579
#75 0x00007f20dc220b51 in rpp::pp::handle_include (this=0x7f20c582bf10, skip_current_path=false, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:213
#76 0x00007f20dc220215 in rpp::pp::handle_directive (this=0x7f20c582bf10, directive=723977, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:131
#77 0x00007f20dc220e29 in rpp::pp::operator() (this=0x7f20c582bf10, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:266
#78 0x00007f20dc21fd83 in rpp::pp::processFileInternal (this=0x7f20c582bf10, fileName=..., fileContents=..., result=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:98
#79 0x00007f20dc21fc40 in rpp::pp::processFile (this=0x7f20c582bf10, fileName=..., data=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:85
#80 0x00007f20dc4835dd in PreprocessJob::run (this=0x7f207a4d5560) at /home/adamw/code/public/kdevelop/languages/cpp/preprocessjob.cpp:245
#81 0x00007f20dc476f5b in CPPParseJob::parseForeground (this=0x7f207a4fb2f0) at /home/adamw/code/public/kdevelop/languages/cpp/cppparsejob.cpp:176
#82 0x00007f20dc485cb1 in PreprocessJob::sourceNeeded (this=0x7f2079160de0, _fileName=..., type=rpp::Preprocessor::IncludeGlobal, sourceLine=27, skipCurrentPath=false) at /home/adamw/code/public/kdevelop/languages/cpp/preprocessjob.cpp:579
#83 0x00007f20dc220b51 in rpp::pp::handle_include (this=0x7f20c582e150, skip_current_path=false, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:213
#84 0x00007f20dc220215 in rpp::pp::handle_directive (this=0x7f20c582e150, directive=723977, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:131
#85 0x00007f20dc220e29 in rpp::pp::operator() (this=0x7f20c582e150, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:266
#86 0x00007f20dc21fd83 in rpp::pp::processFileInternal (this=0x7f20c582e150, fileName=..., fileContents=..., result=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:98
#87 0x00007f20dc21fc40 in rpp::pp::processFile (this=0x7f20c582e150, fileName=..., data=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:85
#88 0x00007f20dc4835dd in PreprocessJob::run (this=0x7f2079160de0) at /home/adamw/code/public/kdevelop/languages/cpp/preprocessjob.cpp:245
#89 0x00007f20dc476f5b in CPPParseJob::parseForeground (this=0x7f207915ce10) at /home/adamw/code/public/kdevelop/languages/cpp/cppparsejob.cpp:176
#90 0x00007f20dc485cb1 in PreprocessJob::sourceNeeded (this=0x7f20788f4900, _fileName=..., type=rpp::Preprocessor::IncludeGlobal, sourceLine=23, skipCurrentPath=false) at /home/adamw/code/public/kdevelop/languages/cpp/preprocessjob.cpp:579
#91 0x00007f20dc220b51 in rpp::pp::handle_include (this=0x7f20c5830390, skip_current_path=false, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:213
#92 0x00007f20dc220215 in rpp::pp::handle_directive (this=0x7f20c5830390, directive=723977, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:131
#93 0x00007f20dc220e29 in rpp::pp::operator() (this=0x7f20c5830390, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:266
#94 0x00007f20dc21fd83 in rpp::pp::processFileInternal (this=0x7f20c5830390, fileName=..., fileContents=..., result=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:98
#95 0x00007f20dc21fc40 in rpp::pp::processFile (this=0x7f20c5830390, fileName=..., data=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:85
#96 0x00007f20dc4835dd in PreprocessJob::run (this=0x7f20788f4900) at /home/adamw/code/public/kdevelop/languages/cpp/preprocessjob.cpp:245
#97 0x00007f20dc476f5b in CPPParseJob::parseForeground (this=0x7f20788f4d60) at /home/adamw/code/public/kdevelop/languages/cpp/cppparsejob.cpp:176
#98 0x00007f20dc485cb1 in PreprocessJob::sourceNeeded (this=0x7f20c001ea40, _fileName=..., type=rpp::Preprocessor::IncludeGlobal, sourceLine=30, skipCurrentPath=false) at /home/adamw/code/public/kdevelop/languages/cpp/preprocessjob.cpp:579
#99 0x00007f20dc220b51 in rpp::pp::handle_include (this=0x7f20c58325d0, skip_current_path=false, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:213
#100 0x00007f20dc220215 in rpp::pp::handle_directive (this=0x7f20c58325d0, directive=723977, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:131
#101 0x00007f20dc220e29 in rpp::pp::operator() (this=0x7f20c58325d0, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:266
#102 0x00007f20dc21fd83 in rpp::pp::processFileInternal (this=0x7f20c58325d0, fileName=..., fileContents=..., result=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:98
#103 0x00007f20dc21fc40 in rpp::pp::processFile (this=0x7f20c58325d0, fileName=..., data=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:85
#104 0x00007f20dc4835dd in PreprocessJob::run (this=0x7f20c001ea40) at /home/adamw/code/public/kdevelop/languages/cpp/preprocessjob.cpp:245
#105 0x00007f20dc476f5b in CPPParseJob::parseForeground (this=0x7f20c00763e0) at /home/adamw/code/public/kdevelop/languages/cpp/cppparsejob.cpp:176
#106 0x00007f20dc485cb1 in PreprocessJob::sourceNeeded (this=0x5f2f7c0, _fileName=..., type=rpp::Preprocessor::IncludeGlobal, sourceLine=3, skipCurrentPath=false) at /home/adamw/code/public/kdevelop/languages/cpp/preprocessjob.cpp:579
#107 0x00007f20dc220b51 in rpp::pp::handle_include (this=0x7f20c5834810, skip_current_path=false, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:213
#108 0x00007f20dc220215 in rpp::pp::handle_directive (this=0x7f20c5834810, directive=723977, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:131
#109 0x00007f20dc220e29 in rpp::pp::operator() (this=0x7f20c5834810, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:266
#110 0x00007f20dc21fd83 in rpp::pp::processFileInternal (this=0x7f20c5834810, fileName=..., fileContents=..., result=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:98
#111 0x00007f20dc21fc40 in rpp::pp::processFile (this=0x7f20c5834810, fileName=..., data=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:85
#112 0x00007f20dc4835dd in PreprocessJob::run (this=0x5f2f7c0) at /home/adamw/code/public/kdevelop/languages/cpp/preprocessjob.cpp:245
#113 0x00007f2105e4905b in ThreadWeaver::JobRunHelper::runTheJob (this=0x7f20c5835d80, th=0x59d3180, job=0x5f2f7c0) at ../../../threadweaver/Weaver/Job.cpp:106
#114 0x00007f2105e491cc in ThreadWeaver::Job::execute (this=0x5f2f7c0, th=0x59d3180) at ../../../threadweaver/Weaver/Job.cpp:135
#115 0x00007f2105e4a1d3 in ThreadWeaver::JobCollectionJobRunner::execute (this=0x5849220, t=0x59d3180) at ../../../threadweaver/Weaver/JobCollection.cpp:82
#116 0x00007f2105e4881f in ThreadWeaver::ThreadRunHelper::run (this=0x7f20c5835e20, parent=0x1bead50, th=0x59d3180) at ../../../threadweaver/Weaver/Thread.cpp:95
#117 0x00007f2105e488db in ThreadWeaver::Thread::run (this=0x59d3180) at ../../../threadweaver/Weaver/Thread.cpp:142
#118 0x00007f210e6c0fcb in QThreadPrivate::start (arg=0x59d3180) at thread/qthread_unix.cpp:298
#119 0x00007f210c70fe9a in start_thread (arg=0x7f20c5836700) at pthread_create.c:308
#120 0x00007f210d3ac4bd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#121 0x0000000000000000 in ?? ()

Thread 2 (Thread 0x7f20c5035700 (LWP 3770)):
#0  0x00007f210d37803d in nanosleep () at ../sysdeps/unix/syscall-template.S:82
#1  0x00007f210d3a5f74 in usleep (useconds=<optimized out>) at ../sysdeps/unix/sysv/linux/usleep.c:33
#2  0x00007f210a99b748 in KDevelop::DUChainLock::lockForWrite (this=0x2ad5118, timeout=0) at /home/adamw/code/public/kdevplatform/language/duchain/duchainlock.cpp:201
#3  0x00007f210a99ba78 in KDevelop::DUChainWriteLocker::lock (this=0x7f20c501cc40) at /home/adamw/code/public/kdevplatform/language/duchain/duchainlock.cpp:299
#4  0x00007f210a99b9ef in KDevelop::DUChainWriteLocker::DUChainWriteLocker (this=0x7f20c501cc40, duChainLock=0x2ad5118, timeout=0) at /home/adamw/code/public/kdevplatform/language/duchain/duchainlock.cpp:284
#5  0x00007f20dc479e92 in CPPInternalParseJob::run (this=0x7f2075968940) at /home/adamw/code/public/kdevelop/languages/cpp/cppparsejob.cpp:607
#6  0x00007f20dc476f7c in CPPParseJob::parseForeground (this=0x7f20751a9af0) at /home/adamw/code/public/kdevelop/languages/cpp/cppparsejob.cpp:177
#7  0x00007f20dc485cb1 in PreprocessJob::sourceNeeded (this=0x7f2075968990, _fileName=..., type=rpp::Preprocessor::IncludeGlobal, sourceLine=16, skipCurrentPath=false) at /home/adamw/code/public/kdevelop/languages/cpp/preprocessjob.cpp:579
#8  0x00007f20dc220b51 in rpp::pp::handle_include (this=0x7f20c501e190, skip_current_path=false, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:213
#9  0x00007f20dc220215 in rpp::pp::handle_directive (this=0x7f20c501e190, directive=723977, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:131
#10 0x00007f20dc220e29 in rpp::pp::operator() (this=0x7f20c501e190, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:266
#11 0x00007f20dc21fd83 in rpp::pp::processFileInternal (this=0x7f20c501e190, fileName=..., fileContents=..., result=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:98
#12 0x00007f20dc21fc40 in rpp::pp::processFile (this=0x7f20c501e190, fileName=..., data=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:85
#13 0x00007f20dc4835dd in PreprocessJob::run (this=0x7f2075968990) at /home/adamw/code/public/kdevelop/languages/cpp/preprocessjob.cpp:245
#14 0x00007f20dc476f5b in CPPParseJob::parseForeground (this=0x7f2075968af0) at /home/adamw/code/public/kdevelop/languages/cpp/cppparsejob.cpp:176
#15 0x00007f20dc485cb1 in PreprocessJob::sourceNeeded (this=0x7f20759a5d60, _fileName=..., type=rpp::Preprocessor::IncludeGlobal, sourceLine=18, skipCurrentPath=false) at /home/adamw/code/public/kdevelop/languages/cpp/preprocessjob.cpp:579
#16 0x00007f20dc220b51 in rpp::pp::handle_include (this=0x7f20c50203d0, skip_current_path=false, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:213
#17 0x00007f20dc220215 in rpp::pp::handle_directive (this=0x7f20c50203d0, directive=723977, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:131
#18 0x00007f20dc220e29 in rpp::pp::operator() (this=0x7f20c50203d0, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:266
#19 0x00007f20dc21fd83 in rpp::pp::processFileInternal (this=0x7f20c50203d0, fileName=..., fileContents=..., result=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:98
#20 0x00007f20dc21fc40 in rpp::pp::processFile (this=0x7f20c50203d0, fileName=..., data=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:85
#21 0x00007f20dc4835dd in PreprocessJob::run (this=0x7f20759a5d60) at /home/adamw/code/public/kdevelop/languages/cpp/preprocessjob.cpp:245
#22 0x00007f20dc476f5b in CPPParseJob::parseForeground (this=0x7f20759a7170) at /home/adamw/code/public/kdevelop/languages/cpp/cppparsejob.cpp:176
#23 0x00007f20dc485cb1 in PreprocessJob::sourceNeeded (this=0x7f20759a8330, _fileName=..., type=rpp::Preprocessor::IncludeGlobal, sourceLine=17, skipCurrentPath=false) at /home/adamw/code/public/kdevelop/languages/cpp/preprocessjob.cpp:579
#24 0x00007f20dc220b51 in rpp::pp::handle_include (this=0x7f20c5022610, skip_current_path=false, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:213
#25 0x00007f20dc220215 in rpp::pp::handle_directive (this=0x7f20c5022610, directive=723977, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:131
#26 0x00007f20dc220e29 in rpp::pp::operator() (this=0x7f20c5022610, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:266
#27 0x00007f20dc21fd83 in rpp::pp::processFileInternal (this=0x7f20c5022610, fileName=..., fileContents=..., result=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:98
#28 0x00007f20dc21fc40 in rpp::pp::processFile (this=0x7f20c5022610, fileName=..., data=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:85
#29 0x00007f20dc4835dd in PreprocessJob::run (this=0x7f20759a8330) at /home/adamw/code/public/kdevelop/languages/cpp/preprocessjob.cpp:245
#30 0x00007f20dc476f5b in CPPParseJob::parseForeground (this=0x7f20759671e0) at /home/adamw/code/public/kdevelop/languages/cpp/cppparsejob.cpp:176
#31 0x00007f20dc485cb1 in PreprocessJob::sourceNeeded (this=0x7f20759a0870, _fileName=..., type=rpp::Preprocessor::IncludeGlobal, sourceLine=18, skipCurrentPath=false) at /home/adamw/code/public/kdevelop/languages/cpp/preprocessjob.cpp:579
#32 0x00007f20dc220b51 in rpp::pp::handle_include (this=0x7f20c5024850, skip_current_path=false, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:213
#33 0x00007f20dc220215 in rpp::pp::handle_directive (this=0x7f20c5024850, directive=723977, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:131
#34 0x00007f20dc220e29 in rpp::pp::operator() (this=0x7f20c5024850, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:266
#35 0x00007f20dc21fd83 in rpp::pp::processFileInternal (this=0x7f20c5024850, fileName=..., fileContents=..., result=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:98
#36 0x00007f20dc21fc40 in rpp::pp::processFile (this=0x7f20c5024850, fileName=..., data=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:85
#37 0x00007f20dc4835dd in PreprocessJob::run (this=0x7f20759a0870) at /home/adamw/code/public/kdevelop/languages/cpp/preprocessjob.cpp:245
#38 0x00007f20dc476f5b in CPPParseJob::parseForeground (this=0x7f20759b7640) at /home/adamw/code/public/kdevelop/languages/cpp/cppparsejob.cpp:176
#39 0x00007f20dc485cb1 in PreprocessJob::sourceNeeded (this=0x7f20759759a0, _fileName=..., type=rpp::Preprocessor::IncludeGlobal, sourceLine=18, skipCurrentPath=false) at /home/adamw/code/public/kdevelop/languages/cpp/preprocessjob.cpp:579
#40 0x00007f20dc220b51 in rpp::pp::handle_include (this=0x7f20c5026a90, skip_current_path=false, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:213
#41 0x00007f20dc220215 in rpp::pp::handle_directive (this=0x7f20c5026a90, directive=723977, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:131
#42 0x00007f20dc220e29 in rpp::pp::operator() (this=0x7f20c5026a90, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:266
#43 0x00007f20dc21fd83 in rpp::pp::processFileInternal (this=0x7f20c5026a90, fileName=..., fileContents=..., result=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:98
#44 0x00007f20dc21fc40 in rpp::pp::processFile (this=0x7f20c5026a90, fileName=..., data=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:85
#45 0x00007f20dc4835dd in PreprocessJob::run (this=0x7f20759759a0) at /home/adamw/code/public/kdevelop/languages/cpp/preprocessjob.cpp:245
#46 0x00007f20dc476f5b in CPPParseJob::parseForeground (this=0x7f2075975a00) at /home/adamw/code/public/kdevelop/languages/cpp/cppparsejob.cpp:176
#47 0x00007f20dc485cb1 in PreprocessJob::sourceNeeded (this=0x7f2075a74dc0, _fileName=..., type=rpp::Preprocessor::IncludeGlobal, sourceLine=27, skipCurrentPath=false) at /home/adamw/code/public/kdevelop/languages/cpp/preprocessjob.cpp:579
#48 0x00007f20dc220b51 in rpp::pp::handle_include (this=0x7f20c5028cd0, skip_current_path=false, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:213
#49 0x00007f20dc220215 in rpp::pp::handle_directive (this=0x7f20c5028cd0, directive=723977, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:131
#50 0x00007f20dc220e29 in rpp::pp::operator() (this=0x7f20c5028cd0, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:266
#51 0x00007f20dc21fd83 in rpp::pp::processFileInternal (this=0x7f20c5028cd0, fileName=..., fileContents=..., result=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:98
#52 0x00007f20dc21fc40 in rpp::pp::processFile (this=0x7f20c5028cd0, fileName=..., data=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:85
#53 0x00007f20dc4835dd in PreprocessJob::run (this=0x7f2075a74dc0) at /home/adamw/code/public/kdevelop/languages/cpp/preprocessjob.cpp:245
#54 0x00007f20dc476f5b in CPPParseJob::parseForeground (this=0x7f20759eee10) at /home/adamw/code/public/kdevelop/languages/cpp/cppparsejob.cpp:176
#55 0x00007f20dc485cb1 in PreprocessJob::sourceNeeded (this=0x7f2075ab1870, _fileName=..., type=rpp::Preprocessor::IncludeGlobal, sourceLine=15, skipCurrentPath=false) at /home/adamw/code/public/kdevelop/languages/cpp/preprocessjob.cpp:579
#56 0x00007f20dc220b51 in rpp::pp::handle_include (this=0x7f20c502af10, skip_current_path=false, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:213
#57 0x00007f20dc220215 in rpp::pp::handle_directive (this=0x7f20c502af10, directive=723977, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:131
#58 0x00007f20dc220e29 in rpp::pp::operator() (this=0x7f20c502af10, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:266
#59 0x00007f20dc21fd83 in rpp::pp::processFileInternal (this=0x7f20c502af10, fileName=..., fileContents=..., result=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:98
#60 0x00007f20dc21fc40 in rpp::pp::processFile (this=0x7f20c502af10, fileName=..., data=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:85
#61 0x00007f20dc4835dd in PreprocessJob::run (this=0x7f2075ab1870) at /home/adamw/code/public/kdevelop/languages/cpp/preprocessjob.cpp:245
#62 0x00007f20dc476f5b in CPPParseJob::parseForeground (this=0x7f2075904450) at /home/adamw/code/public/kdevelop/languages/cpp/cppparsejob.cpp:176
#63 0x00007f20dc485cb1 in PreprocessJob::sourceNeeded (this=0x7f20756f5670, _fileName=..., type=rpp::Preprocessor::IncludeGlobal, sourceLine=44, skipCurrentPath=false) at /home/adamw/code/public/kdevelop/languages/cpp/preprocessjob.cpp:579
#64 0x00007f20dc220b51 in rpp::pp::handle_include (this=0x7f20c502d150, skip_current_path=false, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:213
#65 0x00007f20dc220215 in rpp::pp::handle_directive (this=0x7f20c502d150, directive=723977, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:131
#66 0x00007f20dc220e29 in rpp::pp::operator() (this=0x7f20c502d150, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:266
#67 0x00007f20dc21fd83 in rpp::pp::processFileInternal (this=0x7f20c502d150, fileName=..., fileContents=..., result=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:98
#68 0x00007f20dc21fc40 in rpp::pp::processFile (this=0x7f20c502d150, fileName=..., data=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:85
#69 0x00007f20dc4835dd in PreprocessJob::run (this=0x7f20756f5670) at /home/adamw/code/public/kdevelop/languages/cpp/preprocessjob.cpp:245
#70 0x00007f20dc476f5b in CPPParseJob::parseForeground (this=0x7f20755914a0) at /home/adamw/code/public/kdevelop/languages/cpp/cppparsejob.cpp:176
#71 0x00007f20dc485cb1 in PreprocessJob::sourceNeeded (this=0x7f207458c220, _fileName=..., type=rpp::Preprocessor::IncludeGlobal, sourceLine=9, skipCurrentPath=false) at /home/adamw/code/public/kdevelop/languages/cpp/preprocessjob.cpp:579
#72 0x00007f20dc220b51 in rpp::pp::handle_include (this=0x7f20c502f390, skip_current_path=false, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:213
#73 0x00007f20dc220215 in rpp::pp::handle_directive (this=0x7f20c502f390, directive=723977, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:131
#74 0x00007f20dc220e29 in rpp::pp::operator() (this=0x7f20c502f390, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:266
#75 0x00007f20dc21fd83 in rpp::pp::processFileInternal (this=0x7f20c502f390, fileName=..., fileContents=..., result=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:98
#76 0x00007f20dc21fc40 in rpp::pp::processFile (this=0x7f20c502f390, fileName=..., data=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:85
#77 0x00007f20dc4835dd in PreprocessJob::run (this=0x7f207458c220) at /home/adamw/code/public/kdevelop/languages/cpp/preprocessjob.cpp:245
#78 0x00007f20dc476f5b in CPPParseJob::parseForeground (this=0x7f20741dd760) at /home/adamw/code/public/kdevelop/languages/cpp/cppparsejob.cpp:176
#79 0x00007f20dc485cb1 in PreprocessJob::sourceNeeded (this=0x7f2074017e90, _fileName=..., type=rpp::Preprocessor::IncludeGlobal, sourceLine=13, skipCurrentPath=false) at /home/adamw/code/public/kdevelop/languages/cpp/preprocessjob.cpp:579
#80 0x00007f20dc220b51 in rpp::pp::handle_include (this=0x7f20c50315d0, skip_current_path=false, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:213
#81 0x00007f20dc220215 in rpp::pp::handle_directive (this=0x7f20c50315d0, directive=723977, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:131
#82 0x00007f20dc220e29 in rpp::pp::operator() (this=0x7f20c50315d0, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:266
#83 0x00007f20dc21fd83 in rpp::pp::processFileInternal (this=0x7f20c50315d0, fileName=..., fileContents=..., result=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:98
#84 0x00007f20dc21fc40 in rpp::pp::processFile (this=0x7f20c50315d0, fileName=..., data=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:85
#85 0x00007f20dc4835dd in PreprocessJob::run (this=0x7f2074017e90) at /home/adamw/code/public/kdevelop/languages/cpp/preprocessjob.cpp:245
#86 0x00007f20dc476f5b in CPPParseJob::parseForeground (this=0x7f2074017a40) at /home/adamw/code/public/kdevelop/languages/cpp/cppparsejob.cpp:176
#87 0x00007f20dc485cb1 in PreprocessJob::sourceNeeded (this=0x57d7410, _fileName=..., type=rpp::Preprocessor::IncludeLocal, sourceLine=9, skipCurrentPath=false) at /home/adamw/code/public/kdevelop/languages/cpp/preprocessjob.cpp:579
#88 0x00007f20dc220b51 in rpp::pp::handle_include (this=0x7f20c5033810, skip_current_path=false, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:213
#89 0x00007f20dc220215 in rpp::pp::handle_directive (this=0x7f20c5033810, directive=723977, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:131
#90 0x00007f20dc220e29 in rpp::pp::operator() (this=0x7f20c5033810, input=..., output=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:266
#91 0x00007f20dc21fd83 in rpp::pp::processFileInternal (this=0x7f20c5033810, fileName=..., fileContents=..., result=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:98
#92 0x00007f20dc21fc40 in rpp::pp::processFile (this=0x7f20c5033810, fileName=..., data=...) at /home/adamw/code/public/kdevelop/languages/cpp/parser/rpp/pp-engine.cpp:85
#93 0x00007f20dc4835dd in PreprocessJob::run (this=0x57d7410) at /home/adamw/code/public/kdevelop/languages/cpp/preprocessjob.cpp:245
#94 0x00007f2105e4905b in ThreadWeaver::JobRunHelper::runTheJob (this=0x7f20c5034d80, th=0x7f20c0003dd0, job=0x57d7410) at ../../../threadweaver/Weaver/Job.cpp:106
#95 0x00007f2105e491cc in ThreadWeaver::Job::execute (this=0x57d7410, th=0x7f20c0003dd0) at ../../../threadweaver/Weaver/Job.cpp:135
#96 0x00007f2105e4a1d3 in ThreadWeaver::JobCollectionJobRunner::execute (this=0x5cb3540, t=0x7f20c0003dd0) at ../../../threadweaver/Weaver/JobCollection.cpp:82
#97 0x00007f2105e4881f in ThreadWeaver::ThreadRunHelper::run (this=0x7f20c5034e20, parent=0x1bead50, th=0x7f20c0003dd0) at ../../../threadweaver/Weaver/Thread.cpp:95
#98 0x00007f2105e488db in ThreadWeaver::Thread::run (this=0x7f20c0003dd0) at ../../../threadweaver/Weaver/Thread.cpp:142
#99 0x00007f210e6c0fcb in QThreadPrivate::start (arg=0x7f20c0003dd0) at thread/qthread_unix.cpp:298
#100 0x00007f210c70fe9a in start_thread (arg=0x7f20c5035700) at pthread_create.c:308
#101 0x00007f210d3ac4bd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#102 0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7f2110275780 (LWP 3107)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007f210e6c14db in wait (time=18446744073709551615, this=0x2add4f0) at thread/qwaitcondition_unix.cpp:86
#2  QWaitCondition::wait (this=<optimized out>, mutex=0x2aff478, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:158
#3  0x00007f210e6c0be8 in QThread::wait (this=<optimized out>, time=18446744073709551615) at thread/qthread_unix.cpp:651
#4  0x00007f210a92f20d in KDevelop::DUChainPrivate::CleanupThread::stopThread (this=0x2ad2530) at /home/adamw/code/public/kdevplatform/language/duchain/duchain.cpp:272
#5  0x00007f210a92fbe7 in KDevelop::DUChainPrivate::~DUChainPrivate (this=0x2ad5100, __in_chrg=<optimized out>) at /home/adamw/code/public/kdevplatform/language/duchain/duchain.cpp:357
#6  0x00007f210a929ca7 in destroy () at /home/adamw/code/public/kdevplatform/language/duchain/duchain.cpp:1101
#7  0x00007f210a91dc95 in KCleanUpGlobalStatic::~KCleanUpGlobalStatic (this=0x7f210ad40c30, __in_chrg=<optimized out>) at /usr/include/kglobal.h:62
#8  0x00007f210d2f5921 in __run_exit_handlers (status=1, listp=0x7f210d670688, run_list_atexit=true) at exit.c:78
#9  0x00007f210d2f59a5 in __GI_exit (status=<optimized out>) at exit.c:100
#10 0x00007f210dbae5e8 in qt_xio_errhandler () at kernel/qapplication_x11.cpp:780
#11 0x00007f210efc8e08 in KApplication::xioErrhandler (this=0x7fff181aa240, dpy=0x1726bb0) at ../../kdeui/kernel/kapplication.cpp:419
#12 0x00007f21095fa41e in _XIOError () from /usr/lib/x86_64-linux-gnu/libX11.so.6
#13 0x00007f21095f7e1d in _XEventsQueued () from /usr/lib/x86_64-linux-gnu/libX11.so.6
#14 0x00007f21095e942f in XEventsQueued () from /usr/lib/x86_64-linux-gnu/libX11.so.6
#15 0x00007f210dbeab9c in x11EventSourceCheck (s=0x1702200) at kernel/qguieventdispatcher_glib.cpp:85
#16 0x00007f210832aa33 in g_main_context_check () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#17 0x00007f210832af96 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#18 0x00007f210832b124 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#19 0x00007f210e7ef3bf in QEventDispatcherGlib::processEvents (this=0x16ccb30, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#20 0x00007f210dbead5e in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#21 0x00007f210e7bec82 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#22 0x00007f210e7beed7 in QEventLoop::exec (this=0x7fff181aa000, flags=...) at kernel/qeventloop.cpp:204
#23 0x00007f210e7c3f67 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1148
#24 0x000000000040c09c in main (argc=1, argv=0x7fff181ac1d8) at /home/adamw/code/public/kdevelop/app/main.cpp:518

Reported using DrKonqi
Comment 1 Adam Wood 2012-06-09 15:04:46 UTC
After some more investigation I am certain this bug is a duplicate of 297133.

*** This bug has been marked as a duplicate of bug 297133 ***