Bug 510603 - Repeated segfault in clang_getFileContents() after starting to declare a member function in a header
Summary: Repeated segfault in clang_getFileContents() after starting to declare a memb...
Status: CONFIRMED
Alias: None
Product: kdevelop
Classification: Applications
Component: Language Support: CPP (Clang-based) (other bugs)
Version First Reported In: git master
Platform: Manjaro Linux
: NOR crash
Target Milestone: ---
Assignee: kdevelop-bugs-null
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2025-10-14 16:45 UTC by Igor Kushnir
Modified: 2025-12-19 15:33 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed/Implemented In:
Sentry Crash Report:


Attachments
gdb.txt with output of thread apply all bt (77.16 KB, text/plain)
2025-12-19 12:10 UTC, git.ceeac
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Igor Kushnir 2025-10-14 16:45:19 UTC
SUMMARY
Today I started declaring a member function of KDevelop's class DUChainBase and got a segfault. Restarted KDevelop without clearing the cache => the same crash after a few seconds of parsing. Restarted KDevelop and agreed to clear the cache => the same crash soon enough. Reproduced a few more times, then completed the declaration in Kate and never saw the segfault again. Cannot reproduce the crash anymore by removing the end of the declaration in KDevelop and saving duchainbase.h.

The same crash has been reported in https://bugs.kde.org/show_bug.cgi?id=407841#c5 under an unrelated bug 1.5 years ago.

SOFTWARE/OS VERSIONS
Linux: Manjaro GNU/Linux, Xfce
KDE Frameworks Version: 6.18.0
Qt Version: 6.9.2

BACKTRACE (all threads)
Thread 20 "Queue(0x5555561" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fff6ffff6c0 (LWP 21145)]
0x00007fffbde8e0c2 in clang_getFileContents () from /usr/lib/libclang.so.20.1
(gdb) thread apply all bt

Thread 26 (Thread 0x7fff6f7fe6c0 (LWP 21231) "Queue(0x5555561"):
#0  0x00007fffbef68ab5 in ??? () at /usr/lib/libclang.so.20.1
#1  0x00007fffbef83254 in ??? () at /usr/lib/libclang.so.20.1
#2  0x00007fffbef859dd in ??? () at /usr/lib/libclang.so.20.1
#3  0x00007fffbf08baa6 in ??? () at /usr/lib/libclang.so.20.1
#4  0x00007fffbf0a2ee1 in ??? () at /usr/lib/libclang.so.20.1
#5  0x00007fffbf0a3a25 in ??? () at /usr/lib/libclang.so.20.1
#6  0x00007fffbf0a51b7 in ??? () at /usr/lib/libclang.so.20.1
#7  0x00007fffbf09c8e2 in ??? () at /usr/lib/libclang.so.20.1
#8  0x00007fffbf06032b in ??? () at /usr/lib/libclang.so.20.1
#9  0x00007fffbf0603fd in ??? () at /usr/lib/libclang.so.20.1
#10 0x00007fffbef85c73 in ??? () at /usr/lib/libclang.so.20.1
#11 0x00007fffbf08baa6 in ??? () at /usr/lib/libclang.so.20.1
#12 0x00007fffbf09c40a in ??? () at /usr/lib/libclang.so.20.1
#13 0x00007fffbf0a6173 in ??? () at /usr/lib/libclang.so.20.1
#14 0x00007fffbf09c8e2 in ??? () at /usr/lib/libclang.so.20.1
#15 0x00007fffbf06032b in ??? () at /usr/lib/libclang.so.20.1
#16 0x00007fffbf0603fd in ??? () at /usr/lib/libclang.so.20.1
#17 0x00007fffbef81b48 in ??? () at /usr/lib/libclang.so.20.1
#18 0x00007fffbf001ae4 in ??? () at /usr/lib/libclang.so.20.1
#19 0x00007fffbf00bd29 in ??? () at /usr/lib/libclang.so.20.1
#20 0x00007fffbf00cd2a in ??? () at /usr/lib/libclang.so.20.1
#21 0x00007fffbf016aef in ??? () at /usr/lib/libclang.so.20.1
#22 0x00007fffbeebe716 in ??? () at /usr/lib/libclang.so.20.1
#23 0x00007fffbeec4319 in ??? () at /usr/lib/libclang.so.20.1
#24 0x00007fffbeec4610 in ??? () at /usr/lib/libclang.so.20.1
#25 0x00007fffbeeba90a in ??? () at /usr/lib/libclang.so.20.1
#26 0x00007fffbeebaebc in ??? () at /usr/lib/libclang.so.20.1
#27 0x00007fffbeebc3e4 in ??? () at /usr/lib/libclang.so.20.1
#28 0x00007fffbeebce17 in ??? () at /usr/lib/libclang.so.20.1
#29 0x00007fffbeeeefc5 in ??? () at /usr/lib/libclang.so.20.1
#30 0x00007fffbeeefbb1 in ??? () at /usr/lib/libclang.so.20.1
#31 0x00007fffbeef67a8 in ??? () at /usr/lib/libclang.so.20.1
#32 0x00007fffbeb5fc11 in ??? () at /usr/lib/libclang.so.20.1
#33 0x00007fffbf5029b8 in ??? () at /usr/lib/libclang.so.20.1
#34 0x00007fffbf4f52fa in ??? () at /usr/lib/libclang.so.20.1
#35 0x00007fffbf4f9da5 in ??? () at /usr/lib/libclang.so.20.1
#36 0x00007fffbf4fbb8c in ??? () at /usr/lib/libclang.so.20.1
#37 0x00007fffbf4fbd75 in ??? () at /usr/lib/libclang.so.20.1
#38 0x00007fffbf5871ba in ??? () at /usr/lib/libclang.so.20.1
#39 0x00007fffbf597f33 in ??? () at /usr/lib/libclang.so.20.1
#40 0x00007fffbf5999c2 in ??? () at /usr/lib/libclang.so.20.1
#41 0x00007fffbf5a113f in ??? () at /usr/lib/libclang.so.20.1
#42 0x00007fffbf5a30c1 in ??? () at /usr/lib/libclang.so.20.1
#43 0x00007fffbf492e08 in ??? () at /usr/lib/libclang.so.20.1
#44 0x00007fffbf4b7d5d in ??? () at /usr/lib/libclang.so.20.1
#45 0x00007fffbf4bb653 in ??? () at /usr/lib/libclang.so.20.1
#46 0x00007fffbf4bdd00 in ??? () at /usr/lib/libclang.so.20.1
#47 0x00007fffbf48dcac in ??? () at /usr/lib/libclang.so.20.1
#48 0x00007fffbf48ef94 in ??? () at /usr/lib/libclang.so.20.1
#49 0x00007fffbf48500a in ??? () at /usr/lib/libclang.so.20.1
#50 0x00007fffbf48841e in ??? () at /usr/lib/libclang.so.20.1
#51 0x00007fffbf48c2ce in ??? () at /usr/lib/libclang.so.20.1
#52 0x00007fffbe7eb2fc in ??? () at /usr/lib/libclang.so.20.1
#53 0x00007fffbe809240 in ??? () at /usr/lib/libclang.so.20.1
#54 0x00007fffbe75033a in ??? () at /usr/lib/libclang.so.20.1
#55 0x00007fffbdeb1ba4 in ??? () at /usr/lib/libclang.so.20.1
#56 0x00007fffbdeb4976 in ??? () at /usr/lib/libclang.so.20.1
#57 0x00007fffb4dcbf88 in llvm::CrashRecoveryContext::RunSafely(llvm::function_ref<void ()>) () at /usr/lib/libLLVM.so.20.1
#58 0x00007fffb4dcc040 in ??? () at /usr/lib/libLLVM.so.20.1
#59 0x00007fffb4dcba0f in ??? () at /usr/lib/libLLVM.so.20.1
#60 0x00007ffff58969cb in ??? () at /usr/lib/libc.so.6
#61 0x00007ffff591aa0c in ??? () at /usr/lib/libc.so.6

