Bug 275730

Summary: Kdevelop crashes during parsing [KDevelop::DUContext::type, KDevelop::CodeHighlightingInstance::typeForDeclaration]
Product: [Developer tools] kdevplatform Reporter: claas.koehler
Component: languageAssignee: kdevelop-bugs-null
Status: RESOLVED FIXED    
Severity: crash CC: 4ernov, david.nolden.kde, giorgos.tsiapaliokas, hippiehunterenator, matze_borag
Priority: VHI    
Version: 1.2.0   
Target Milestone: 1.2.0   
Platform: openSUSE   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: related valgrind output
New crash information added by DrKonqi

Description claas.koehler 2011-06-15 16:13:26 UTC
Application: kdevelop (4.2.2)
KDE Platform Version: 4.6.4 (4.6.4) "release 8"
Qt Version: 4.7.3
Operating System: Linux 2.6.37.6-0.5-desktop x86_64
Distribution: "openSUSE 11.4 (x86_64)"

-- Information about the crash:
After launchin Kdevelop (with prviously opened project) the program crashes during parsing without any further user interaction

The crash can be reproduced every time.

-- Backtrace:
Application: KDevelop (kdevelop), signal: Segmentation fault
[Current thread is 1 (Thread 0x7fb1e7f23760 (LWP 13077))]

Thread 11 (Thread 0x7fb1d0390700 (LWP 13080)):
#0  0x00007fb1e4ec26f9 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007fb1e64646e2 in wait (time=1000, this=0x1954df0) at thread/qwaitcondition_unix.cpp:86
#2  QWaitCondition::wait (this=<optimized out>, mutex=0x1954ba0, time=1000) at thread/qwaitcondition_unix.cpp:160
#3  0x00007fb1e28f69bb in KDevelop::DUChainPrivate::CleanupThread::run (this=0x1954b80) at /usr/src/debug/kdevplatform-1.2.0/language/duchain/duchain.cpp:286
#4  0x00007fb1e6464095 in QThreadPrivate::start (arg=0x1954b80) at thread/qthread_unix.cpp:320
#5  0x00007fb1e4ebda3f in start_thread () from /lib64/libpthread.so.0
#6  0x00007fb1e51a767d in clone () from /lib64/libc.so.6
#7  0x0000000000000000 in ?? ()

Thread 10 (Thread 0x7fb1c001d700 (LWP 13132)):
#0  0x00007fb1e519e503 in poll () from /lib64/libc.so.6
#1  0x00007fb1dfb86114 in ?? () from /lib64/libglib-2.0.so.0
#2  0x00007fb1dfb86650 in g_main_context_iteration () from /lib64/libglib-2.0.so.0
#3  0x00007fb1e6578286 in QEventDispatcherGlib::processEvents (this=0x24b3a30, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:424
#4  0x00007fb1e654c8d2 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#5  0x00007fb1e654cae5 in QEventLoop::exec (this=0x7fb1c001ce20, flags=...) at kernel/qeventloop.cpp:201
#6  0x00007fb1e64617a4 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:492
#7  0x00007fb1e6464095 in QThreadPrivate::start (arg=0x24cd760) at thread/qthread_unix.cpp:320
#8  0x00007fb1e4ebda3f in start_thread () from /lib64/libpthread.so.0
#9  0x00007fb1e51a767d in clone () from /lib64/libc.so.6
#10 0x0000000000000000 in ?? ()

Thread 9 (Thread 0x7fb1bcfbc700 (LWP 13133)):
#0  0x00007fb1e519e503 in poll () from /lib64/libc.so.6
#1  0x00007fb1dfb86114 in ?? () from /lib64/libglib-2.0.so.0
#2  0x00007fb1dfb86650 in g_main_context_iteration () from /lib64/libglib-2.0.so.0
#3  0x00007fb1e6578286 in QEventDispatcherGlib::processEvents (this=0x249b4e0, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:424
#4  0x00007fb1e654c8d2 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#5  0x00007fb1e654cae5 in QEventLoop::exec (this=0x7fb1bcfbbe20, flags=...) at kernel/qeventloop.cpp:201
#6  0x00007fb1e64617a4 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:492
#7  0x00007fb1e6464095 in QThreadPrivate::start (arg=0x24bfaa0) at thread/qthread_unix.cpp:320
#8  0x00007fb1e4ebda3f in start_thread () from /lib64/libpthread.so.0
#9  0x00007fb1e51a767d in clone () from /lib64/libc.so.6
#10 0x0000000000000000 in ?? ()

Thread 8 (Thread 0x7fb1bc76c700 (LWP 13171)):
#0  0x00007fb1e4ec238c in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007fb1d0931004 in ?? () from /usr/lib64/libQtScript.so.4
#2  0x00007fb1d0931039 in ?? () from /usr/lib64/libQtScript.so.4
#3  0x00007fb1e4ebda3f in start_thread () from /lib64/libpthread.so.0
#4  0x00007fb1e51a767d in clone () from /lib64/libc.so.6
#5  0x0000000000000000 in ?? ()

Thread 7 (Thread 0x7fb1bb9c6700 (LWP 13207)):
#0  0x00007fb1e519e503 in poll () from /lib64/libc.so.6
#1  0x00007fb1dfb86114 in ?? () from /lib64/libglib-2.0.so.0
#2  0x00007fb1dfb86650 in g_main_context_iteration () from /lib64/libglib-2.0.so.0
#3  0x00007fb1e6578286 in QEventDispatcherGlib::processEvents (this=0x308f1b0, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:424
#4  0x00007fb1e654c8d2 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#5  0x00007fb1e654cae5 in QEventLoop::exec (this=0x7fb1bb9c5de0, flags=...) at kernel/qeventloop.cpp:201
#6  0x00007fb1e64617a4 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:492
#7  0x00007fb1e652e008 in QInotifyFileSystemWatcherEngine::run (this=0x330f2b0) at io/qfilesystemwatcher_inotify.cpp:248
#8  0x00007fb1e6464095 in QThreadPrivate::start (arg=0x330f2b0) at thread/qthread_unix.cpp:320
#9  0x00007fb1e4ebda3f in start_thread () from /lib64/libpthread.so.0
#10 0x00007fb1e51a767d in clone () from /lib64/libc.so.6
#11 0x0000000000000000 in ?? ()

Thread 6 (Thread 0x7fb1bb158700 (LWP 13236)):
[KCrash Handler]
#6  KDevelop::DUContext::type (this=0x7fb1ac74d1d0) at /usr/src/debug/kdevplatform-1.2.0/language/duchain/ducontext.cpp:1171
#7  0x00007fb1e2a1e327 in KDevelop::CodeHighlightingInstance::typeForDeclaration (this=0x7360d80, dec=0x7fb1b6c86f60, context=0x7fb1c58cc670) at /usr/src/debug/kdevplatform-1.2.0/language/highlighting/codehighlighting.cpp:371
#8  0x00007fb1e2a1dd25 in KDevelop::CodeHighlightingInstance::highlightUse (this=0x7360d80, context=0x7fb1c58cc670, index=<optimized out>, color=...) at /usr/src/debug/kdevplatform-1.2.0/language/highlighting/codehighlighting.cpp:438
#9  0x00007fb1e2a2025d in KDevelop::CodeHighlightingInstance::highlightDUChain (this=0x7360d80, context=<optimized out>, colorsForDeclarations=..., declarationsForColors=...) at /usr/src/debug/kdevplatform-1.2.0/language/highlighting/codehighlighting.cpp:277
#10 0x00007fb1e2a20495 in KDevelop::CodeHighlightingInstance::highlightDUChain (this=0x7360d80, context=<optimized out>, colorsForDeclarations=..., declarationsForColors=...) at /usr/src/debug/kdevplatform-1.2.0/language/highlighting/codehighlighting.cpp:290
#11 0x00007fb1e2a20495 in KDevelop::CodeHighlightingInstance::highlightDUChain (this=0x7360d80, context=<optimized out>, colorsForDeclarations=..., declarationsForColors=...) at /usr/src/debug/kdevplatform-1.2.0/language/highlighting/codehighlighting.cpp:290
#12 0x00007fb1e2a21132 in KDevelop::CodeHighlightingInstance::highlightDUChain (this=0x7360d80, context=0x7fb1c54d9240) at /usr/src/debug/kdevplatform-1.2.0/language/highlighting/codehighlighting.cpp:205
#13 0x00007fb1e2a2145b in KDevelop::CodeHighlighting::highlightDUChain (this=0x2493bd0, context=...) at /usr/src/debug/kdevplatform-1.2.0/language/highlighting/codehighlighting.cpp:186
#14 0x00007fb1bd796802 in CPPInternalParseJob::run (this=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/cppparsejob.cpp:730
#15 0x00007fb1bd79bee7 in PreprocessJob::sourceNeeded (this=0x5cf7640, _fileName=<optimized out>, type=<optimized out>, sourceLine=31, skipCurrentPath=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:593
#16 0x00007fb1bd5504e0 in rpp::pp::handle_include (this=0x7fb1bb149920, skip_current_path=false, input=..., output=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:213
#17 0x00007fb1bd5530eb in rpp::pp::handle_directive (this=0x7fb1bb149920, directive=132043, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:131
#18 0x00007fb1bd55387f in rpp::pp::operator() (this=0x7fb1bb149920, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:266
#19 0x00007fb1bd553ab1 in rpp::pp::processFileInternal (this=0x7fb1bb149920, fileName=<optimized out>, fileContents=<optimized out>, result=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:98
#20 0x00007fb1bd553b55 in rpp::pp::processFile (this=<optimized out>, fileName=<optimized out>, data=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:85
#21 0x00007fb1bd79e6f9 in PreprocessJob::run (this=0x5cf7640) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:268
#22 0x00007fb1bd7933ae in CPPParseJob::parseForeground (this=0x5458b50) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/cppparsejob.cpp:173
#23 0x00007fb1bd79bee7 in PreprocessJob::sourceNeeded (this=0x709cfe0, _fileName=<optimized out>, type=<optimized out>, sourceLine=13, skipCurrentPath=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:593
#24 0x00007fb1bd5504e0 in rpp::pp::handle_include (this=0x7fb1bb14bbc0, skip_current_path=false, input=..., output=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:213
#25 0x00007fb1bd5530eb in rpp::pp::handle_directive (this=0x7fb1bb14bbc0, directive=132043, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:131
#26 0x00007fb1bd55387f in rpp::pp::operator() (this=0x7fb1bb14bbc0, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:266
#27 0x00007fb1bd553ab1 in rpp::pp::processFileInternal (this=0x7fb1bb14bbc0, fileName=<optimized out>, fileContents=<optimized out>, result=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:98
#28 0x00007fb1bd553b55 in rpp::pp::processFile (this=<optimized out>, fileName=<optimized out>, data=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:85
#29 0x00007fb1bd79e6f9 in PreprocessJob::run (this=0x709cfe0) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:268
#30 0x00007fb1bd7933ae in CPPParseJob::parseForeground (this=0x6b86420) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/cppparsejob.cpp:173
#31 0x00007fb1bd79bee7 in PreprocessJob::sourceNeeded (this=0x510a330, _fileName=<optimized out>, type=<optimized out>, sourceLine=16, skipCurrentPath=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:593
#32 0x00007fb1bd5504e0 in rpp::pp::handle_include (this=0x7fb1bb14de60, skip_current_path=false, input=..., output=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:213
#33 0x00007fb1bd5530eb in rpp::pp::handle_directive (this=0x7fb1bb14de60, directive=132043, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:131
#34 0x00007fb1bd55387f in rpp::pp::operator() (this=0x7fb1bb14de60, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:266
#35 0x00007fb1bd553ab1 in rpp::pp::processFileInternal (this=0x7fb1bb14de60, fileName=<optimized out>, fileContents=<optimized out>, result=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:98
#36 0x00007fb1bd553b55 in rpp::pp::processFile (this=<optimized out>, fileName=<optimized out>, data=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:85
#37 0x00007fb1bd79e6f9 in PreprocessJob::run (this=0x510a330) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:268
#38 0x00007fb1bd7933ae in CPPParseJob::parseForeground (this=0x72b74d0) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/cppparsejob.cpp:173
#39 0x00007fb1bd79bee7 in PreprocessJob::sourceNeeded (this=0x5d010a0, _fileName=<optimized out>, type=<optimized out>, sourceLine=19, skipCurrentPath=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:593
#40 0x00007fb1bd5504e0 in rpp::pp::handle_include (this=0x7fb1bb150100, skip_current_path=false, input=..., output=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:213
#41 0x00007fb1bd5530eb in rpp::pp::handle_directive (this=0x7fb1bb150100, directive=132043, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:131
#42 0x00007fb1bd55387f in rpp::pp::operator() (this=0x7fb1bb150100, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:266
#43 0x00007fb1bd553ab1 in rpp::pp::processFileInternal (this=0x7fb1bb150100, fileName=<optimized out>, fileContents=<optimized out>, result=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:98
#44 0x00007fb1bd553b55 in rpp::pp::processFile (this=<optimized out>, fileName=<optimized out>, data=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:85
#45 0x00007fb1bd79e017 in PreprocessJob::run (this=0x5d010a0) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:259
#46 0x00007fb1bd7933ae in CPPParseJob::parseForeground (this=0x6828d20) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/cppparsejob.cpp:173
#47 0x00007fb1bd79bee7 in PreprocessJob::sourceNeeded (this=0x6c9c8b0, _fileName=<optimized out>, type=<optimized out>, sourceLine=36, skipCurrentPath=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:593
#48 0x00007fb1bd5504e0 in rpp::pp::handle_include (this=0x7fb1bb1523a0, skip_current_path=false, input=..., output=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:213
#49 0x00007fb1bd5530eb in rpp::pp::handle_directive (this=0x7fb1bb1523a0, directive=132043, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:131
#50 0x00007fb1bd55387f in rpp::pp::operator() (this=0x7fb1bb1523a0, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:266
#51 0x00007fb1bd553ab1 in rpp::pp::processFileInternal (this=0x7fb1bb1523a0, fileName=<optimized out>, fileContents=<optimized out>, result=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:98
#52 0x00007fb1bd553b55 in rpp::pp::processFile (this=<optimized out>, fileName=<optimized out>, data=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:85
#53 0x00007fb1bd79e017 in PreprocessJob::run (this=0x6c9c8b0) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:259
#54 0x00007fb1bd7933ae in CPPParseJob::parseForeground (this=0x673f8c0) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/cppparsejob.cpp:173
#55 0x00007fb1bd79bee7 in PreprocessJob::sourceNeeded (this=0x3af5390, _fileName=<optimized out>, type=<optimized out>, sourceLine=26, skipCurrentPath=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:593
#56 0x00007fb1bd5504e0 in rpp::pp::handle_include (this=0x7fb1bb154640, skip_current_path=false, input=..., output=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:213
#57 0x00007fb1bd5530eb in rpp::pp::handle_directive (this=0x7fb1bb154640, directive=132043, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:131
#58 0x00007fb1bd55387f in rpp::pp::operator() (this=0x7fb1bb154640, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:266
#59 0x00007fb1bd553ab1 in rpp::pp::processFileInternal (this=0x7fb1bb154640, fileName=<optimized out>, fileContents=<optimized out>, result=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:98
#60 0x00007fb1bd553b55 in rpp::pp::processFile (this=<optimized out>, fileName=<optimized out>, data=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:85
#61 0x00007fb1bd79e017 in PreprocessJob::run (this=0x3af5390) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:259
#62 0x00007fb1bd7933ae in CPPParseJob::parseForeground (this=0x6d534f0) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/cppparsejob.cpp:173
#63 0x00007fb1bd79bee7 in PreprocessJob::sourceNeeded (this=0x6dca060, _fileName=<optimized out>, type=<optimized out>, sourceLine=0, skipCurrentPath=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:593
#64 0x00007fb1bd5504e0 in rpp::pp::handle_include (this=0x7fb1bb1568e0, skip_current_path=false, input=..., output=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:213
#65 0x00007fb1bd5530eb in rpp::pp::handle_directive (this=0x7fb1bb1568e0, directive=132043, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:131
#66 0x00007fb1bd55387f in rpp::pp::operator() (this=0x7fb1bb1568e0, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:266
#67 0x00007fb1bd553ab1 in rpp::pp::processFileInternal (this=0x7fb1bb1568e0, fileName=<optimized out>, fileContents=<optimized out>, result=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:98
#68 0x00007fb1bd553b55 in rpp::pp::processFile (this=<optimized out>, fileName=<optimized out>, data=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:85
#69 0x00007fb1bd79e017 in PreprocessJob::run (this=0x6dca060) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:259
#70 0x00007fb1dd2c6bd1 in ThreadWeaver::JobRunHelper::runTheJob (this=0x7fb1bb157d80, th=0x337ed20, job=0x6dca060) at /usr/src/debug/kdelibs-4.6.4/threadweaver/Weaver/Job.cpp:106
#71 0x00007fb1dd2c6d0e in ThreadWeaver::Job::execute (this=0x6dca060, th=0x337ed20) at /usr/src/debug/kdelibs-4.6.4/threadweaver/Weaver/Job.cpp:135
#72 0x00007fb1dd2c6dd3 in ThreadWeaver::JobCollectionJobRunner::execute (this=<optimized out>, t=0x337ed20) at /usr/src/debug/kdelibs-4.6.4/threadweaver/Weaver/JobCollection.cpp:82
#73 0x00007fb1dd2c661f in ThreadWeaver::ThreadRunHelper::run (this=0x7fb1bb157e30, parent=0x80d260, th=0x337ed20) at /usr/src/debug/kdelibs-4.6.4/threadweaver/Weaver/Thread.cpp:95
#74 0x00007fb1dd2c66d8 in ThreadWeaver::Thread::run (this=0x337ed20) at /usr/src/debug/kdelibs-4.6.4/threadweaver/Weaver/Thread.cpp:142
#75 0x00007fb1e6464095 in QThreadPrivate::start (arg=0x337ed20) at thread/qthread_unix.cpp:320
#76 0x00007fb1e4ebda3f in start_thread () from /lib64/libpthread.so.0
#77 0x00007fb1e51a767d in clone () from /lib64/libc.so.6
#78 0x0000000000000000 in ?? ()