Thread 20 (Thread 0x7fff6ffff6c0 (LWP 21145) "Queue(0x5555561"):
#0  0x00007fffbde8e0c2 in clang_getFileContents () at /usr/lib/libclang.so.20.1
#1  0x00007fffccfce485 in ClangUtils::getRawContents (unit=0x7fff5801c660, range=...) at kdevelop/plugins/clang/util/clangutils.cpp:347
#2  0x00007fffccfb3031 in (anonymous namespace)::fixitsForDiagnostic (diagnostic=0x7fff6926b260, unit=0x7fff5801c660) at kdevelop/plugins/clang/duchain/clangproblem.cpp:63
#3  ClangProblem::ClangProblem (this=0x7fff68ebb900, diagnostic=0x7fff6926b260, unit=0x7fff5801c660, this=<optimized out>, diagnostic=<optimized out>, unit=<optimized out>) at kdevelop/plugins/clang/duchain/clangproblem.cpp:154
#4  0x00007fffccfb34c4 in ClangProblem::ClangProblem (this=this@entry=0x7fff69001980, diagnostic=diagnostic@entry=0x7fff693107f0, unit=unit@entry=0x7fff5801c660, this=<optimized out>, diagnostic=<optimized out>, unit=<optimized out>) at kdevelop/plugins/clang/duchain/clangproblem.cpp:164
#5  0x00007fffccf97408 in ClangDiagnosticEvaluator::createProblem (diagnostic=0x7fff693107f0, unit=0x7fff5801c660) at kdevelop/plugins/clang/duchain/clangdiagnosticevaluator.cpp:110
#6  0x00007fffccfc4904 in ParseSession::getOrCreateProblem (this=this@entry=0x7fff6fffdc50, indexInTU=indexInTU@entry=3, diagnostic=diagnostic@entry=0x7fff693107f0) at /usr/include/qt6/QtCore/qcomparehelpers.h:1100
#7  0x00007fffccfc81f1 in ParseSession::problemsForFile (this=0x7fff6fffdc50, file=0x7fff30465320) at kdevelop/plugins/clang/duchain/parsesession.cpp:614
#8  0x00007fffccf9f180 in ClangHelpers::buildDUChain (file=<optimized out>, imports=<optimized out>, session=..., features=..., includedFiles=..., unsavedRevisions=..., parseDocument=..., index=0x555558690560, abortFunction=...) at kdevelop/plugins/clang/duchain/clanghelpers.cpp:203
#9  0x00007fffccf9eb0a in ClangHelpers::buildDUChain (file=<optimized out>, imports=..., session=..., features=..., includedFiles=..., unsavedRevisions=..., parseDocument=..., index=0x555558690560, abortFunction=...) at kdevelop/plugins/clang/duchain/clanghelpers.cpp:121
#10 0x00007fffccf9eb0a in ClangHelpers::buildDUChain (file=<optimized out>, imports=..., session=..., features=..., features@entry=..., includedFiles=..., unsavedRevisions=..., parseDocument=..., index=0x555558690560, abortFunction=...) at kdevelop/plugins/clang/duchain/clanghelpers.cpp:121
#11 0x00007fffcd043dcf in ClangParseJob::run (this=0x555566807840) at kdevelop/plugins/clang/clangparsejob.cpp:323
#12 0x00007ffff1848822 in ThreadWeaver::IdDecorator::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) () at /usr/lib/libKF6ThreadWeaver.so.6
#13 0x00007ffff1848611 in ThreadWeaver::Executor::run(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /usr/lib/libKF6ThreadWeaver.so.6
#14 0x00007ffff184953e in ThreadWeaver::Job::execute(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /usr/lib/libKF6ThreadWeaver.so.6
#15 0x00007ffff1851e2e in ThreadWeaver::Thread::run() () at /usr/lib/libKF6ThreadWeaver.so.6
#16 0x00007ffff6320e92 in ??? () at /usr/lib/libQt6Core.so.6
#17 0x00007ffff58969cb in ??? () at /usr/lib/libc.so.6
#18 0x00007ffff591aa0c in ??? () at /usr/lib/libc.so.6

Thread 19 (Thread 0x7fffa4dfa6c0 (LWP 21144) "Queue(0x5555561"):
#0  0x00007ffff589f042 in ??? () at /usr/lib/libc.so.6
#1  0x00007ffff58931ac in ??? () at /usr/lib/libc.so.6
#2  0x00007ffff589381c in ??? () at /usr/lib/libc.so.6
#3  0x00007ffff589874c in ??? () at /usr/lib/libc.so.6
#4  0x00007fffb4eeb8e0 in llvm::llvm_thread_join_impl(unsigned long) () at /usr/lib/libLLVM.so.20.1
#5  0x00007fffb4dcc1bb in llvm::CrashRecoveryContext::RunSafelyOnThread(llvm::function_ref<void ()>, unsigned int) () at /usr/lib/libLLVM.so.20.1
#6  0x00007fffbde94172 in clang_parseTranslationUnit2FullArgv () at /usr/lib/libclang.so.20.1
#7  0x00007fffbde9423a in clang_parseTranslationUnit2 () at /usr/lib/libclang.so.20.1
#8  0x00007fffccfbdd59 in ParseSessionData::ParseSessionData (this=this@entry=0x7fff75e41930, unsavedFiles=..., index=<optimized out>, environment=..., options=..., this=<optimized out>, unsavedFiles=<optimized out>, index=<optimized out>, environment=<optimized out>, options=...) at kdevelop/plugins/clang/duchain/parsesession.cpp:369
#9  0x00007fffcd039be3 in ClangParseJob::createSessionData (this=this@entry=0x555566f85e60) at kdevelop/plugins/clang/clangparsejob.cpp:369
#10 0x00007fffcd042d93 in ClangParseJob::run (this=0x555566f85e60) at kdevelop/plugins/clang/clangparsejob.cpp:285
#11 0x00007ffff1848822 in ThreadWeaver::IdDecorator::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) () at /usr/lib/libKF6ThreadWeaver.so.6
#12 0x00007ffff1848611 in ThreadWeaver::Executor::run(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /usr/lib/libKF6ThreadWeaver.so.6
#13 0x00007ffff184953e in ThreadWeaver::Job::execute(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /usr/lib/libKF6ThreadWeaver.so.6
#14 0x00007ffff1851e2e in ThreadWeaver::Thread::run() () at /usr/lib/libKF6ThreadWeaver.so.6
#15 0x00007ffff6320e92 in ??? () at /usr/lib/libQt6Core.so.6
#16 0x00007ffff58969cb in ??? () at /usr/lib/libc.so.6
#17 0x00007ffff591aa0c in ??? () at /usr/lib/libc.so.6

Thread 17 (Thread 0x7fffa5dfc6c0 (LWP 21142) "Queue(0x5555561"):
#0  0x00007ffff591876d in syscall () at /usr/lib/libc.so.6
#1  0x00007ffff6322846 in QBasicMutex::lockInternal() () at /usr/lib/libQt6Core.so.6
#2  0x00007ffff6322a9d in QRecursiveMutex::tryLock(QDeadlineTimer) () at /usr/lib/libQt6Core.so.6
#3  0x00007ffff3ca1d0d in QRecursiveMutex::lock (this=<optimized out>) at /usr/include/qt6/QtCore/qmutex.h:189
#4  0x00007fffccf9ec90 in ClangHelpers::buildDUChain (file=<optimized out>, imports=<optimized out>, session=..., features=..., includedFiles=..., unsavedRevisions=..., parseDocument=..., index=0x555558690560, abortFunction=...) at kdevelop/plugins/clang/duchain/clanghelpers.cpp:135
#5  0x00007fffccf9eb0a in ClangHelpers::buildDUChain (file=<optimized out>, imports=..., session=..., features=..., includedFiles=..., unsavedRevisions=..., parseDocument=..., index=0x555558690560, abortFunction=...) at kdevelop/plugins/clang/duchain/clanghelpers.cpp:121
#6  0x00007fffccf9eb0a in ClangHelpers::buildDUChain (file=<optimized out>, imports=..., session=..., features=..., includedFiles=..., unsavedRevisions=..., parseDocument=..., index=0x555558690560, abortFunction=...) at kdevelop/plugins/clang/duchain/clanghelpers.cpp:121
#7  0x00007fffccf9eb0a in ClangHelpers::buildDUChain (file=<optimized out>, imports=..., session=..., features=..., features@entry=..., includedFiles=..., unsavedRevisions=..., parseDocument=..., index=0x555558690560, abortFunction=...) at kdevelop/plugins/clang/duchain/clanghelpers.cpp:121
#8  0x00007fffcd043dcf in ClangParseJob::run (this=0x55556680db80) at kdevelop/plugins/clang/clangparsejob.cpp:323
#9  0x00007ffff1848822 in ThreadWeaver::IdDecorator::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) () at /usr/lib/libKF6ThreadWeaver.so.6
#10 0x00007ffff1848611 in ThreadWeaver::Executor::run(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /usr/lib/libKF6ThreadWeaver.so.6
#11 0x00007ffff184953e in ThreadWeaver::Job::execute(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /usr/lib/libKF6ThreadWeaver.so.6
#12 0x00007ffff1851e2e in ThreadWeaver::Thread::run() () at /usr/lib/libKF6ThreadWeaver.so.6
#13 0x00007ffff6320e92 in ??? () at /usr/lib/libQt6Core.so.6
#14 0x00007ffff58969cb in ??? () at /usr/lib/libc.so.6
#15 0x00007ffff591aa0c in ??? () at /usr/lib/libc.so.6