Thread 5 (Thread 0x7fb1ba957700 (LWP 13237)):
#0  0x00007fb1e51768ed in nanosleep () from /lib64/libc.so.6
#1  0x00007fb1e51a1524 in usleep () from /lib64/libc.so.6
#2  0x00007fb1e293899e in KDevelop::DUChainLock::lockForWrite (this=0x19546d8, timeout=0) at /usr/src/debug/kdevplatform-1.2.0/language/duchain/duchainlock.cpp:201
#3  0x00007fb1e2938b64 in KDevelop::DUChainWriteLocker::lock (this=0x7fb1ba939690) at /usr/src/debug/kdevplatform-1.2.0/language/duchain/duchainlock.cpp:299
#4  0x00007fb1bd268d75 in openContextInternal (identifier=..., type=KDevelop::DUContext::Template, range=..., this=0x7fb1ba939c10) at /usr/include/kdevplatform/language/duchain/builders/abstractcontextbuilder.h:595
#5  ContextBuilder::openContextInternal (this=0x7fb1ba939c10, range=..., type=KDevelop::DUContext::Template, identifier=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/cppduchain/contextbuilder.cpp:629
#6  0x00007fb1bd26674e in openContext (identifier=..., type=KDevelop::DUContext::Template, toRange=<optimized out>, fromRange=0x7fb1c7f15098, this=0x7fb1ba939c10) at /usr/include/kdevplatform/language/duchain/builders/abstractcontextbuilder.h:426
#7  ContextBuilder::visitTemplateDeclaration (this=0x7fb1ba939c10, ast=0x7fb1c7f18498) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/cppduchain/contextbuilder.cpp:282
#8  0x00007fb1bcfd0db6 in visitNodes<DeclarationAST*> (v=0x7fb1ba939c70, nodes=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/visitor.h:129
#9  0x00007fb1bd268e91 in KDevelop::AbstractContextBuilder<AST, NameAST>::supportBuild (this=0x7fb1ba939c10, node=0x7fb19c422670, context=<optimized out>) at /usr/include/kdevplatform/language/duchain/builders/abstractcontextbuilder.h:133
#10 0x00007fb1bd2680dd in ContextBuilder::buildContexts (this=0x7fb1ba939c10, file=..., node=0x7fb19c422670, includes=<optimized out>, updateContext=<optimized out>, removeOldImports=false) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/cppduchain/contextbuilder.cpp:421
#11 0x00007fb1bd274ba1 in DeclarationBuilder::buildDeclarations (this=<optimized out>, file=<optimized out>, node=<optimized out>, includes=<optimized out>, updateContext=<optimized out>, removeOldImports=false) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/cppduchain/declarationbuilder.cpp:91
#12 0x00007fb1bd79603e in CPPInternalParseJob::run (this=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/cppparsejob.cpp:639
#13 0x00007fb1bd79bee7 in PreprocessJob::sourceNeeded (this=0x7fb1a4b0a870, _fileName=<optimized out>, type=<optimized out>, sourceLine=267, skipCurrentPath=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:593
#14 0x00007fb1bd5504e0 in rpp::pp::handle_include (this=0x7fb1ba93b960, skip_current_path=false, input=..., output=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:213
#15 0x00007fb1bd5530eb in rpp::pp::handle_directive (this=0x7fb1ba93b960, directive=132043, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:131
#16 0x00007fb1bd55387f in rpp::pp::operator() (this=0x7fb1ba93b960, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:266
#17 0x00007fb1bd553ab1 in rpp::pp::processFileInternal (this=0x7fb1ba93b960, fileName=<optimized out>, fileContents=<optimized out>, result=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:98
#18 0x00007fb1bd553b55 in rpp::pp::processFile (this=<optimized out>, fileName=<optimized out>, data=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:85
#19 0x00007fb1bd79e017 in PreprocessJob::run (this=0x7fb1a4b0a870) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:259
#20 0x00007fb1bd7933ae in CPPParseJob::parseForeground (this=0x7fb1b6da93a0) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/cppparsejob.cpp:173
#21 0x00007fb1bd79bee7 in PreprocessJob::sourceNeeded (this=0x7fb1a520aec0, _fileName=<optimized out>, type=<optimized out>, sourceLine=21, skipCurrentPath=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:593
#22 0x00007fb1bd5504e0 in rpp::pp::handle_include (this=0x7fb1ba93dc00, skip_current_path=false, input=..., output=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:213
#23 0x00007fb1bd5530eb in rpp::pp::handle_directive (this=0x7fb1ba93dc00, directive=132043, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:131
#24 0x00007fb1bd55387f in rpp::pp::operator() (this=0x7fb1ba93dc00, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:266
#25 0x00007fb1bd553ab1 in rpp::pp::processFileInternal (this=0x7fb1ba93dc00, fileName=<optimized out>, fileContents=<optimized out>, result=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:98
#26 0x00007fb1bd553b55 in rpp::pp::processFile (this=<optimized out>, fileName=<optimized out>, data=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:85
#27 0x00007fb1bd79e017 in PreprocessJob::run (this=0x7fb1a520aec0) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:259
#28 0x00007fb1bd7933ae in CPPParseJob::parseForeground (this=0x7fb1b5af0480) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/cppparsejob.cpp:173
#29 0x00007fb1bd79bee7 in PreprocessJob::sourceNeeded (this=0x7fb1ae0a0c60, _fileName=<optimized out>, type=<optimized out>, sourceLine=17, skipCurrentPath=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:593
#30 0x00007fb1bd5504e0 in rpp::pp::handle_include (this=0x7fb1ba93fea0, skip_current_path=false, input=..., output=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:213
#31 0x00007fb1bd5530eb in rpp::pp::handle_directive (this=0x7fb1ba93fea0, directive=132043, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:131
#32 0x00007fb1bd55387f in rpp::pp::operator() (this=0x7fb1ba93fea0, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:266
#33 0x00007fb1bd553ab1 in rpp::pp::processFileInternal (this=0x7fb1ba93fea0, fileName=<optimized out>, fileContents=<optimized out>, result=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:98
#34 0x00007fb1bd553b55 in rpp::pp::processFile (this=<optimized out>, fileName=<optimized out>, data=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:85
#35 0x00007fb1bd79e017 in PreprocessJob::run (this=0x7fb1ae0a0c60) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:259
#36 0x00007fb1bd7933ae in CPPParseJob::parseForeground (this=0x7fb1ae092d50) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/cppparsejob.cpp:173
#37 0x00007fb1bd79bee7 in PreprocessJob::sourceNeeded (this=0x7fb1ae1ec8d0, _fileName=<optimized out>, type=<optimized out>, sourceLine=23, skipCurrentPath=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:593
#38 0x00007fb1bd5504e0 in rpp::pp::handle_include (this=0x7fb1ba942140, skip_current_path=false, input=..., output=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:213
#39 0x00007fb1bd5530eb in rpp::pp::handle_directive (this=0x7fb1ba942140, directive=132043, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:131
#40 0x00007fb1bd55387f in rpp::pp::operator() (this=0x7fb1ba942140, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:266
#41 0x00007fb1bd553ab1 in rpp::pp::processFileInternal (this=0x7fb1ba942140, fileName=<optimized out>, fileContents=<optimized out>, result=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:98
#42 0x00007fb1bd553b55 in rpp::pp::processFile (this=<optimized out>, fileName=<optimized out>, data=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:85
#43 0x00007fb1bd79e017 in PreprocessJob::run (this=0x7fb1ae1ec8d0) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:259
#44 0x00007fb1bd7933ae in CPPParseJob::parseForeground (this=0x7fb1ae1ec4e0) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/cppparsejob.cpp:173
#45 0x00007fb1bd79bee7 in PreprocessJob::sourceNeeded (this=0x7fb1ad903dc0, _fileName=<optimized out>, type=<optimized out>, sourceLine=17, skipCurrentPath=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:593
#46 0x00007fb1bd5504e0 in rpp::pp::handle_include (this=0x7fb1ba9443e0, skip_current_path=false, input=..., output=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:213
#47 0x00007fb1bd5530eb in rpp::pp::handle_directive (this=0x7fb1ba9443e0, directive=132043, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:131
#48 0x00007fb1bd55387f in rpp::pp::operator() (this=0x7fb1ba9443e0, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:266
#49 0x00007fb1bd553ab1 in rpp::pp::processFileInternal (this=0x7fb1ba9443e0, fileName=<optimized out>, fileContents=<optimized out>, result=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:98
#50 0x00007fb1bd553b55 in rpp::pp::processFile (this=<optimized out>, fileName=<optimized out>, data=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:85
#51 0x00007fb1bd79e017 in PreprocessJob::run (this=0x7fb1ad903dc0) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:259
#52 0x00007fb1bd7933ae in CPPParseJob::parseForeground (this=0x7fb1ad904110) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/cppparsejob.cpp:173
#53 0x00007fb1bd79bee7 in PreprocessJob::sourceNeeded (this=0x7fb1ad999ee0, _fileName=<optimized out>, type=<optimized out>, sourceLine=23, skipCurrentPath=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:593
#54 0x00007fb1bd5504e0 in rpp::pp::handle_include (this=0x7fb1ba946680, skip_current_path=false, input=..., output=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:213
#55 0x00007fb1bd5530eb in rpp::pp::handle_directive (this=0x7fb1ba946680, directive=132043, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:131
#56 0x00007fb1bd55387f in rpp::pp::operator() (this=0x7fb1ba946680, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:266
#57 0x00007fb1bd553ab1 in rpp::pp::processFileInternal (this=0x7fb1ba946680, fileName=<optimized out>, fileContents=<optimized out>, result=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:98
#58 0x00007fb1bd553b55 in rpp::pp::processFile (this=<optimized out>, fileName=<optimized out>, data=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:85
#59 0x00007fb1bd79e017 in PreprocessJob::run (this=0x7fb1ad999ee0) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:259
#60 0x00007fb1bd7933ae in CPPParseJob::parseForeground (this=0x7fb1ad995000) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/cppparsejob.cpp:173
#61 0x00007fb1bd79bee7 in PreprocessJob::sourceNeeded (this=0x7fb1aca325a0, _fileName=<optimized out>, type=<optimized out>, sourceLine=26, skipCurrentPath=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:593
#62 0x00007fb1bd5504e0 in rpp::pp::handle_include (this=0x7fb1ba948920, skip_current_path=false, input=..., output=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:213
#63 0x00007fb1bd5530eb in rpp::pp::handle_directive (this=0x7fb1ba948920, directive=132043, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:131
#64 0x00007fb1bd55387f in rpp::pp::operator() (this=0x7fb1ba948920, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:266
#65 0x00007fb1bd553ab1 in rpp::pp::processFileInternal (this=0x7fb1ba948920, fileName=<optimized out>, fileContents=<optimized out>, result=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:98
#66 0x00007fb1bd553b55 in rpp::pp::processFile (this=<optimized out>, fileName=<optimized out>, data=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:85
#67 0x00007fb1bd79e017 in PreprocessJob::run (this=0x7fb1aca325a0) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:259
#68 0x00007fb1bd7933ae in CPPParseJob::parseForeground (this=0x7fb1ad307210) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/cppparsejob.cpp:173
#69 0x00007fb1bd79bee7 in PreprocessJob::sourceNeeded (this=0x7fb1adf4b1b0, _fileName=<optimized out>, type=<optimized out>, sourceLine=15, skipCurrentPath=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:593
#70 0x00007fb1bd5504e0 in rpp::pp::handle_include (this=0x7fb1ba94abc0, skip_current_path=false, input=..., output=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:213
#71 0x00007fb1bd5530eb in rpp::pp::handle_directive (this=0x7fb1ba94abc0, directive=132043, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:131
#72 0x00007fb1bd55387f in rpp::pp::operator() (this=0x7fb1ba94abc0, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:266
#73 0x00007fb1bd553ab1 in rpp::pp::processFileInternal (this=0x7fb1ba94abc0, fileName=<optimized out>, fileContents=<optimized out>, result=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:98
#74 0x00007fb1bd553b55 in rpp::pp::processFile (this=<optimized out>, fileName=<optimized out>, data=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:85
#75 0x00007fb1bd79e017 in PreprocessJob::run (this=0x7fb1adf4b1b0) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:259
#76 0x00007fb1bd7933ae in CPPParseJob::parseForeground (this=0x7fb1ae401710) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/cppparsejob.cpp:173
#77 0x00007fb1bd79bee7 in PreprocessJob::sourceNeeded (this=0x6e31d80, _fileName=<optimized out>, type=<optimized out>, sourceLine=22, skipCurrentPath=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:593
#78 0x00007fb1bd5504e0 in rpp::pp::handle_include (this=0x7fb1ba94ce60, skip_current_path=false, input=..., output=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:213
#79 0x00007fb1bd5530eb in rpp::pp::handle_directive (this=0x7fb1ba94ce60, directive=132043, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:131
#80 0x00007fb1bd55387f in rpp::pp::operator() (this=0x7fb1ba94ce60, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:266
#81 0x00007fb1bd553ab1 in rpp::pp::processFileInternal (this=0x7fb1ba94ce60, fileName=<optimized out>, fileContents=<optimized out>, result=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:98
#82 0x00007fb1bd553b55 in rpp::pp::processFile (this=<optimized out>, fileName=<optimized out>, data=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:85
#83 0x00007fb1bd79e017 in PreprocessJob::run (this=0x6e31d80) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:259
#84 0x00007fb1bd7933ae in CPPParseJob::parseForeground (this=0x6be4300) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/cppparsejob.cpp:173
#85 0x00007fb1bd79bee7 in PreprocessJob::sourceNeeded (this=0x3b683e0, _fileName=<optimized out>, type=<optimized out>, sourceLine=26, skipCurrentPath=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:593
#86 0x00007fb1bd5504e0 in rpp::pp::handle_include (this=0x7fb1ba94f100, skip_current_path=false, input=..., output=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:213
#87 0x00007fb1bd5530eb in rpp::pp::handle_directive (this=0x7fb1ba94f100, directive=132043, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:131
#88 0x00007fb1bd55387f in rpp::pp::operator() (this=0x7fb1ba94f100, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:266
#89 0x00007fb1bd553ab1 in rpp::pp::processFileInternal (this=0x7fb1ba94f100, fileName=<optimized out>, fileContents=<optimized out>, result=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:98
#90 0x00007fb1bd553b55 in rpp::pp::processFile (this=<optimized out>, fileName=<optimized out>, data=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:85
#91 0x00007fb1bd79e017 in PreprocessJob::run (this=0x3b683e0) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:259
#92 0x00007fb1bd7933ae in CPPParseJob::parseForeground (this=0x6a36e00) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/cppparsejob.cpp:173
#93 0x00007fb1bd79bee7 in PreprocessJob::sourceNeeded (this=0x6726140, _fileName=<optimized out>, type=<optimized out>, sourceLine=28, skipCurrentPath=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:593
#94 0x00007fb1bd5504e0 in rpp::pp::handle_include (this=0x7fb1ba9513a0, skip_current_path=false, input=..., output=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:213
#95 0x00007fb1bd5530eb in rpp::pp::handle_directive (this=0x7fb1ba9513a0, directive=132043, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:131
#96 0x00007fb1bd55387f in rpp::pp::operator() (this=0x7fb1ba9513a0, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:266
#97 0x00007fb1bd553ab1 in rpp::pp::processFileInternal (this=0x7fb1ba9513a0, fileName=<optimized out>, fileContents=<optimized out>, result=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:98
#98 0x00007fb1bd553b55 in rpp::pp::processFile (this=<optimized out>, fileName=<optimized out>, data=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:85
#99 0x00007fb1bd79e017 in PreprocessJob::run (this=0x6726140) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:259
#100 0x00007fb1bd7933ae in CPPParseJob::parseForeground (this=0x6979070) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/cppparsejob.cpp:173
#101 0x00007fb1bd79bee7 in PreprocessJob::sourceNeeded (this=0x687f270, _fileName=<optimized out>, type=<optimized out>, sourceLine=33, skipCurrentPath=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:593
#102 0x00007fb1bd5504e0 in rpp::pp::handle_include (this=0x7fb1ba953640, skip_current_path=false, input=..., output=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:213
#103 0x00007fb1bd5530eb in rpp::pp::handle_directive (this=0x7fb1ba953640, directive=132043, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:131
#104 0x00007fb1bd55387f in rpp::pp::operator() (this=0x7fb1ba953640, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:266
#105 0x00007fb1bd553ab1 in rpp::pp::processFileInternal (this=0x7fb1ba953640, fileName=<optimized out>, fileContents=<optimized out>, result=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:98
#106 0x00007fb1bd553b55 in rpp::pp::processFile (this=<optimized out>, fileName=<optimized out>, data=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:85
#107 0x00007fb1bd79e017 in PreprocessJob::run (this=0x687f270) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:259
#108 0x00007fb1bd7933ae in CPPParseJob::parseForeground (this=0x4665120) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/cppparsejob.cpp:173
#109 0x00007fb1bd79bee7 in PreprocessJob::sourceNeeded (this=0x51460a0, _fileName=<optimized out>, type=<optimized out>, sourceLine=3, skipCurrentPath=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:593
#110 0x00007fb1bd5504e0 in rpp::pp::handle_include (this=0x7fb1ba9558e0, skip_current_path=false, input=..., output=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:213
#111 0x00007fb1bd5530eb in rpp::pp::handle_directive (this=0x7fb1ba9558e0, directive=132043, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:131
#112 0x00007fb1bd55387f in rpp::pp::operator() (this=0x7fb1ba9558e0, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:266
#113 0x00007fb1bd553ab1 in rpp::pp::processFileInternal (this=0x7fb1ba9558e0, fileName=<optimized out>, fileContents=<optimized out>, result=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:98
#114 0x00007fb1bd553b55 in rpp::pp::processFile (this=<optimized out>, fileName=<optimized out>, data=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:85
#115 0x00007fb1bd79e017 in PreprocessJob::run (this=0x51460a0) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:259
#116 0x00007fb1dd2c6bd1 in ThreadWeaver::JobRunHelper::runTheJob (this=0x7fb1ba956d80, th=0x22a9640, job=0x51460a0) at /usr/src/debug/kdelibs-4.6.4/threadweaver/Weaver/Job.cpp:106
#117 0x00007fb1dd2c6d0e in ThreadWeaver::Job::execute (this=0x51460a0, th=0x22a9640) at /usr/src/debug/kdelibs-4.6.4/threadweaver/Weaver/Job.cpp:135
#118 0x00007fb1dd2c6dd3 in ThreadWeaver::JobCollectionJobRunner::execute (this=<optimized out>, t=0x22a9640) at /usr/src/debug/kdelibs-4.6.4/threadweaver/Weaver/JobCollection.cpp:82
#119 0x00007fb1dd2c661f in ThreadWeaver::ThreadRunHelper::run (this=0x7fb1ba956e30, parent=0x80d260, th=0x22a9640) at /usr/src/debug/kdelibs-4.6.4/threadweaver/Weaver/Thread.cpp:95
#120 0x00007fb1dd2c66d8 in ThreadWeaver::Thread::run (this=0x22a9640) at /usr/src/debug/kdelibs-4.6.4/threadweaver/Weaver/Thread.cpp:142
#121 0x00007fb1e6464095 in QThreadPrivate::start (arg=0x22a9640) at thread/qthread_unix.cpp:320
#122 0x00007fb1e4ebda3f in start_thread () from /lib64/libpthread.so.0
#123 0x00007fb1e51a767d in clone () from /lib64/libc.so.6
#124 0x0000000000000000 in ?? ()

Thread 4 (Thread 0x7fb1ba156700 (LWP 13238)):
#0  0x00007fb1e51768ed in nanosleep () from /lib64/libc.so.6
#1  0x00007fb1e51a1524 in usleep () from /lib64/libc.so.6
#2  0x00007fb1e293899e in KDevelop::DUChainLock::lockForWrite (this=0x19546d8, timeout=0) at /usr/src/debug/kdevplatform-1.2.0/language/duchain/duchainlock.cpp:201
#3  0x00007fb1e2938b64 in KDevelop::DUChainWriteLocker::lock (this=0x7fb1ba148890) at /usr/src/debug/kdevplatform-1.2.0/language/duchain/duchainlock.cpp:299
#4  0x00007fb1bd795e19 in CPPInternalParseJob::run (this=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/cppparsejob.cpp:597
#5  0x00007fb1bd79bee7 in PreprocessJob::sourceNeeded (this=0x7fb1ac1af220, _fileName=<optimized out>, type=<optimized out>, sourceLine=43, skipCurrentPath=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:593
#6  0x00007fb1bd5504e0 in rpp::pp::handle_include (this=0x7fb1ba149bc0, skip_current_path=false, input=..., output=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:213
#7  0x00007fb1bd5530eb in rpp::pp::handle_directive (this=0x7fb1ba149bc0, directive=132043, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:131
#8  0x00007fb1bd55387f in rpp::pp::operator() (this=0x7fb1ba149bc0, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:266
#9  0x00007fb1bd553ab1 in rpp::pp::processFileInternal (this=0x7fb1ba149bc0, fileName=<optimized out>, fileContents=<optimized out>, result=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:98
#10 0x00007fb1bd553b55 in rpp::pp::processFile (this=<optimized out>, fileName=<optimized out>, data=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:85
#11 0x00007fb1bd79e017 in PreprocessJob::run (this=0x7fb1ac1af220) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:259
#12 0x00007fb1bd7933ae in CPPParseJob::parseForeground (this=0x7fb1ad3cf9f0) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/cppparsejob.cpp:173
#13 0x00007fb1bd79bee7 in PreprocessJob::sourceNeeded (this=0x7fb19c13adf0, _fileName=<optimized out>, type=<optimized out>, sourceLine=36, skipCurrentPath=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:593
#14 0x00007fb1bd5504e0 in rpp::pp::handle_include (this=0x7fb1ba14be60, skip_current_path=false, input=..., output=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:213
#15 0x00007fb1bd5530eb in rpp::pp::handle_directive (this=0x7fb1ba14be60, directive=132043, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:131
#16 0x00007fb1bd55387f in rpp::pp::operator() (this=0x7fb1ba14be60, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:266
#17 0x00007fb1bd553ab1 in rpp::pp::processFileInternal (this=0x7fb1ba14be60, fileName=<optimized out>, fileContents=<optimized out>, result=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:98
#18 0x00007fb1bd553b55 in rpp::pp::processFile (this=<optimized out>, fileName=<optimized out>, data=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:85
#19 0x00007fb1bd79e017 in PreprocessJob::run (this=0x7fb19c13adf0) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:259
#20 0x00007fb1bd7933ae in CPPParseJob::parseForeground (this=0x7fb19c13b2c0) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/cppparsejob.cpp:173
#21 0x00007fb1bd79bee7 in PreprocessJob::sourceNeeded (this=0x7fb1b4c81bb0, _fileName=<optimized out>, type=<optimized out>, sourceLine=26, skipCurrentPath=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:593
#22 0x00007fb1bd5504e0 in rpp::pp::handle_include (this=0x7fb1ba14e100, skip_current_path=false, input=..., output=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:213
#23 0x00007fb1bd5530eb in rpp::pp::handle_directive (this=0x7fb1ba14e100, directive=132043, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:131
#24 0x00007fb1bd55387f in rpp::pp::operator() (this=0x7fb1ba14e100, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:266
#25 0x00007fb1bd553ab1 in rpp::pp::processFileInternal (this=0x7fb1ba14e100, fileName=<optimized out>, fileContents=<optimized out>, result=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:98
#26 0x00007fb1bd553b55 in rpp::pp::processFile (this=<optimized out>, fileName=<optimized out>, data=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:85
#27 0x00007fb1bd79e017 in PreprocessJob::run (this=0x7fb1b4c81bb0) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:259
#28 0x00007fb1bd7933ae in CPPParseJob::parseForeground (this=0x7fb1b6c83870) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/cppparsejob.cpp:173
#29 0x00007fb1bd79bee7 in PreprocessJob::sourceNeeded (this=0x7fb1ad08c560, _fileName=<optimized out>, type=<optimized out>, sourceLine=23, skipCurrentPath=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:593
#30 0x00007fb1bd5504e0 in rpp::pp::handle_include (this=0x7fb1ba1503a0, skip_current_path=false, input=..., output=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:213
#31 0x00007fb1bd5530eb in rpp::pp::handle_directive (this=0x7fb1ba1503a0, directive=132043, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:131
#32 0x00007fb1bd55387f in rpp::pp::operator() (this=0x7fb1ba1503a0, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:266
#33 0x00007fb1bd553ab1 in rpp::pp::processFileInternal (this=0x7fb1ba1503a0, fileName=<optimized out>, fileContents=<optimized out>, result=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:98
#34 0x00007fb1bd553b55 in rpp::pp::processFile (this=<optimized out>, fileName=<optimized out>, data=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:85
#35 0x00007fb1bd79e017 in PreprocessJob::run (this=0x7fb1ad08c560) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:259
#36 0x00007fb1bd7933ae in CPPParseJob::parseForeground (this=0x7fb1ad148cc0) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/cppparsejob.cpp:173
#37 0x00007fb1bd79bee7 in PreprocessJob::sourceNeeded (this=0x7fb1ad0c8730, _fileName=<optimized out>, type=<optimized out>, sourceLine=39, skipCurrentPath=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:593
#38 0x00007fb1bd5504e0 in rpp::pp::handle_include (this=0x7fb1ba152640, skip_current_path=false, input=..., output=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:213
#39 0x00007fb1bd5530eb in rpp::pp::handle_directive (this=0x7fb1ba152640, directive=132043, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:131
#40 0x00007fb1bd55387f in rpp::pp::operator() (this=0x7fb1ba152640, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:266
#41 0x00007fb1bd553ab1 in rpp::pp::processFileInternal (this=0x7fb1ba152640, fileName=<optimized out>, fileContents=<optimized out>, result=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:98
#42 0x00007fb1bd553b55 in rpp::pp::processFile (this=<optimized out>, fileName=<optimized out>, data=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:85
#43 0x00007fb1bd79e017 in PreprocessJob::run (this=0x7fb1ad0c8730) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:259
#44 0x00007fb1bd7933ae in CPPParseJob::parseForeground (this=0x7fb1ad0ace80) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/cppparsejob.cpp:173
#45 0x00007fb1bd79bee7 in PreprocessJob::sourceNeeded (this=0x7fb1ac829400, _fileName=<optimized out>, type=<optimized out>, sourceLine=4, skipCurrentPath=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:593
#46 0x00007fb1bd5504e0 in rpp::pp::handle_include (this=0x7fb1ba1548e0, skip_current_path=false, input=..., output=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:213
#47 0x00007fb1bd5530eb in rpp::pp::handle_directive (this=0x7fb1ba1548e0, directive=132043, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:131
#48 0x00007fb1bd55387f in rpp::pp::operator() (this=0x7fb1ba1548e0, input=..., output=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:266
#49 0x00007fb1bd553ab1 in rpp::pp::processFileInternal (this=0x7fb1ba1548e0, fileName=<optimized out>, fileContents=<optimized out>, result=...) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:98
#50 0x00007fb1bd553b55 in rpp::pp::processFile (this=<optimized out>, fileName=<optimized out>, data=<optimized out>) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/parser/rpp/pp-engine.cpp:85
#51 0x00007fb1bd79e017 in PreprocessJob::run (this=0x7fb1ac829400) at /usr/src/debug/kdevelop-4.2.2/languages/cpp/preprocessjob.cpp:259
#52 0x00007fb1dd2c6bd1 in ThreadWeaver::JobRunHelper::runTheJob (this=0x7fb1ba155d80, th=0x3580340, job=0x7fb1ac829400) at /usr/src/debug/kdelibs-4.6.4/threadweaver/Weaver/Job.cpp:106
#53 0x00007fb1dd2c6d0e in ThreadWeaver::Job::execute (this=0x7fb1ac829400, th=0x3580340) at /usr/src/debug/kdelibs-4.6.4/threadweaver/Weaver/Job.cpp:135
#54 0x00007fb1dd2c6dd3 in ThreadWeaver::JobCollectionJobRunner::execute (this=<optimized out>, t=0x3580340) at /usr/src/debug/kdelibs-4.6.4/threadweaver/Weaver/JobCollection.cpp:82
#55 0x00007fb1dd2c661f in ThreadWeaver::ThreadRunHelper::run (this=0x7fb1ba155e30, parent=0x80d260, th=0x3580340) at /usr/src/debug/kdelibs-4.6.4/threadweaver/Weaver/Thread.cpp:95
#56 0x00007fb1dd2c66d8 in ThreadWeaver::Thread::run (this=0x3580340) at /usr/src/debug/kdelibs-4.6.4/threadweaver/Weaver/Thread.cpp:142
#57 0x00007fb1e6464095 in QThreadPrivate::start (arg=0x3580340) at thread/qthread_unix.cpp:320
#58 0x00007fb1e4ebda3f in start_thread () from /lib64/libpthread.so.0
#59 0x00007fb1e51a767d in clone () from /lib64/libc.so.6
#60 0x0000000000000000 in ?? ()