Thread 16 (Thread 0x7fffa65fd6c0 (LWP 21141) "Queue(0x5555561"):
#0  0x00007fffbf23bf20 in ??? () at /usr/lib/libclang.so.20.1
#1  0x00007fffbe4eb448 in ??? () at /usr/lib/libclang.so.20.1
#2  0x00007fffbde8c64a in ??? () at /usr/lib/libclang.so.20.1
#3  0x00007fffbdf2e610 in clang_getFileLocation () at /usr/lib/libclang.so.20.1
#4  0x00007fffccf88d6f in (anonymous namespace)::visitCursor (cursor=..., parent=..., data=0x7fffa65fa820) at kdevelop/plugins/clang/duchain/builder.cpp:1658
#5  0x00007fffbdea86e6 in ??? () at /usr/lib/libclang.so.20.1
#6  0x00007fffbdeda23d in ??? () at /usr/lib/libclang.so.20.1
#7  0x00007fffbdea4c08 in ??? () at /usr/lib/libclang.so.20.1
#8  0x00007fffbdeaafc9 in clang_visitChildren () at /usr/lib/libclang.so.20.1
#9  0x00007fffccf86639 in (anonymous namespace)::Visitor::Visitor (this=0x7fffa65fa820, tu=<optimized out>, file=<optimized out>, includes=<optimized out>, update=<optimized out>) at kdevelop/plugins/clang/duchain/builder.cpp:1595
#10 Builder::visit (tu=<optimized out>, file=<optimized out>, includes=<optimized out>, update=<optimized out>) at kdevelop/plugins/clang/duchain/builder.cpp:1744
#11 0x00007fffccf9f1c9 in ClangHelpers::buildDUChain (file=<optimized out>, imports=<optimized out>, session=..., features=..., includedFiles=..., unsavedRevisions=..., parseDocument=..., index=0x555558690560, abortFunction=...) at kdevelop/plugins/clang/duchain/clanghelpers.cpp:209
#12 0x00007fffccf9eb0a in ClangHelpers::buildDUChain (file=<optimized out>, imports=..., session=..., features=..., includedFiles=..., unsavedRevisions=..., parseDocument=..., index=0x555558690560, abortFunction=...) at kdevelop/plugins/clang/duchain/clanghelpers.cpp:121
#13 0x00007fffccf9eb0a in ClangHelpers::buildDUChain (file=<optimized out>, imports=..., session=..., features=..., includedFiles=..., unsavedRevisions=..., parseDocument=..., index=0x555558690560, abortFunction=...) at kdevelop/plugins/clang/duchain/clanghelpers.cpp:121
#14 0x00007fffccf9eb0a in ClangHelpers::buildDUChain (file=<optimized out>, imports=..., session=..., features=..., includedFiles=..., unsavedRevisions=..., parseDocument=..., index=0x555558690560, abortFunction=...) at kdevelop/plugins/clang/duchain/clanghelpers.cpp:121
#15 0x00007fffccf9eb0a in ClangHelpers::buildDUChain (file=<optimized out>, imports=..., session=..., features=..., includedFiles=..., unsavedRevisions=..., parseDocument=..., index=0x555558690560, abortFunction=...) at kdevelop/plugins/clang/duchain/clanghelpers.cpp:121
#16 0x00007fffccf9eb0a in ClangHelpers::buildDUChain (file=<optimized out>, imports=..., session=..., features=..., includedFiles=..., unsavedRevisions=..., parseDocument=..., index=0x555558690560, abortFunction=...) at kdevelop/plugins/clang/duchain/clanghelpers.cpp:121
#17 0x00007fffccf9eb0a in ClangHelpers::buildDUChain (file=<optimized out>, imports=..., session=..., features=..., includedFiles=..., unsavedRevisions=..., parseDocument=..., index=0x555558690560, abortFunction=...) at kdevelop/plugins/clang/duchain/clanghelpers.cpp:121
#18 0x00007fffccf9eb0a in ClangHelpers::buildDUChain (file=<optimized out>, imports=..., session=..., features=..., features@entry=..., includedFiles=..., unsavedRevisions=..., parseDocument=..., index=0x555558690560, abortFunction=...) at kdevelop/plugins/clang/duchain/clanghelpers.cpp:121
#19 0x00007fffcd043dcf in ClangParseJob::run (this=0x555566805450) at kdevelop/plugins/clang/clangparsejob.cpp:323
#20 0x00007ffff1848822 in ThreadWeaver::IdDecorator::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) () at /usr/lib/libKF6ThreadWeaver.so.6
#21 0x00007ffff1848611 in ThreadWeaver::Executor::run(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /usr/lib/libKF6ThreadWeaver.so.6
#22 0x00007ffff184953e in ThreadWeaver::Job::execute(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /usr/lib/libKF6ThreadWeaver.so.6
#23 0x00007ffff1851e2e in ThreadWeaver::Thread::run() () at /usr/lib/libKF6ThreadWeaver.so.6
#24 0x00007ffff6320e92 in ??? () at /usr/lib/libQt6Core.so.6
#25 0x00007ffff58969cb in ??? () at /usr/lib/libc.so.6
#26 0x00007ffff591aa0c in ??? () at /usr/lib/libc.so.6