Thread 3 (Thread 0x7fb1b9955700 (LWP 13239)):
#0  0x00007fb1e4ec238c in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007fb1e646477b in wait (time=18446744073709551615, this=0x808820) at thread/qwaitcondition_unix.cpp:88
#2  QWaitCondition::wait (this=<optimized out>, mutex=0x8cefc0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:160
#3  0x00007fb1dd2c6254 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x80d260, th=0x7fb1b40027f0) at /usr/src/debug/kdelibs-4.6.4/threadweaver/Weaver/WeaverImpl.cpp:365
#4  0x00007fb1dd2c92a5 in waitForAvailableJob (th=0x7fb1b40027f0, this=<optimized out>) at /usr/src/debug/kdelibs-4.6.4/threadweaver/Weaver/WeaverImpl.cpp:356
#5  ThreadWeaver::WorkingHardState::applyForWork (this=0x96fa50, th=0x7fb1b40027f0) at /usr/src/debug/kdelibs-4.6.4/threadweaver/Weaver/WorkingHardState.cpp:71
#6  0x00007fb1dd2c92be in ThreadWeaver::WorkingHardState::applyForWork (this=0x96fa50, th=0x7fb1b40027f0) at /usr/src/debug/kdelibs-4.6.4/threadweaver/Weaver/WorkingHardState.cpp:74
#7  0x00007fb1dd2c664f in ThreadWeaver::ThreadRunHelper::run (this=0x7fb1b9954e30, parent=0x80d260, th=0x7fb1b40027f0) at /usr/src/debug/kdelibs-4.6.4/threadweaver/Weaver/Thread.cpp:87
#8  0x00007fb1dd2c66d8 in ThreadWeaver::Thread::run (this=0x7fb1b40027f0) at /usr/src/debug/kdelibs-4.6.4/threadweaver/Weaver/Thread.cpp:142
#9  0x00007fb1e6464095 in QThreadPrivate::start (arg=0x7fb1b40027f0) at thread/qthread_unix.cpp:320
#10 0x00007fb1e4ebda3f in start_thread () from /lib64/libpthread.so.0
#11 0x00007fb1e51a767d in clone () from /lib64/libc.so.6
#12 0x0000000000000000 in ?? ()

Thread 2 (Thread 0x7fb1b9154700 (LWP 13269)):
#0  0x00007fb1e4ec238c in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007fb1dca401d4 in WTF::TCMalloc_PageHeap::runScavengerThread(void*) () from /usr/lib64/libQtWebKit.so.4
#2  0x00007fb1e4ebda3f in start_thread () from /lib64/libpthread.so.0
#3  0x00007fb1e51a767d in clone () from /lib64/libc.so.6
#4  0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7fb1e7f23760 (LWP 13077)):
#0  0x00007fb1e4ec238c in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007fb1e646477b in wait (time=18446744073709551615, this=0x330a790) at thread/qwaitcondition_unix.cpp:88
#2  QWaitCondition::wait (this=<optimized out>, mutex=0x330e3c0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:160
#3  0x00007fb1e6463810 in QThread::wait (this=<optimized out>, time=18446744073709551615) at thread/qthread_unix.cpp:722
#4  0x00007fb1e6521820 in QFileSystemWatcher::~QFileSystemWatcher (this=<optimized out>, __in_chrg=<optimized out>) at io/qfilesystemwatcher.cpp:446
#5  0x00007fb1e65218f9 in QFileSystemWatcher::~QFileSystemWatcher (this=0x330aa20, __in_chrg=<optimized out>) at io/qfilesystemwatcher.cpp:462
#6  0x00007fb1e655fa34 in QObjectPrivate::deleteChildren (this=0x3311e80) at kernel/qobject.cpp:1955
#7  0x00007fb1e6564782 in QObject::~QObject (this=0x330a9f0, __in_chrg=<optimized out>) at kernel/qobject.cpp:946
#8  0x00007fb1de003e09 in Solid::Backends::Fstab::FstabWatcher::~FstabWatcher (this=0x330a9f0, __in_chrg=<optimized out>) at /usr/src/debug/kdelibs-4.6.4/solid/solid/backends/fstab/fstabwatcher.cpp:51
#9  0x00007fb1e51095a1 in __run_exit_handlers () from /lib64/libc.so.6
#10 0x00007fb1e51095f5 in exit () from /lib64/libc.so.6
#11 0x00007fb1e5981f48 in ?? () from /usr/lib64/libQtGui.so.4
#12 0x00007fb1e6c7c4a8 in KApplication::xioErrhandler (this=0x7fffa1723fe0, dpy=0x67f7e0) at /usr/src/debug/kdelibs-4.6.4/kdeui/kernel/kapplication.cpp:419
#13 0x00007fb1e161f78e in _XIOError () from /usr/lib64/libX11.so.6
#14 0x00007fb1e161d03d in _XEventsQueued () from /usr/lib64/libX11.so.6
#15 0x00007fb1e160d8df in XEventsQueued () from /usr/lib64/libX11.so.6
#16 0x00007fb1e59baa4c in ?? () from /usr/lib64/libQtGui.so.4
#17 0x00007fb1dfb8584c in g_main_context_check () from /lib64/libglib-2.0.so.0
#18 0x00007fb1dfb86132 in ?? () from /lib64/libglib-2.0.so.0
#19 0x00007fb1dfb86650 in g_main_context_iteration () from /lib64/libglib-2.0.so.0
#20 0x00007fb1e6578286 in QEventDispatcherGlib::processEvents (this=0x61d2e0, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:424
#21 0x00007fb1e59babae in ?? () from /usr/lib64/libQtGui.so.4
#22 0x00007fb1e654c8d2 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#23 0x00007fb1e654cae5 in QEventLoop::exec (this=0x7fffa1723ca0, flags=...) at kernel/qeventloop.cpp:201
#24 0x00007fb1e6550f2b in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1008
#25 0x000000000040b7db in main (argc=<optimized out>, argv=0x7fffa1725e88) at /usr/src/debug/kdevelop-4.2.2/app/main.cpp:467

Possible duplicates by query: bug 269761, bug 262718, bug 250876.

Reported using DrKonqi
Comment 1 claas.koehler 2011-06-15 17:17:57 UTC
Created attachment 61023 [details]
related valgrind output

crash is reproducible when run under valgrind and gives the attached valgrind output
Comment 2 Milian Wolff 2011-06-17 23:01:55 UTC
*** Bug 262718 has been marked as a duplicate of this bug. ***
Comment 3 Milian Wolff 2011-06-17 23:02:05 UTC
*** Bug 269761 has been marked as a duplicate of this bug. ***
Comment 4 Milian Wolff 2011-06-17 23:06:30 UTC
Thanks for the valgrind log, this seems to be a real issue. Can anyone of you give us access to the file/project that triggers this issue? Maybe look at the output of kdevelop and see what file is parsed/highlighted before it crashes (see also the kdebugdialog app to enable kdev c++ and language debug areas).

@David: Looking at the sources I see that the DUChain is repeatedly locked/unlocked in CodeHighlightingInstance but the API uses raw pointers, not DUChainPointers, which might lead to problems like this one, or?

Though considering that the ReferencedTopDUContext in CodeHighlighting::highlightingDUChain is kept alive, the document should not be cleaned/invalidated inbetween hmmm....
Comment 5 David Nolden 2011-06-18 15:08:47 UTC
The duchain of the document should not be changed while updating, because the parse-job triggering the highlighting is holding the UrlParseLock for the document and the parseLock of the language-support. One prevents updating of the document, the other one prevents a global cleanup of the duchain.

Still, maybe this doesn't work properly.

@reporter: Please remove the "lock.unlock();" line in CodeHighlighting::highlightDUChain, rebuild, and check if the crash still happens.
Comment 6 Giorgos Tsiapaliokas 2011-10-25 19:10:20 UTC
Hello,

there is still this issue.

I have compiled kdevelop from sources 2 hours ago.
I am using gentoo as my distro.

i have made some tests,kdevelop is working for 3 template projects but when i add plasmate in the list it crashes...

My intention is to give you more feedback and not to complain about the bug..

Here is the latest output,


Application: KDevelop (kdevelop), signal: Segmentation fault
[Current thread is 1 (Thread 0x7f0c437fa760 (LWP 438))]

Thread 13 (Thread 0x7f0c2e910700 (LWP 1789)):
#0  pthread_cond_timedwait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:216
#1  0x00007f0c41cab5e1 in wait (time=1000, this=0x18bd8b0) at thread/qwaitcondition_unix.cpp:86
#2  QWaitCondition::wait (this=<optimized out>, mutex=0x18e2540, time=1000) at thread/qwaitcondition_unix.cpp:160
#3  0x00007f0c3e2d12aa in KDevelop::DUChainPrivate::CleanupThread::run (this=0x18e2520) at /var/tmp/portage/dev-util/kdevplatform-9999/work/kdevplatform-9999/language/duchain/duchain.cpp:282
#4  0x00007f0c41caaf95 in QThreadPrivate::start (arg=0x18e2520) at thread/qthread_unix.cpp:331
#5  0x00007f0c40702d4c in start_thread (arg=0x7f0c2e910700) at pthread_create.c:301
#6  0x00007f0c409efc6d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115

Thread 12 (Thread 0x7f0c1c503700 (LWP 1848)):
#0  0x00007f0c40705354 in __pthread_mutex_lock (mutex=0x7f0c20001268) at pthread_mutex_lock.c:61
#1  0x00007f0c3b7295b5 in g_main_context_prepare (context=0x7f0c20001260, priority=0x7f0c1c502ccc) at gmain.c:2748
#2  0x00007f0c3b72a3a9 in g_main_context_iterate (context=0x7f0c20001260, block=1, dispatch=1, self=<optimized out>) at gmain.c:3053
#3  0x00007f0c3b72a9e1 in g_main_context_iteration (context=0x7f0c20001260, may_block=1) at gmain.c:3136
#4  0x00007f0c41dbe026 in QEventDispatcherGlib::processEvents (this=0x7f0c200009d0, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:424
#5  0x00007f0c41d92422 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#6  0x00007f0c41d92664 in QEventLoop::exec (this=0x7f0c1c502de0, flags=...) at kernel/qeventloop.cpp:201
#7  0x00007f0c41ca8744 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:498
#8  0x00007f0c41d73fd8 in QInotifyFileSystemWatcherEngine::run (this=0x24c8240) at io/qfilesystemwatcher_inotify.cpp:248
#9  0x00007f0c41caaf95 in QThreadPrivate::start (arg=0x24c8240) at thread/qthread_unix.cpp:331
#10 0x00007f0c40702d4c in start_thread (arg=0x7f0c1c503700) at pthread_create.c:301
#11 0x00007f0c409efc6d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115

Thread 11 (Thread 0x7f0c1aa94700 (LWP 2311)):
#0  pthread_cond_wait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007f0c38a5e1d4 in scavengerThread (this=0x7f0c3927ff20) at wtf/FastMalloc.cpp:2378
#2  WTF::TCMalloc_PageHeap::runScavengerThread (context=0x7f0c3927ff20) at wtf/FastMalloc.cpp:1497
#3  0x00007f0c40702d4c in start_thread (arg=0x7f0c1aa94700) at pthread_create.c:301
#4  0x00007f0c409efc6d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115

Thread 10 (Thread 0x7f0c1b295700 (LWP 2313)):
#0  0x00007f0c409e6fa3 in *__GI___poll (fds=<optimized out>, nfds=<optimized out>, timeout=<optimized out>) at ../sysdeps/unix/sysv/linux/poll.c:87
#1  0x00007f0c3b72a524 in g_main_context_poll (n_fds=1, fds=0x7f0c14017eb0, timeout=-1, context=0x2a2f0f0, priority=<optimized out>) at gmain.c:3386
#2  g_main_context_iterate (context=0x2a2f0f0, block=1, dispatch=1, self=<optimized out>) at gmain.c:3068
#3  0x00007f0c3b72a9e1 in g_main_context_iteration (context=0x2a2f0f0, may_block=1) at gmain.c:3136
#4  0x00007f0c41dbe026 in QEventDispatcherGlib::processEvents (this=0x253eb70, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:424
#5  0x00007f0c41d92422 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#6  0x00007f0c41d92664 in QEventLoop::exec (this=0x7f0c1b294e20, flags=...) at kernel/qeventloop.cpp:201
#7  0x00007f0c41ca8744 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:498
#8  0x00007f0c41caaf95 in QThreadPrivate::start (arg=0xa2b780) at thread/qthread_unix.cpp:331
#9  0x00007f0c40702d4c in start_thread (arg=0x7f0c1b295700) at pthread_create.c:301
#10 0x00007f0c409efc6d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115

Thread 9 (Thread 0x7f0c1934f700 (LWP 2391)):
#0  pthread_cond_timedwait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:216
#1  0x00007f0c41cab5e1 in wait (time=30000, this=0x2ae56c0) at thread/qwaitcondition_unix.cpp:86
#2  QWaitCondition::wait (this=<optimized out>, mutex=0x2ae3ec0, time=30000) at thread/qwaitcondition_unix.cpp:160
#3  0x00007f0c41ca00b7 in QThreadPoolThread::run (this=0x227ed60) at concurrent/qthreadpool.cpp:140
#4  0x00007f0c41caaf95 in QThreadPrivate::start (arg=0x227ed60) at thread/qthread_unix.cpp:331
#5  0x00007f0c40702d4c in start_thread (arg=0x7f0c1934f700) at pthread_create.c:301
#6  0x00007f0c409efc6d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115

Thread 8 (Thread 0x7f0c18b4e700 (LWP 2403)):
#0  pthread_cond_timedwait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:216
#1  0x00007f0c41cab5e1 in wait (time=30000, this=0x2ae56c0) at thread/qwaitcondition_unix.cpp:86
#2  QWaitCondition::wait (this=<optimized out>, mutex=0x2ae3ec0, time=30000) at thread/qwaitcondition_unix.cpp:160
#3  0x00007f0c41ca00b7 in QThreadPoolThread::run (this=0x2b02330) at concurrent/qthreadpool.cpp:140
#4  0x00007f0c41caaf95 in QThreadPrivate::start (arg=0x2b02330) at thread/qthread_unix.cpp:331
#5  0x00007f0c40702d4c in start_thread (arg=0x7f0c18b4e700) at pthread_create.c:301
#6  0x00007f0c409efc6d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115

Thread 7 (Thread 0x7f0c13fff700 (LWP 2416)):
#0  pthread_cond_timedwait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:216
#1  0x00007f0c41cab5e1 in wait (time=30000, this=0x2ae56c0) at thread/qwaitcondition_unix.cpp:86
#2  QWaitCondition::wait (this=<optimized out>, mutex=0x2ae3ec0, time=30000) at thread/qwaitcondition_unix.cpp:160
#3  0x00007f0c41ca00b7 in QThreadPoolThread::run (this=0x2b07910) at concurrent/qthreadpool.cpp:140
#4  0x00007f0c41caaf95 in QThreadPrivate::start (arg=0x2b07910) at thread/qthread_unix.cpp:331
#5  0x00007f0c40702d4c in start_thread (arg=0x7f0c13fff700) at pthread_create.c:301
#6  0x00007f0c409efc6d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115

Thread 6 (Thread 0x7f0c137fe700 (LWP 3207)):
#0  pthread_cond_wait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007f0c2eeb4594 in QTWTF::TCMalloc_PageHeap::scavengerThread (this=0x7f0c2f1cd180) at ../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:2359
#2  0x00007f0c2eeb45c9 in QTWTF::TCMalloc_PageHeap::runScavengerThread (context=0x7f0c2f1db254) at ../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:1464
#3  0x00007f0c40702d4c in start_thread (arg=0x7f0c137fe700) at pthread_create.c:301
#4  0x00007f0c409efc6d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115

Thread 5 (Thread 0x7f0c124a1700 (LWP 3328)):
#0  0x00007f0c409e6fa3 in *__GI___poll (fds=<optimized out>, nfds=<optimized out>, timeout=<optimized out>) at ../sysdeps/unix/sysv/linux/poll.c:87
#1  0x00007f0c3b72a524 in g_main_context_poll (n_fds=1, fds=0x7f0c142853d0, timeout=-1, context=0x2611630, priority=<optimized out>) at gmain.c:3386
#2  g_main_context_iterate (context=0x2611630, block=1, dispatch=1, self=<optimized out>) at gmain.c:3068
#3  0x00007f0c3b72a9e1 in g_main_context_iteration (context=0x2611630, may_block=1) at gmain.c:3136
#4  0x00007f0c41dbe026 in QEventDispatcherGlib::processEvents (this=0x382b230, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:424
#5  0x00007f0c41d92422 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#6  0x00007f0c41d92664 in QEventLoop::exec (this=0x7f0c124a0e20, flags=...) at kernel/qeventloop.cpp:201
#7  0x00007f0c41ca8744 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:498
#8  0x00007f0c41caaf95 in QThreadPrivate::start (arg=0x38799c0) at thread/qthread_unix.cpp:331
#9  0x00007f0c40702d4c in start_thread (arg=0x7f0c124a1700) at pthread_create.c:301
#10 0x00007f0c409efc6d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115

Thread 4 (Thread 0x7f0c11ca0700 (LWP 3329)):
#0  0x00007f0c409e6fa3 in *__GI___poll (fds=<optimized out>, nfds=<optimized out>, timeout=<optimized out>) at ../sysdeps/unix/sysv/linux/poll.c:87
#1  0x00007f0c3b72a524 in g_main_context_poll (n_fds=1, fds=0x2427630, timeout=-1, context=0x25fe690, priority=<optimized out>) at gmain.c:3386
#2  g_main_context_iterate (context=0x25fe690, block=1, dispatch=1, self=<optimized out>) at gmain.c:3068
#3  0x00007f0c3b72a9e1 in g_main_context_iteration (context=0x25fe690, may_block=1) at gmain.c:3136
#4  0x00007f0c41dbe026 in QEventDispatcherGlib::processEvents (this=0x2490b60, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:424
#5  0x00007f0c41d92422 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#6  0x00007f0c41d92664 in QEventLoop::exec (this=0x7f0c11c9fe20, flags=...) at kernel/qeventloop.cpp:201
#7  0x00007f0c41ca8744 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:498
#8  0x00007f0c41caaf95 in QThreadPrivate::start (arg=0x2483d80) at thread/qthread_unix.cpp:331
#9  0x00007f0c40702d4c in start_thread (arg=0x7f0c11ca0700) at pthread_create.c:301
#10 0x00007f0c409efc6d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115