Thread 15 (Thread 0x7fffa6dfe6c0 (LWP 21140) "Queue(0x5555561"):
#0  0x00007ffff591876d in syscall () at /usr/lib/libc.so.6
#1  0x00007ffff6322846 in QBasicMutex::lockInternal() () at /usr/lib/libQt6Core.so.6
#2  0x00007ffff6322a9d in QRecursiveMutex::tryLock(QDeadlineTimer) () at /usr/lib/libQt6Core.so.6
#3  0x00007ffff3ca1d0d in QRecursiveMutex::lock (this=<optimized out>) at /usr/include/qt6/QtCore/qmutex.h:189
#4  0x00007fffccf9ec90 in ClangHelpers::buildDUChain (file=<optimized out>, imports=<optimized out>, session=..., features=..., includedFiles=..., unsavedRevisions=..., parseDocument=..., index=0x555558690560, abortFunction=...) at kdevelop/plugins/clang/duchain/clanghelpers.cpp:135
#5  0x00007fffccf9eb0a in ClangHelpers::buildDUChain (file=<optimized out>, imports=..., session=..., features=..., includedFiles=..., unsavedRevisions=..., parseDocument=..., index=0x555558690560, abortFunction=...) at kdevelop/plugins/clang/duchain/clanghelpers.cpp:121
#6  0x00007fffccf9eb0a in ClangHelpers::buildDUChain (file=<optimized out>, imports=..., session=..., features=..., features@entry=..., includedFiles=..., unsavedRevisions=..., parseDocument=..., index=0x555558690560, abortFunction=...) at kdevelop/plugins/clang/duchain/clanghelpers.cpp:121
#7  0x00007fffcd043dcf in ClangParseJob::run (this=0x5555667cf1c0) at kdevelop/plugins/clang/clangparsejob.cpp:323
#8  0x00007ffff1848822 in ThreadWeaver::IdDecorator::run(QSharedPointer<ThreadWeaver::JobInterface>, ThreadWeaver::Thread*) () at /usr/lib/libKF6ThreadWeaver.so.6
#9  0x00007ffff1848611 in ThreadWeaver::Executor::run(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /usr/lib/libKF6ThreadWeaver.so.6
#10 0x00007ffff184953e in ThreadWeaver::Job::execute(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () at /usr/lib/libKF6ThreadWeaver.so.6
#11 0x00007ffff1851e2e in ThreadWeaver::Thread::run() () at /usr/lib/libKF6ThreadWeaver.so.6
#12 0x00007ffff6320e92 in ??? () at /usr/lib/libQt6Core.so.6
#13 0x00007ffff58969cb in ??? () at /usr/lib/libc.so.6
#14 0x00007ffff591aa0c in ??? () at /usr/lib/libc.so.6

Thread 14 (Thread 0x7fffa7fff6c0 (LWP 21072) "Thread (pooled)"):
#0  0x00007ffff589f042 in ??? () at /usr/lib/libc.so.6
#1  0x00007ffff58931ac in ??? () at /usr/lib/libc.so.6
#2  0x00007ffff589381c in ??? () at /usr/lib/libc.so.6
#3  0x00007ffff58960e8 in pthread_cond_timedwait () at /usr/lib/libc.so.6
#4  0x00007ffff63307b5 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () at /usr/lib/libQt6Core.so.6
#5  0x00007ffff632a540 in ??? () at /usr/lib/libQt6Core.so.6
#6  0x00007ffff6320e92 in ??? () at /usr/lib/libQt6Core.so.6
#7  0x00007ffff58969cb in ??? () at /usr/lib/libc.so.6
#8  0x00007ffff591aa0c in ??? () at /usr/lib/libc.so.6

Thread 13 (Thread 0x7fffac9576c0 (LWP 21071) "Thread (pooled)"):
#0  0x00007ffff589f042 in ??? () at /usr/lib/libc.so.6
#1  0x00007ffff58931ac in ??? () at /usr/lib/libc.so.6
#2  0x00007ffff589381c in ??? () at /usr/lib/libc.so.6
#3  0x00007ffff58960e8 in pthread_cond_timedwait () at /usr/lib/libc.so.6
#4  0x00007ffff63307b5 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () at /usr/lib/libQt6Core.so.6
#5  0x00007ffff632a540 in ??? () at /usr/lib/libQt6Core.so.6
#6  0x00007ffff6320e92 in ??? () at /usr/lib/libQt6Core.so.6
#7  0x00007ffff58969cb in ??? () at /usr/lib/libc.so.6
#8  0x00007ffff591aa0c in ??? () at /usr/lib/libc.so.6

Thread 12 (Thread 0x7fffad1586c0 (LWP 21070) "Thread (pooled)"):
#0  0x00007ffff589f042 in ??? () at /usr/lib/libc.so.6
#1  0x00007ffff58931ac in ??? () at /usr/lib/libc.so.6
#2  0x00007ffff589381c in ??? () at /usr/lib/libc.so.6
#3  0x00007ffff58960e8 in pthread_cond_timedwait () at /usr/lib/libc.so.6
#4  0x00007ffff63307b5 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () at /usr/lib/libQt6Core.so.6
#5  0x00007ffff632a540 in ??? () at /usr/lib/libQt6Core.so.6
#6  0x00007ffff6320e92 in ??? () at /usr/lib/libQt6Core.so.6
#7  0x00007ffff58969cb in ??? () at /usr/lib/libc.so.6
#8  0x00007ffff591aa0c in ??? () at /usr/lib/libc.so.6

Thread 11 (Thread 0x7fffad9596c0 (LWP 21069) "Thread (pooled)"):
#0  0x00007ffff589f042 in ??? () at /usr/lib/libc.so.6
#1  0x00007ffff58931ac in ??? () at /usr/lib/libc.so.6
#2  0x00007ffff589381c in ??? () at /usr/lib/libc.so.6
#3  0x00007ffff58960e8 in pthread_cond_timedwait () at /usr/lib/libc.so.6
#4  0x00007ffff63307b5 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () at /usr/lib/libQt6Core.so.6
#5  0x00007ffff632a540 in ??? () at /usr/lib/libQt6Core.so.6
#6  0x00007ffff6320e92 in ??? () at /usr/lib/libQt6Core.so.6
#7  0x00007ffff58969cb in ??? () at /usr/lib/libc.so.6
#8  0x00007ffff591aa0c in ??? () at /usr/lib/libc.so.6