Thread 3 (Thread 0x7f0c1149f700 (LWP 3334)):
#0  pthread_cond_wait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007f0c41cab67b in wait (time=18446744073709551615, this=0x9d15b0) at thread/qwaitcondition_unix.cpp:88
#2  QWaitCondition::wait (this=<optimized out>, mutex=0x80d440, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:160
#3  0x00007f0c392adf84 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x9cfd00, th=0x2346960) at /var/tmp/portage/kde-base/kdelibs-4.7.2/work/kdelibs-4.7.2/threadweaver/Weaver/WeaverImpl.cpp:365
#4  0x00007f0c392b0613 in ThreadWeaver::WorkingHardState::applyForWork (this=0x846410, th=0x2346960) at /var/tmp/portage/kde-base/kdelibs-4.7.2/work/kdelibs-4.7.2/threadweaver/Weaver/WorkingHardState.cpp:71
#5  0x00007f0c392b062c in ThreadWeaver::WorkingHardState::applyForWork (this=0x846410, th=0x2346960) at /var/tmp/portage/kde-base/kdelibs-4.7.2/work/kdelibs-4.7.2/threadweaver/Weaver/WorkingHardState.cpp:74
#6  0x00007f0c392af3ff in ThreadWeaver::ThreadRunHelper::run (this=0x7f0c1149ee30, parent=0x9cfd00, th=0x2346960) at /var/tmp/portage/kde-base/kdelibs-4.7.2/work/kdelibs-4.7.2/threadweaver/Weaver/Thread.cpp:87
#7  0x00007f0c392af488 in ThreadWeaver::Thread::run (this=0x2346960) at /var/tmp/portage/kde-base/kdelibs-4.7.2/work/kdelibs-4.7.2/threadweaver/Weaver/Thread.cpp:142
#8  0x00007f0c41caaf95 in QThreadPrivate::start (arg=0x2346960) at thread/qthread_unix.cpp:331
#9  0x00007f0c40702d4c in start_thread (arg=0x7f0c1149f700) at pthread_create.c:301
#10 0x00007f0c409efc6d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115

Thread 2 (Thread 0x7f0c10c9e700 (LWP 3335)):
[KCrash Handler]
#6  0x00007f0c127e1434 in Cpp::ExpressionVisitor::visitName (this=0x7f0c10c8c520, node=0x7f0c20d94268) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/cppduchain/expressionvisitor.cpp:492
#7  0x00007f0c124b9d1e in DefaultVisitor::visitTypeIdentification (this=0x7f0c10c8c520, node=0x7f0c20d94458) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/parser/default_visitor.cpp:434
#8  0x00007f0c127d6dfa in Cpp::ExpressionVisitor::parse (this=0x7f0c10c8c520, ast=0x7f0c20d94458) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/cppduchain/expressionvisitor.cpp:249
#9  0x00007f0c127d424b in Cpp::ExpressionParser::evaluateType (this=<optimized out>, ast=0x7f0c20d94458, session=<optimized out>, source=0x7f0c1630c340) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/cppduchain/expressionparser.cpp:114
#10 0x00007f0c127d4862 in Cpp::ExpressionParser::evaluateType (this=0x7f0c10c8de10, unit=..., context=<optimized out>, source=0x7f0c1630c340, forceExpression=true) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/cppduchain/expressionparser.cpp:93
#11 0x00007f0c127d4bec in Cpp::ExpressionParser::evaluateExpression (this=<optimized out>, expression=<optimized out>, context=<optimized out>, source=<optimized out>) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/cppduchain/expressionparser.cpp:101
#12 0x00007f0c127cb39b in DelayedTypeResolver::exchange (this=<optimized out>, type=<optimized out>) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/cppduchain/templatedeclaration.cpp:197
#13 0x00007f0c127c4e5e in Cpp::resolveDelayedTypes (type=..., context=<optimized out>, source=0x7f0c1630c340, searchFlags=<optimized out>) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/cppduchain/templatedeclaration.cpp:1034
#14 0x00007f0c12762fd3 in Cpp::CppDUContext<KDevelop::DUContext>::findDeclarationsInternal (this=0x7f0c20c41080, identifier=..., position=<optimized out>, dataType=<optimized out>, ret=..., source=0x7f0c1630c340, basicFlags=...) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/cppduchain/cppducontext.h:345
#15 0x00007f0c12767f64 in Cpp::CppDUContext<KDevelop::DUContext>::findDeclarationsInternal (this=0x7f0c20c41080, identifiers=..., position=..., dataType=..., ret=..., source=0x7f0c1630c340, basicFlags=..., depth=0) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/cppduchain/cppducontext.h:286
#16 0x00007f0c3e2d8607 in KDevelop::DUContext::findDeclarations (this=0x7f0c20c41080, identifier=<optimized out>, position=..., dataType=..., topContext=<optimized out>, flags=...) at /var/tmp/portage/dev-util/kdevplatform-9999/work/kdevplatform-9999/language/duchain/ducontext.cpp:857
#17 0x00007f0c12796591 in TypeBuilder::openTypeFromName (this=0x7f0c10c8f960, name=0x7f0c164a5ab0, modifiers=0, needClass=false) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/cppduchain/typebuilder.cpp:468
#18 0x00007f0c127974af in TypeBuilder::visitSimpleTypeSpecifier (this=0x7f0c10c8f960, node=0x7f0c164a5ae0) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/cppduchain/typebuilder.cpp:390
#19 0x00007f0c127586ab in ContextBuilder::visitFunctionDeclaration (this=0x7f0c10c8f960, node=0x7f0c164a8470) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/cppduchain/contextbuilder.cpp:606
#20 0x00007f0c1276b765 in DeclarationBuilder::visitFunctionDeclaration (this=0x7f0c10c8f960, node=0x7f0c164a8470) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/cppduchain/declarationbuilder.cpp:177
#21 0x00007f0c1275c16f in ContextBuilder::visitFunctionDefinition (this=0x7f0c10c8f960, node=0x7f0c164a8470) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/cppduchain/contextbuilder.cpp:576
#22 0x00007f0c1275b67a in ContextBuilder::visitTemplateDeclaration (this=0x7f0c10c8f960, ast=0x7f0c164a84e0) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/cppduchain/contextbuilder.cpp:292
#23 0x00007f0c124ba58e in visitNodes<DeclarationAST*> (v=0x7f0c10c8f9c0, nodes=<optimized out>) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/parser/visitor.h:138
#24 0x00007f0c1275d911 in KDevelop::AbstractContextBuilder<AST, NameAST>::supportBuild (this=0x7f0c10c8f960, node=0x7f0c16376ee0, context=<optimized out>) at /usr/include/kdevplatform/language/duchain/builders/abstractcontextbuilder.h:133
#25 0x00007f0c1275cfd5 in ContextBuilder::buildContexts (this=0x7f0c10c8f960, file=..., node=0x7f0c16376ee0, includes=<optimized out>, updateContext=<optimized out>, removeOldImports=false) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/cppduchain/contextbuilder.cpp:421
#26 0x00007f0c12769681 in DeclarationBuilder::buildDeclarations (this=<optimized out>, file=<optimized out>, node=<optimized out>, includes=<optimized out>, updateContext=<optimized out>, removeOldImports=false) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/cppduchain/declarationbuilder.cpp:92
#27 0x00007f0c12a6f72b in CPPInternalParseJob::run (this=<optimized out>) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/cppparsejob.cpp:637
#28 0x00007f0c12a75ee4 in PreprocessJob::sourceNeeded (this=0x421aee0, _fileName=<optimized out>, type=<optimized out>, sourceLine=81, skipCurrentPath=<optimized out>) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/preprocessjob.cpp:579
#29 0x00007f0c18142404 in rpp::pp::handle_include (this=0x7f0c10c91690, skip_current_path=false, input=..., output=<optimized out>) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/parser/rpp/pp-engine.cpp:213
#30 0x00007f0c18144e9b in rpp::pp::handle_directive (this=0x7f0c10c91690, directive=118480, input=..., output=...) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/parser/rpp/pp-engine.cpp:131
#31 0x00007f0c181455d5 in rpp::pp::operator() (this=0x7f0c10c91690, input=..., output=...) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/parser/rpp/pp-engine.cpp:266
#32 0x00007f0c1814582e in rpp::pp::processFileInternal (this=0x7f0c10c91690, fileName=<optimized out>, fileContents=<optimized out>, result=...) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/parser/rpp/pp-engine.cpp:98
#33 0x00007f0c181458b5 in rpp::pp::processFile (this=<optimized out>, fileName=<optimized out>, data=<optimized out>) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/parser/rpp/pp-engine.cpp:85
#34 0x00007f0c12a77135 in PreprocessJob::run (this=0x421aee0) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/preprocessjob.cpp:245
#35 0x00007f0c12a6cc4e in CPPParseJob::parseForeground (this=0x484f500) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/cppparsejob.cpp:174
#36 0x00007f0c12a75ee4 in PreprocessJob::sourceNeeded (this=0x3d2aaf0, _fileName=<optimized out>, type=<optimized out>, sourceLine=20, skipCurrentPath=<optimized out>) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/preprocessjob.cpp:579
#37 0x00007f0c18142404 in rpp::pp::handle_include (this=0x7f0c10c93a10, skip_current_path=false, input=..., output=<optimized out>) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/parser/rpp/pp-engine.cpp:213
#38 0x00007f0c18144e9b in rpp::pp::handle_directive (this=0x7f0c10c93a10, directive=118480, input=..., output=...) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/parser/rpp/pp-engine.cpp:131
#39 0x00007f0c181455d5 in rpp::pp::operator() (this=0x7f0c10c93a10, input=..., output=...) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/parser/rpp/pp-engine.cpp:266
#40 0x00007f0c1814582e in rpp::pp::processFileInternal (this=0x7f0c10c93a10, fileName=<optimized out>, fileContents=<optimized out>, result=...) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/parser/rpp/pp-engine.cpp:98
#41 0x00007f0c181458b5 in rpp::pp::processFile (this=<optimized out>, fileName=<optimized out>, data=<optimized out>) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/parser/rpp/pp-engine.cpp:85
#42 0x00007f0c12a77135 in PreprocessJob::run (this=0x3d2aaf0) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/preprocessjob.cpp:245
#43 0x00007f0c12a6cc4e in CPPParseJob::parseForeground (this=0x3ae97a0) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/cppparsejob.cpp:174
#44 0x00007f0c12a75ee4 in PreprocessJob::sourceNeeded (this=0x4890140, _fileName=<optimized out>, type=<optimized out>, sourceLine=26, skipCurrentPath=<optimized out>) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/preprocessjob.cpp:579
#45 0x00007f0c18142404 in rpp::pp::handle_include (this=0x7f0c10c95d90, skip_current_path=false, input=..., output=<optimized out>) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/parser/rpp/pp-engine.cpp:213
#46 0x00007f0c18144e9b in rpp::pp::handle_directive (this=0x7f0c10c95d90, directive=118480, input=..., output=...) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/parser/rpp/pp-engine.cpp:131
#47 0x00007f0c181455d5 in rpp::pp::operator() (this=0x7f0c10c95d90, input=..., output=...) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/parser/rpp/pp-engine.cpp:266
#48 0x00007f0c1814582e in rpp::pp::processFileInternal (this=0x7f0c10c95d90, fileName=<optimized out>, fileContents=<optimized out>, result=...) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/parser/rpp/pp-engine.cpp:98
#49 0x00007f0c181458b5 in rpp::pp::processFile (this=<optimized out>, fileName=<optimized out>, data=<optimized out>) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/parser/rpp/pp-engine.cpp:85
#50 0x00007f0c12a77135 in PreprocessJob::run (this=0x4890140) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/preprocessjob.cpp:245
#51 0x00007f0c12a6cc4e in CPPParseJob::parseForeground (this=0x46de810) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/cppparsejob.cpp:174
#52 0x00007f0c12a75ee4 in PreprocessJob::sourceNeeded (this=0x4a199d0, _fileName=<optimized out>, type=<optimized out>, sourceLine=16, skipCurrentPath=<optimized out>) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/preprocessjob.cpp:579
#53 0x00007f0c18142404 in rpp::pp::handle_include (this=0x7f0c10c98110, skip_current_path=false, input=..., output=<optimized out>) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/parser/rpp/pp-engine.cpp:213
#54 0x00007f0c18144e9b in rpp::pp::handle_directive (this=0x7f0c10c98110, directive=118480, input=..., output=...) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/parser/rpp/pp-engine.cpp:131
#55 0x00007f0c181455d5 in rpp::pp::operator() (this=0x7f0c10c98110, input=..., output=...) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/parser/rpp/pp-engine.cpp:266
#56 0x00007f0c1814582e in rpp::pp::processFileInternal (this=0x7f0c10c98110, fileName=<optimized out>, fileContents=<optimized out>, result=...) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/parser/rpp/pp-engine.cpp:98
#57 0x00007f0c181458b5 in rpp::pp::processFile (this=<optimized out>, fileName=<optimized out>, data=<optimized out>) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/parser/rpp/pp-engine.cpp:85
#58 0x00007f0c12a77135 in PreprocessJob::run (this=0x4a199d0) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/preprocessjob.cpp:245
#59 0x00007f0c12a6cc4e in CPPParseJob::parseForeground (this=0x41ca220) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/cppparsejob.cpp:174
#60 0x00007f0c12a75ee4 in PreprocessJob::sourceNeeded (this=0x47c1890, _fileName=<optimized out>, type=<optimized out>, sourceLine=29, skipCurrentPath=<optimized out>) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/preprocessjob.cpp:579
#61 0x00007f0c18142404 in rpp::pp::handle_include (this=0x7f0c10c9a490, skip_current_path=false, input=..., output=<optimized out>) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/parser/rpp/pp-engine.cpp:213
#62 0x00007f0c18144e9b in rpp::pp::handle_directive (this=0x7f0c10c9a490, directive=118480, input=..., output=...) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/parser/rpp/pp-engine.cpp:131
#63 0x00007f0c181455d5 in rpp::pp::operator() (this=0x7f0c10c9a490, input=..., output=...) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/parser/rpp/pp-engine.cpp:266
#64 0x00007f0c1814582e in rpp::pp::processFileInternal (this=0x7f0c10c9a490, fileName=<optimized out>, fileContents=<optimized out>, result=...) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/parser/rpp/pp-engine.cpp:98
#65 0x00007f0c181458b5 in rpp::pp::processFile (this=<optimized out>, fileName=<optimized out>, data=<optimized out>) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/parser/rpp/pp-engine.cpp:85
#66 0x00007f0c12a77135 in PreprocessJob::run (this=0x47c1890) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/preprocessjob.cpp:245
#67 0x00007f0c12a6cc4e in CPPParseJob::parseForeground (this=0x41c9c10) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/cppparsejob.cpp:174
#68 0x00007f0c12a75ee4 in PreprocessJob::sourceNeeded (this=0x4187df0, _fileName=<optimized out>, type=<optimized out>, sourceLine=40, skipCurrentPath=<optimized out>) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/preprocessjob.cpp:579
#69 0x00007f0c18142404 in rpp::pp::handle_include (this=0x7f0c10c9c810, skip_current_path=false, input=..., output=<optimized out>) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/parser/rpp/pp-engine.cpp:213
#70 0x00007f0c18144e9b in rpp::pp::handle_directive (this=0x7f0c10c9c810, directive=118480, input=..., output=...) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/parser/rpp/pp-engine.cpp:131
#71 0x00007f0c181455d5 in rpp::pp::operator() (this=0x7f0c10c9c810, input=..., output=...) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/parser/rpp/pp-engine.cpp:266
#72 0x00007f0c1814582e in rpp::pp::processFileInternal (this=0x7f0c10c9c810, fileName=<optimized out>, fileContents=<optimized out>, result=...) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/parser/rpp/pp-engine.cpp:98
#73 0x00007f0c181458b5 in rpp::pp::processFile (this=<optimized out>, fileName=<optimized out>, data=<optimized out>) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/parser/rpp/pp-engine.cpp:85
#74 0x00007f0c12a77135 in PreprocessJob::run (this=0x4187df0) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/languages/cpp/preprocessjob.cpp:245
#75 0x00007f0c392afae1 in ThreadWeaver::JobRunHelper::runTheJob (this=0x7f0c10c9dd80, th=0x7f0c1425d380, job=0x4187df0) at /var/tmp/portage/kde-base/kdelibs-4.7.2/work/kdelibs-4.7.2/threadweaver/Weaver/Job.cpp:106
#76 0x00007f0c392afc1e in ThreadWeaver::Job::execute (this=0x4187df0, th=0x7f0c1425d380) at /var/tmp/portage/kde-base/kdelibs-4.7.2/work/kdelibs-4.7.2/threadweaver/Weaver/Job.cpp:135
#77 0x00007f0c392b0ed3 in ThreadWeaver::JobCollectionJobRunner::execute (this=0x4630390, t=0x7f0c1425d380) at /var/tmp/portage/kde-base/kdelibs-4.7.2/work/kdelibs-4.7.2/threadweaver/Weaver/JobCollection.cpp:82
#78 0x00007f0c392af3cf in ThreadWeaver::ThreadRunHelper::run (this=0x7f0c10c9de30, parent=0x9cfd00, th=0x7f0c1425d380) at /var/tmp/portage/kde-base/kdelibs-4.7.2/work/kdelibs-4.7.2/threadweaver/Weaver/Thread.cpp:95
#79 0x00007f0c392af488 in ThreadWeaver::Thread::run (this=0x7f0c1425d380) at /var/tmp/portage/kde-base/kdelibs-4.7.2/work/kdelibs-4.7.2/threadweaver/Weaver/Thread.cpp:142
#80 0x00007f0c41caaf95 in QThreadPrivate::start (arg=0x7f0c1425d380) at thread/qthread_unix.cpp:331
#81 0x00007f0c40702d4c in start_thread (arg=0x7f0c10c9e700) at pthread_create.c:301
#82 0x00007f0c409efc6d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115

Thread 1 (Thread 0x7f0c437fa760 (LWP 438)):
#0  0x00007f0c409e6f92 in *__GI___poll (fds=<optimized out>, nfds=<optimized out>, timeout=<optimized out>) at ../sysdeps/unix/sysv/linux/poll.c:87
#1  0x00007f0c37729e5a in _xcb_conn_wait (c=0x646940, cond=<optimized out>, vector=0x0, count=0x0) at /var/tmp/portage/x11-libs/libxcb-1.7/work/libxcb-1.7/src/xcb_conn.c:313
#2  0x00007f0c3772b487 in xcb_wait_for_reply (c=0x646940, request=149604, e=0x7fffd95c3ea8) at /var/tmp/portage/x11-libs/libxcb-1.7/work/libxcb-1.7/src/xcb_in.c:378
#3  0x00007f0c3cfe5ced in _XReply (dpy=0x640680, rep=0x7fffd95c3ef0, extra=0, discard=1) at /var/tmp/portage/x11-libs/libX11-1.4.4/work/libX11-1.4.4/src/xcb_io.c:601
#4  0x00007f0c3cfe2d5c in XTranslateCoordinates (dpy=0x640680, src_win=349, dest_win=20984764, src_x=291, src_y=267, dst_x=0x7fffd95c3f6c, dst_y=0x7fffd95c3f68, child=0x7fffd95c3f60) at /var/tmp/portage/x11-libs/libX11-1.4.4/work/libX11-1.4.4/src/TrCoords.c:51
#5  0x00007f0c4120a11e in QWidgetPrivate::mapFromGlobal (this=0x372ed30, pos=<optimized out>) at kernel/qwidget_x11.cpp:1314
#6  0x00007f0c4120a17e in QWidgetPrivate::mapFromGlobal (this=0x37371c0, pos=...) at kernel/qwidget_x11.cpp:1307
#7  0x00007f0c4120a17e in QWidgetPrivate::mapFromGlobal (this=0x24405a0, pos=...) at kernel/qwidget_x11.cpp:1307
#8  0x00007f0c4120a17e in QWidgetPrivate::mapFromGlobal (this=0x2440b10, pos=...) at kernel/qwidget_x11.cpp:1307
#9  0x00007f0c4120a17e in QWidgetPrivate::mapFromGlobal (this=0x2441a60, pos=...) at kernel/qwidget_x11.cpp:1307
#10 0x00007f0c4120a17e in QWidgetPrivate::mapFromGlobal (this=0x243f630, pos=...) at kernel/qwidget_x11.cpp:1307
#11 0x00007f0c4120a17e in QWidgetPrivate::mapFromGlobal (this=0x24407d0, pos=...) at kernel/qwidget_x11.cpp:1307
#12 0x00007f0c4120a1bd in QWidget::mapFromGlobal (this=<optimized out>, pos=<optimized out>) at kernel/qwidget_x11.cpp:1327
#13 0x00007f0c41177000 in QApplicationPrivate::pickMouseReceiver (candidate=0x3712b60, globalPos=..., pos=..., type=<optimized out>, buttons=..., buttonDown=0x0, alienWidget=<optimized out>) at kernel/qapplication.cpp:3068
#14 0x00007f0c411f67b2 in QETWidget::translateMouseEvent (this=0x3712b60, event=<optimized out>) at kernel/qapplication_x11.cpp:4451
#15 0x00007f0c411f4f09 in QApplication::x11ProcessEvent (this=0x7fffd95c51f0, event=0x7fffd95c4ba0) at kernel/qapplication_x11.cpp:3587
#16 0x00007f0c4121c6d2 in x11EventSourceDispatch (s=0x63dd70, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146
#17 0x00007f0c3b72a012 in g_main_dispatch (context=0x63d820) at gmain.c:2425
#18 g_main_context_dispatch (context=0x63d820) at gmain.c:2995
#19 0x00007f0c3b72a808 in g_main_context_iterate (context=0x63d820, block=1, dispatch=1, self=<optimized out>) at gmain.c:3073
#20 0x00007f0c3b72a9e1 in g_main_context_iteration (context=0x63d820, may_block=1) at gmain.c:3136
#21 0x00007f0c41dbdfcf in QEventDispatcherGlib::processEvents (this=0x639a90, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:422
#22 0x00007f0c4121c37e in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=<optimized out>) at kernel/qguieventdispatcher_glib.cpp:204
#23 0x00007f0c41d92422 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#24 0x00007f0c41d92664 in QEventLoop::exec (this=0x7fffd95c4ea0, flags=...) at kernel/qeventloop.cpp:201
#25 0x00007f0c41d96aeb in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1064
#26 0x000000000040c3ce in main (argc=<optimized out>, argv=0x7fffd95c70e8) at /var/tmp/portage/dev-util/kdevelop-9999/work/kdevelop-9999/app/main.cpp:479
Comment 7 Giorgos Tsiapaliokas 2011-10-25 19:13:46 UTC
P.S.:if you want more info or if you want me to use earlier versions of kdevelop or in anyway more feedback,please let me know.
Comment 8 Milian Wolff 2011-10-25 20:39:38 UTC
ah, this is a duplicate report. also note that I fixed 284536 just a few minutes ago - please try to update and see if it still crashes.

thanks

*** This bug has been marked as a duplicate of bug 284536 ***
Comment 9 Giorgos Tsiapaliokas 2011-10-26 10:06:44 UTC
kdevelop-4.2.3 doesn't crash.
The master(after milian's patch) is still crashing
Comment 10 Milian Wolff 2011-10-26 10:57:56 UTC
Tsiapaliwkas: Please show an updated backtrace of master crashing and attach that information to bug 284536

the bug indicated by above backtrace is definitely fixed.
Comment 11 Kevin Funk 2012-12-02 22:56:02 UTC
*** Bug 289455 has been marked as a duplicate of this bug. ***
Comment 12 Kevin Funk 2013-02-24 08:11:18 UTC
This isn't a duplicate of bug 284536, as that clearly indicates a complete different backtrace.

It still seems to crash in KDevelop::CodeHighlightingInstance::typeForDeclaration in current master, as reported by hippiehunter on #kdevelop.

Backtrace (reduced):
(gdb) bt full
#0  0x00007ffff1a76ee0 in KDevelop::DUContext::type (this=0x7fff58002800)
    at /home/hippiehunter/git/kdevgit/kdevplatform/language/duchain/ducontext.cpp:1174
No locals.
#1  0x00007ffff1bb8ee1 in KDevelop::CodeHighlightingInstance::typeForDeclaration (this=0x7fff582af9e0, dec=0x7fff58c7d870, context=0x3ee2000)
    at /home/hippiehunter/git/kdevgit/kdevplatform/language/highlighting/codehighlighting.cpp:373
        type = KDevelop::HighlightingEnumContainer::LocalVariableType
#2  0x00007ffff1bb93e8 in KDevelop::CodeHighlightingInstance::highlightUse (
    this=0x7fff582af9e0, context=0x3ee2000, index=32, color=...)
    at /home/hippiehunter/git/kdevgit/kdevplatform/language/highlighting/codehighlighting.cpp:440
        type = KDevelop::HighlightingEnumContainer::ErrorVariableType
        decl = 0x7fff58c7d870
#3  0x00007ffff1bb8881 in KDevelop::CodeHighlightingInstance::highlightDUChain
    (this=0x7fff582af9e0, context=0x3ee2000, colorsForDeclarations=..., 
    declarationsForColors=...)
    at /home/hippiehunter/git/kdevgit/kdevplatform/language/highlighting/codehighlighting.cpp:279
        decl = 0x7fff58c7d870
        color = {cspec = QColor::Invalid, ct = {argb = {alpha = 65535, 
              red = 0, green = 0, blue = 0, pad = 0}, ahsv = {alpha = 65535, 
---Type <return> to continue, or q <return> to quit---
              hue = 0, saturation = 0, value = 0, pad = 0}, acmyk = {
              alpha = 65535, cyan = 0, magenta = 0, yellow = 0, black = 0}, 
            ahsl = {alpha = 65535, hue = 0, saturation = 0, lightness = 0, 
              pad = 0}, array = {65535, 0, 0, 0, 0}}}
        a = 32
        lock = {m_lock = 0x1847398, m_locked = true, m_timeout = 0}
        top = 0x3df32f0
        takeFreeColors = {{p = {static shared_null = {ref = {_q_value = 1}, 
                alloc = 0, begin = 0, end = 0, sharable = 1, array = {0x0}}, 
              d = 0x624ea0 <QListData::shared_null>}, 
            d = 0x624ea0 <QListData::shared_null>}}
        children = {{d = 0x7ffff60c0940 <QVectorData::shared_null>, 
            p = 0x7ffff60c0940 <QVectorData::shared_null>}}