Thread 10 (Thread 0x7fffae15a6c0 (LWP 21068) "Thread (pooled)"):
#0  0x00007ffff589f042 in ??? () at /usr/lib/libc.so.6
#1  0x00007ffff58931ac in ??? () at /usr/lib/libc.so.6
#2  0x00007ffff589381c in ??? () at /usr/lib/libc.so.6
#3  0x00007ffff58960e8 in pthread_cond_timedwait () at /usr/lib/libc.so.6
#4  0x00007ffff63307b5 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () at /usr/lib/libQt6Core.so.6
#5  0x00007ffff632a540 in ??? () at /usr/lib/libQt6Core.so.6
#6  0x00007ffff6320e92 in ??? () at /usr/lib/libQt6Core.so.6
#7  0x00007ffff58969cb in ??? () at /usr/lib/libc.so.6
#8  0x00007ffff591aa0c in ??? () at /usr/lib/libc.so.6

Thread 9 (Thread 0x7fffae95b6c0 (LWP 21067) "Thread (pooled)"):
#0  0x00007ffff589f042 in ??? () at /usr/lib/libc.so.6
#1  0x00007ffff58931ac in ??? () at /usr/lib/libc.so.6
#2  0x00007ffff589381c in ??? () at /usr/lib/libc.so.6
#3  0x00007ffff58960e8 in pthread_cond_timedwait () at /usr/lib/libc.so.6
#4  0x00007ffff63307b5 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () at /usr/lib/libQt6Core.so.6
#5  0x00007ffff632a540 in ??? () at /usr/lib/libQt6Core.so.6
#6  0x00007ffff6320e92 in ??? () at /usr/lib/libQt6Core.so.6
#7  0x00007ffff58969cb in ??? () at /usr/lib/libc.so.6
#8  0x00007ffff591aa0c in ??? () at /usr/lib/libc.so.6

Thread 8 (Thread 0x7fffaf7fe6c0 (LWP 21066) "KIO::WorkerThre"):
#0  0x00007ffff589f042 in ??? () at /usr/lib/libc.so.6
#1  0x00007ffff58931ac in ??? () at /usr/lib/libc.so.6
#2  0x00007ffff58931f4 in ??? () at /usr/lib/libc.so.6
#3  0x00007ffff590da36 in ppoll () at /usr/lib/libc.so.6
#4  0x00007ffff63177d3 in qt_safe_poll(pollfd*, unsigned long, QDeadlineTimer) () at /usr/lib/libQt6Core.so.6
#5  0x00007fffe4c831c3 in ??? () at /usr/lib/libQt6Network.so.6
#6  0x00007fffe4bfe3e0 in ??? () at /usr/lib/libQt6Network.so.6
#7  0x00007fffe4bf520f in QAbstractSocket::waitForReadyRead(int) () at /usr/lib/libQt6Network.so.6
#8  0x00007ffff36c2f78 in ??? () at /usr/lib/libKF6KIOCore.so.6
#9  0x00007ffff3706f29 in ??? () at /usr/lib/libKF6KIOCore.so.6
#10 0x00007ffff37a12c7 in ??? () at /usr/lib/libKF6KIOCore.so.6
#11 0x00007ffff6320e92 in ??? () at /usr/lib/libQt6Core.so.6
#12 0x00007ffff58969cb in ??? () at /usr/lib/libc.so.6
#13 0x00007ffff591aa0c in ??? () at /usr/lib/libc.so.6

Thread 7 (Thread 0x7fffa75ff6c0 (LWP 21062) "Thread (pooled)"):
#0  0x00007ffff589f042 in ??? () at /usr/lib/libc.so.6
#1  0x00007ffff58931ac in ??? () at /usr/lib/libc.so.6
#2  0x00007ffff589381c in ??? () at /usr/lib/libc.so.6
#3  0x00007ffff58960e8 in pthread_cond_timedwait () at /usr/lib/libc.so.6
#4  0x00007ffff63307b5 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () at /usr/lib/libQt6Core.so.6
#5  0x00007ffff632a540 in ??? () at /usr/lib/libQt6Core.so.6
#6  0x00007ffff6320e92 in ??? () at /usr/lib/libQt6Core.so.6
#7  0x00007ffff58969cb in ??? () at /usr/lib/libc.so.6
#8  0x00007ffff591aa0c in ??? () at /usr/lib/libc.so.6

Thread 6 (Thread 0x7fffaffff6c0 (LWP 21061) "Thread (pooled)"):
#0  0x00007ffff589f042 in ??? () at /usr/lib/libc.so.6
#1  0x00007ffff58931ac in ??? () at /usr/lib/libc.so.6
#2  0x00007ffff589381c in ??? () at /usr/lib/libc.so.6
#3  0x00007ffff58960e8 in pthread_cond_timedwait () at /usr/lib/libc.so.6
#4  0x00007ffff63307b5 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () at /usr/lib/libQt6Core.so.6
#5  0x00007ffff632a540 in ??? () at /usr/lib/libQt6Core.so.6
#6  0x00007ffff6320e92 in ??? () at /usr/lib/libQt6Core.so.6
#7  0x00007ffff58969cb in ??? () at /usr/lib/libc.so.6
#8  0x00007ffff591aa0c in ??? () at /usr/lib/libc.so.6

Thread 5 (Thread 0x7fffcce6d6c0 (LWP 21060) "KDevelop::Compl"):
#0  0x00007ffff589f042 in ??? () at /usr/lib/libc.so.6
#1  0x00007ffff58931ac in ??? () at /usr/lib/libc.so.6
#2  0x00007ffff58931f4 in ??? () at /usr/lib/libc.so.6
#3  0x00007ffff590da36 in ppoll () at /usr/lib/libc.so.6
#4  0x00007ffff2109e04 in ??? () at /usr/lib/libglib-2.0.so.0
#5  0x00007ffff2109ee5 in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0
#6  0x00007ffff643ffe2 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt6Core.so.6
#7  0x00007ffff6174ca6 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt6Core.so.6
#8  0x00007ffff6288f06 in QThread::exec() () at /usr/lib/libQt6Core.so.6
#9  0x00007ffff6320e92 in ??? () at /usr/lib/libQt6Core.so.6
#10 0x00007ffff58969cb in ??? () at /usr/lib/libc.so.6
#11 0x00007ffff591aa0c in ??? () at /usr/lib/libc.so.6

Thread 4 (Thread 0x7fffce6026c0 (LWP 21043) "QThread"):
#0  0x00007ffff589f042 in ??? () at /usr/lib/libc.so.6
#1  0x00007ffff58931ac in ??? () at /usr/lib/libc.so.6
#2  0x00007ffff58931f4 in ??? () at /usr/lib/libc.so.6
#3  0x00007ffff590da36 in ppoll () at /usr/lib/libc.so.6
#4  0x00007ffff2109e04 in ??? () at /usr/lib/libglib-2.0.so.0
#5  0x00007ffff2109ee5 in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0
#6  0x00007ffff6440002 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt6Core.so.6
#7  0x00007ffff6174ca6 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt6Core.so.6
#8  0x00007ffff6288f06 in QThread::exec() () at /usr/lib/libQt6Core.so.6
#9  0x00007ffff3cb1580 in KDevelop::DUChainPrivate::CleanupThread::run (this=0x555557655bb0) at kdevelop/kdevplatform/language/duchain/duchain.cpp:358
#10 0x00007ffff6320e92 in ??? () at /usr/lib/libQt6Core.so.6
#11 0x00007ffff58969cb in ??? () at /usr/lib/libc.so.6
#12 0x00007ffff591aa0c in ??? () at /usr/lib/libc.so.6

Thread 3 (Thread 0x7fffcfd476c0 (LWP 21042) "QXcbEventQueue"):
#0  0x00007ffff589f042 in ??? () at /usr/lib/libc.so.6
#1  0x00007ffff58931ac in ??? () at /usr/lib/libc.so.6
#2  0x00007ffff58931f4 in ??? () at /usr/lib/libc.so.6
#3  0x00007ffff590d4ee in poll () at /usr/lib/libc.so.6
#4  0x00007fffe5b6f20b in ??? () at /usr/lib/libxcb.so.1
#5  0x00007fffe5b70f3d in xcb_wait_for_event () at /usr/lib/libxcb.so.1
#6  0x00007fffd09644a9 in ??? () at /usr/lib/qt6/plugins/platforms/../../../libQt6XcbQpa.so.6
#7  0x00007ffff6320e92 in ??? () at /usr/lib/libQt6Core.so.6
#8  0x00007ffff58969cb in ??? () at /usr/lib/libc.so.6
#9  0x00007ffff591aa0c in ??? () at /usr/lib/libc.so.6

Thread 2 (Thread 0x7fffd05486c0 (LWP 21041) "QDBusConnection"):
#0  0x00007ffff589f042 in ??? () at /usr/lib/libc.so.6
#1  0x00007ffff58931ac in ??? () at /usr/lib/libc.so.6
#2  0x00007ffff58931f4 in ??? () at /usr/lib/libc.so.6
#3  0x00007ffff590da36 in ppoll () at /usr/lib/libc.so.6
#4  0x00007ffff2109e04 in ??? () at /usr/lib/libglib-2.0.so.0
#5  0x00007ffff2109ee5 in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0
#6  0x00007ffff643ffe2 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt6Core.so.6
#7  0x00007ffff6174ca6 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt6Core.so.6
#8  0x00007ffff6288f06 in QThread::exec() () at /usr/lib/libQt6Core.so.6
#9  0x00007ffff7994c2e in ??? () at /usr/lib/libQt6DBus.so.6
#10 0x00007ffff6320e92 in ??? () at /usr/lib/libQt6Core.so.6
#11 0x00007ffff58969cb in ??? () at /usr/lib/libc.so.6
#12 0x00007ffff591aa0c in ??? () at /usr/lib/libc.so.6