#4  0x00007ffff1bb89fa in KDevelop::CodeHighlightingInstance::highlightDUChain
    (this=0x7fff582af9e0, context=0x3df32f0, colorsForDeclarations=..., 
    declarationsForColors=...)
    at /home/hippiehunter/git/kdevgit/kdevplatform/language/highlighting/codehighlighting.cpp:292
        child = 0x3ee2000
        _container_ = {c = {{d = 0x7fff58cae240, p = 0x7fff58cae240}}, 
          brk = 0, i = 0x7fff58cae2a0, e = 0x7fff58cae370}
        lock = {m_lock = 0x1847398, m_locked = false, m_timeout = 0}
        top = 0x3df32f0
---Type <return> to continue, or q <return> to quit---
        takeFreeColors = {{p = {static shared_null = {ref = {_q_value = 1}, 
                alloc = 0, begin = 0, end = 0, sharable = 1, array = {0x0}}, 
              d = 0x624ea0 <QListData::shared_null>}, 
            d = 0x624ea0 <QListData::shared_null>}}
        children = {{d = 0x7fff58cae240, p = 0x7fff58cae240}}
#5  0x00007ffff1bb7ff2 in KDevelop::CodeHighlightingInstance::highlightDUChain
    (this=0x7fff582af9e0, context=0x3df32f0)
    at /home/hippiehunter/git/kdevgit/kdevplatform/language/highlighting/codehighlighting.cpp:207
No locals.
#6  0x00007ffff1bb7c8a in KDevelop::CodeHighlighting::highlightDUChain (
    this=0x67d0e0, context=...)
    at /home/hippiehunter/git/kdevgit/kdevplatform/language/highlighting/codehighlighting.cpp:188
        url = {m_index = 1230679}
        __PRETTY_FUNCTION__ = "virtual void KDevelop::CodeHighlighting::highlightDUChain(KDevelop::ReferencedTopDUContext)"
        highlighting = 0x7ffff1a5ccef
     <QHash<KDevelop::TopDUContext*, unsigned int>::findNode(KDevelop::TopDUContext* const&, unsigned int*) const+225>
        urlLock = {m_url = {m_index = 1230679}}
        lock = {m_lock = 0x1847398, m_locked = false, m_timeout = 0}
        revision = 2
Comment 13 Jeff Greene 2013-06-16 17:52:03 UTC
Created attachment 80559 [details]
New crash information added by DrKonqi

kdevelop (4.5.60) on KDE Platform 4.10.3 using Qt 4.8.4

- What I was doing when the application crashed:

editing inc/json_serialization.h in https://github.com/hippiehunter/reflectable at commit b5a1d9404a8973d4675312d8153e5427d628a184

requires boost 1.53, contains a CMakeLists.txt for importing a kdevelop project from

on line 54 if you add an additional type parameter after ReflectableObject, it will crash every time, I am available in the IRC channel if any assistance is needed in reproducing this.

-- Backtrace (Reduced):
#5  0x00007fc33da15efc in KDevelop::DUContext::type (this=0x7fc28cb6bcc0) at /home/hippiehunter/git/kdevgit/kdevplatform/language/duchain/ducontext.cpp:1175
#6  0x00007fc33db58dd1 in KDevelop::CodeHighlightingInstance::typeForDeclaration (this=0x7fc28c14f8b0, dec=0x7fc28cf0f9b0, context=0x7fc28d59b930) at /home/hippiehunter/git/kdevgit/kdevplatform/language/highlighting/codehighlighting.cpp:373
#7  0x00007fc33db592d8 in KDevelop::CodeHighlightingInstance::highlightUse (this=0x7fc28c14f8b0, context=0x7fc28d59b930, index=36, color=...) at /home/hippiehunter/git/kdevgit/kdevplatform/language/highlighting/codehighlighting.cpp:440
#8  0x00007fc33db58771 in KDevelop::CodeHighlightingInstance::highlightDUChain (this=0x7fc28c14f8b0, context=0x7fc28d59b930, colorsForDeclarations=..., declarationsForColors=...) at /home/hippiehunter/git/kdevgit/kdevplatform/language/highlighting/codehighlighting.cpp:279
#9  0x00007fc33db588ea in KDevelop::CodeHighlightingInstance::highlightDUChain (this=0x7fc28c14f8b0, context=0x7fc28c002dd0, colorsForDeclarations=..., declarationsForColors=...) at /home/hippiehunter/git/kdevgit/kdevplatform/language/highlighting/codehighlighting.cpp:292
Comment 14 Milian Wolff 2013-11-16 20:17:38 UTC
Confirmed, thanks for the steps on how to reproduce. I'll look into it now.
Comment 15 Milian Wolff 2013-11-17 01:21:02 UTC
Minimal testcase I could come up with so far:

// add a comma after T here and wait and/or save and press f5
template<typename T>
class foo
{
  template<typename Tn>
  void bar()
  {
  }

  template<typename Tn>
  void asdf()
  {
    decltype(((foo<T>*)nullptr)->bar<Tn>());
  }
};
Comment 16 Milian Wolff 2013-11-17 01:40:27 UTC
==17564== Thread 7 ThreadWeaver::Thread:
==17564== Invalid read of size 8
==17564==    at 0xB60D55C: KDevelop::DUContext::d_func() const (ducontext.h:873)
==17564==    by 0xB605494: KDevelop::DUContext::type() const (ducontext.cpp:1176)
==17564==    by 0xB77EE56: KDevelop::CodeHighlightingInstance::typeForDeclaration(KDevelop::Declaration*, KDevelop::DUContext*) const (codehighlighting.cpp:373)
==17564==    by 0xB77F5B5: KDevelop::CodeHighlightingInstance::highlightUse(KDevelop::DUContext*, int, QColor const&) (codehighlighting.cpp:445)
==17564==    by 0xB77E703: KDevelop::CodeHighlightingInstance::highlightDUChain(KDevelop::DUContext*, QHash<KDevelop::Declaration*, unsigned int>, QVector<KDevelop::Declaration*>) (codehighlighting.cpp:279)
==17564==    by 0xB77E8C9: KDevelop::CodeHighlightingInstance::highlightDUChain(KDevelop::DUContext*, QHash<KDevelop::Declaration*, unsigned int>, QVector<KDevelop::Declaration*>) (codehighlighting.cpp:292)
==17564==    by 0xB77E8C9: KDevelop::CodeHighlightingInstance::highlightDUChain(KDevelop::DUContext*, QHash<KDevelop::Declaration*, unsigned int>, QVector<KDevelop::Declaration*>) (codehighlighting.cpp:292)
finally got a valgrind backtrace!

==17564==    by 0xB77DC5D: KDevelop::CodeHighlightingInstance::highlightDUChain(KDevelop::TopDUContext*) (codehighlighting.cpp:207)
==17564==    by 0xB77D82F: KDevelop::CodeHighlighting::highlightDUChain(KDevelop::ReferencedTopDUContext) (codehighlighting.cpp:188)
==17564==    by 0xB77DCCB: non-virtual thunk to KDevelop::CodeHighlighting::highlightDUChain(KDevelop::ReferencedTopDUContext) (codehighlighting.cpp:199)
==17564==    by 0x2445726D: CPPInternalParseJob::run() (cppparsejob.cpp:727)
==17564==    by 0x6017A51: ??? (in /usr/lib/libthreadweaver.so.4.11.3)
==17564==    by 0x6017C0D: ThreadWeaver::Job::execute(ThreadWeaver::Thread*) (in /usr/lib/libthreadweaver.so.4.11.3)
==17564==    by 0x60196AA: ??? (in /usr/lib/libthreadweaver.so.4.11.3)
==17564==    by 0x601745A: ThreadWeaver::Thread::run() (in /usr/lib/libthreadweaver.so.4.11.3)
==17564==    by 0x7EEBD8E: ??? (in /usr/lib/libQtCore.so.4.8.5)
==17564==    by 0x835A0A1: start_thread (in /usr/lib/libpthread-2.18.so)
==17564==    by 0x9FB649C: clone (in /usr/lib/libc-2.18.so)
==17564==  Address 0x20e06af8 is 8 bytes inside a block of size 56 free'd
==17564==    at 0x4C28EAC: operator delete(void*) (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==17564==    by 0x245C0151: Cpp::CppDUContext<KDevelop::DUContext>::~CppDUContext() (cppducontext.h:707)
==17564==    by 0x245BD851: Cpp::CppDUContext<KDevelop::DUContext>::deleteAllInstantiations() (cppducontext.h:668)
==17564==    by 0x245D5B6F: DeclarationBuilder::closeDeclaration(bool) (declarationbuilder.cpp:859)
==17564==    by 0x245D789B: DeclarationBuilder::visitClassSpecifier(ClassSpecifierAST*) (declarationbuilder.cpp:1149)
==17564==    by 0x245D79AE: non-virtual thunk to DeclarationBuilder::visitClassSpecifier(ClassSpecifierAST*) (declarationbuilder.cpp:1159)
==17564==    by 0x2470DD79: Visitor::visit(AST*) (visitor.cpp:124)
==17564==    by 0x2460AA08: TypeBuilder::visitSimpleDeclaration(SimpleDeclarationAST*) (typebuilder.cpp:677)
==17564==    by 0x245D2AB0: DeclarationBuilder::visitSimpleDeclaration(SimpleDeclarationAST*) (declarationbuilder.cpp:349)
==17564==    by 0x245D2B2E: non-virtual thunk to DeclarationBuilder::visitSimpleDeclaration(SimpleDeclarationAST*) (declarationbuilder.cpp:357)
==17564==    by 0x2470DD79: Visitor::visit(AST*) (visitor.cpp:124)
==17564==    by 0x245B7C59: ContextBuilder::visitTemplateDeclaration(TemplateDeclarationAST*) (contextbuilder.cpp:293)
==17564==    by 0x245B7DBE: non-virtual thunk to ContextBuilder::visitTemplateDeclaration(TemplateDeclarationAST*) (contextbuilder.cpp:296)
==17564==    by 0x2470DD79: Visitor::visit(AST*) (visitor.cpp:124)
==17564==    by 0x2470ABC1: void visitNodes<DeclarationAST*>(Visitor*, ListNode<DeclarationAST*> const*) (visitor.h:139)
==17564==    by 0x2470A1AB: DefaultVisitor::visitTranslationUnit(TranslationUnitAST*) (default_visitor.cpp:425)
==17564==    by 0x2470DD79: Visitor::visit(AST*) (visitor.cpp:124)
==17564==    by 0x245B7376: ContextBuilder::startVisiting(AST*) (contextbuilder.cpp:187)
==17564==    by 0x245BE5A9: KDevelop::AbstractContextBuilder<AST, NameAST>::supportBuild(AST*, KDevelop::DUContext*) (abstractcontextbuilder.h:133)
==17564==    by 0x245B8F7E: ContextBuilder::buildContexts(KSharedPtr<Cpp::EnvironmentFile>, AST*, QList<LineContextPair>*, KDevelop::ReferencedTopDUContext const&, bool) (contextbuilder.cpp:422)
==17564==    by 0x245D091D: DeclarationBuilder::buildDeclarations(KSharedPtr<Cpp::EnvironmentFile>, AST*, QList<LineContextPair>*, KDevelop::ReferencedTopDUContext const&, bool) (declarationbuilder.cpp:95)
==17564==    by 0x24456159: CPPInternalParseJob::run() (cppparsejob.cpp:636)
==17564==    by 0x6017A51: ??? (in /usr/lib/libthreadweaver.so.4.11.3)
==17564==    by 0x6017C0D: ThreadWeaver::Job::execute(ThreadWeaver::Thread*) (in /usr/lib/libthreadweaver.so.4.11.3)
==17564==    by 0x60196AA: ??? (in /usr/lib/libthreadweaver.so.4.11.3)
==17564==    by 0x601745A: ThreadWeaver::Thread::run() (in /usr/lib/libthreadweaver.so.4.11.3)
==17564==    by 0x7EEBD8E: ??? (in /usr/lib/libQtCore.so.4.8.5)
==17564==    by 0x835A0A1: start_thread (in /usr/lib/libpthread-2.18.so)
==17564==    by 0x9FB649C: clone (in /usr/lib/libc-2.18.so)
==17564==
Comment 17 Milian Wolff 2013-11-17 02:09:22 UTC
Git commit 5b5e3703745ef12cd8b56eb8e86db93178ccd9f5 by Milian Wolff.
Committed on 17/11/2013 at 02:08.
Pushed by mwolff into branch '4.6'.

Do not delete anonymous contexts of instantiations.

This "fix" is ugly, but similar to what was done before in the
declaration builder which we happily live with since years.

So, better than crashing, lets workaround this nasty issue.

M  +6    -8    languages/cpp/cppduchain/cppducontext.h

http://commits.kde.org/kdevelop/5b5e3703745ef12cd8b56eb8e86db93178ccd9f5