Thread 1 (Thread 0x7fffd0a7d680 (LWP 21028) "kdevelop"):
#0  0x00007ffff591876d in syscall () at /usr/lib/libc.so.6
#1  0x00007ffff632ba67 in ??? () at /usr/lib/libQt6Core.so.6
#2  0x00007ffff6f66aa5 in ??? () at /usr/lib/libQt6Gui.so.6
#3  0x00007ffff6aba575 in ??? () at /usr/lib/libQt6Gui.so.6
#4  0x00007ffff6ac5972 in ??? () at /usr/lib/libQt6Gui.so.6
#5  0x00007ffff6ac7b08 in ??? () at /usr/lib/libQt6Gui.so.6
#6  0x00007ffff6b09449 in QRasterPaintEngine::drawLines(QLine const*, int) () at /usr/lib/libQt6Gui.so.6
#7  0x00007ffff32ef8e1 in KMessageWidget::paintEvent(QPaintEvent*) () at /usr/lib/libKF6WidgetsAddons.so.6
#8  0x00007ffff735c5d3 in QWidget::event(QEvent*) () at /usr/lib/libQt6Widgets.so.6
#9  0x00007ffff73c8ff6 in QFrame::event(QEvent*) () at /usr/lib/libQt6Widgets.so.6
#10 0x00007ffff7301dd0 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/libQt6Widgets.so.6
#11 0x00007ffff6168678 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/libQt6Core.so.6
#12 0x00007ffff734d45e in QWidgetPrivate::sendPaintEvent(QRegion const&) () at /usr/lib/libQt6Widgets.so.6
#13 0x00007ffff734f7c7 in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /usr/lib/libQt6Widgets.so.6
#14 0x00007ffff73524c8 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /usr/lib/libQt6Widgets.so.6
#15 0x00007ffff734fd29 in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /usr/lib/libQt6Widgets.so.6
#16 0x00007ffff73524c8 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /usr/lib/libQt6Widgets.so.6
#17 0x00007ffff734fd29 in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /usr/lib/libQt6Widgets.so.6
#18 0x00007ffff73524c8 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /usr/lib/libQt6Widgets.so.6
#19 0x00007ffff734fd29 in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /usr/lib/libQt6Widgets.so.6
#20 0x00007ffff73524c8 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /usr/lib/libQt6Widgets.so.6
#21 0x00007ffff734fd29 in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /usr/lib/libQt6Widgets.so.6
#22 0x00007ffff73524c8 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /usr/lib/libQt6Widgets.so.6
#23 0x00007ffff734fd29 in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /usr/lib/libQt6Widgets.so.6
#24 0x00007ffff73524c8 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /usr/lib/libQt6Widgets.so.6
#25 0x00007ffff7352302 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /usr/lib/libQt6Widgets.so.6
#26 0x00007ffff734fd29 in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /usr/lib/libQt6Widgets.so.6
#27 0x00007ffff73524c8 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /usr/lib/libQt6Widgets.so.6
#28 0x00007ffff734fd29 in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /usr/lib/libQt6Widgets.so.6
#29 0x00007ffff73524c8 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /usr/lib/libQt6Widgets.so.6
#30 0x00007ffff734fd29 in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /usr/lib/libQt6Widgets.so.6
#31 0x00007ffff737222e in QWidgetRepaintManager::paintAndFlush() () at /usr/lib/libQt6Widgets.so.6
#32 0x00007ffff735bfd6 in QWidget::event(QEvent*) () at /usr/lib/libQt6Widgets.so.6
#33 0x00007ffff5bd347f in KXmlGuiWindow::event(QEvent*) () at /usr/lib/libKF6XmlGui.so.6
#34 0x00007ffff7301dd0 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/libQt6Widgets.so.6
#35 0x00007ffff6168678 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/libQt6Core.so.6
#36 0x00007ffff6168a5b in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () at /usr/lib/libQt6Core.so.6
#37 0x00007ffff64437f8 in ??? () at /usr/lib/libQt6Core.so.6
#38 0x00007ffff2108880 in ??? () at /usr/lib/libglib-2.0.so.0
#39 0x00007ffff2109cd7 in ??? () at /usr/lib/libglib-2.0.so.0
#40 0x00007ffff2109ee5 in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0
#41 0x00007ffff643ffe2 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt6Core.so.6
#42 0x00007ffff6174ca6 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt6Core.so.6
#43 0x00007ffff616cd21 in QCoreApplication::exec() () at /usr/lib/libQt6Core.so.6
#44 0x0000555555561812 in main (argc=<optimized out>, argv=<optimized out>) at kdevelop/app/main.cpp:836
Comment 1 git.ceeac 2025-12-19 12:10:02 UTC
Created attachment 187795 [details]
gdb.txt with output of thread apply all bt

I've encountered this bug too (Arch Linux, kdevelop 6.4.251200 (25.12.0), clang 21.1.6).
KDevelop crashed when I added a new file with existing code (that does not compile) to my CMake project via target_add_sources, and now KDevelop crashes every time on startup. 

Thread 31 "Queue(0x555555b" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fff697fa6c0 (LWP 12356)]
0x00007fff99e994c2 in llvm::IntrusiveRefCntPtr<clang::SourceManager>::operator* () at /usr/include/llvm/ADT/IntrusiveRefCntPtr.h:203
203   T &operator*() const { return *Obj; }
Comment 2 git.ceeac 2025-12-19 13:03:52 UTC
After removing ~/.local/share/kdevelop/sessions/ and re-opening the project file, no crash occors on startup.
However, KDevelop now crashes in the same location (llvm::IntrusiveRefCntPtr<clang::SourceManager>::operator*) when parsing /usr/include/spa-0.2/spa/utils/string.h, This header belongs to the libpipewire package, which is at version 1.4.9-2,
and the header is included from my code via #include <pipewire/extensions/metadata.h>
It does not matter if the cache is cleared or not.
Comment 3 Igor Kushnir 2025-12-19 15:22:39 UTC
A possible fault of KDevelop is that `unit` is invalid. Can you call clang_getFileContents() with the same unit but another file just before the crash occurs in GDB?

More likely this is a Clang bug. Reporting it would require reproducing without KDevelop. kdevelop/plugins/clang/tests/minimal_visitor.cpp can help. Or perhaps Clang's c-index-test as the message of https://commits.kde.org/kdevelop/f2ba281ef110edab6c071e229e14ae24baa08352 suggests.
Comment 4 Igor Kushnir 2025-12-19 15:28:46 UTC
Also reducing code that triggers the crash would be useful. Can you pass non-null `line` and `column` pointers to clang_getFileLocation() in ClangUtils::getRawContents() and print them? Then based on the output just before the crash we might be able to create a small example that triggers the bug.
Comment 5 Igor Kushnir 2025-12-19 15:33:00 UTC
(In reply to Igor Kushnir from comment #4)
> Can you pass
> non-null `line` and `column` pointers to clang_getFileLocation() in
> ClangUtils::getRawContents() and print them?
For example:
    CXFile rangeFile;
    unsigned int start, end;
    CXFile rangeFileEnd;
    unsigned int line, column;
    clang_getFileLocation(rangeStart, &rangeFile, &line, &column, &start);
    clang_getFileLocation(rangeEnd, &rangeFileEnd, &line, &column, &end);
And print out all variables declared in this code snippet. I expect the pointers rangeFile and rangeFileEnd to be equal.