https://bugs.kde.org/show_bug.cgi?id=370259

            Bug ID: 370259
           Summary: CPP Parser hangs on specific construct
           Product: kdevelop
           Version: 4.7.3
          Platform: Gentoo Packages
                OS: Linux
            Status: UNCONFIRMED
          Severity: crash
          Priority: NOR
         Component: Language Support: CPP (old)
          Assignee: kdevelop-bugs-n...@kde.org
          Reporter: daniel.san...@pobox.com

I am working on gcc at the moment, which is strange because it was converted
into C++ several years ago, but most of the sources files still have a .c
extension (possibly part of the problem?).

Currently, when I accidentally click on or move my text cursor to the start of
a the text `gcc_assert`, I get a nice hang. By getting distracted after this
one, I actually discovered that it will resolve after some 10-20 minutes. Here
is the backtrace:

(gdb) bt
#0  0x00007f2d282fdfa4 in QString::operator[] (i=236222, this=0x7fff224b7d10)
at /usr/include/qt4/QtCore/qstring.h:701
#1  KDevelop::findClose (str=..., pos=pos@entry=0) at
/usr/src/debug/dev-util/kdevplatform-1.7.3/kdevplatform-1.7.3/language/duchain/stringhelpers.cpp:66
#2  0x00007f2c7c34d934 in
CppLanguageSupport::specialLanguageObjectNavigationWidget (this=0x350ec80,
url=..., position=...)
    at
/usr/src/debug/dev-util/kdevelop-4.7.3/kdevelop-4.7.3/languages/cpp/cpplanguagesupport.cpp:840
#3  0x00007f2c7ca2ddbd in ContextBrowserPlugin::updateForView
(this=this@entry=0x3407560, view=0x509d660)
    at
/usr/src/debug/dev-util/kdevplatform-1.7.3/kdevplatform-1.7.3/plugins/contextbrowser/contextbrowser.cpp:688
#4  0x00007f2c7ca2e64c in ContextBrowserPlugin::updateViews (this=0x3407560) at
/usr/src/debug/dev-util/kdevplatform-1.7.3/kdevplatform-1.7.3/plugins/contextbrowser/contextbrowser.cpp:728
#5  0x00007f2c7ca2660d in ContextBrowserPlugin::qt_static_metacall
(_o=0x3407560, _id=<optimized out>, _a=<optimized out>, _c=<optimized out>)
    at
/usr/src/debug/dev-util/kdevplatform-1.7.3/kdevplatform-1.7.3_build/plugins/contextbrowser/moc_contextbrowser.cpp:121
#6  0x00007f2d29b4b463 in QMetaObject::activate (sender=0x34032a0, m=<optimized
out>, local_signal_index=<optimized out>, argv=0x0)
    at
/usr/src/debug/dev-qt/qtcore-4.8.7-r2/qt-everywhere-opensource-src-4.8.7/src/corelib/kernel/qobject.cpp:3567
#7  0x00007f2d29b4fb23 in QObject::event (this=0x34032a0, e=<optimized out>) at
/usr/src/debug/dev-qt/qtcore-4.8.7-r2/qt-everywhere-opensource-src-4.8.7/src/corelib/kernel/qobject.cpp:1253
#8  0x00007f2d2a06888c in QApplicationPrivate::notify_helper
(this=this@entry=0xbc8920, receiver=receiver@entry=0x34032a0,
e=e@entry=0x7fff224b84b0)
    at
/usr/src/debug/dev-qt/qtgui-4.8.7/qt-everywhere-opensource-src-4.8.7/src/gui/kernel/qapplication.cpp:4565
#9  0x00007f2d2a06f458 in QApplication::notify (this=this@entry=0x7fff224b8900,
receiver=receiver@entry=0x34032a0, e=e@entry=0x7fff224b84b0)
    at
/usr/src/debug/dev-qt/qtgui-4.8.7/qt-everywhere-opensource-src-4.8.7/src/gui/kernel/qapplication.cpp:4351
#10 0x00007f2d2b5581ba in KApplication::notify (this=0x7fff224b8900,
receiver=0x34032a0, event=0x7fff224b84b0) at
/usr/src/debug/kde-base/kdelibs-4.14.21/kdelibs-4.14.21/kdeui/kernel/kapplication.cpp:311
#11 0x00007f2d29b35f4c in QCoreApplication::notifyInternal
(this=0x7fff224b8900, receiver=0x34032a0, event=event@entry=0x7fff224b84b0)
    at
/usr/src/debug/dev-qt/qtcore-4.8.7-r2/qt-everywhere-opensource-src-4.8.7/src/corelib/kernel/qcoreapplication.cpp:955
#12 0x00007f2d29b68cbb in QCoreApplication::sendEvent (event=0x7fff224b84b0,
receiver=<optimized out>) at
../../../qt-everywhere-opensource-src-4.8.7/src/corelib/kernel/qcoreapplication.h:231
#13 QTimerInfoList::activateTimers (this=0xbc7e90) at
/usr/src/debug/dev-qt/qtcore-4.8.7-r2/qt-everywhere-opensource-src-4.8.7/src/corelib/kernel/qeventdispatcher_unix.cpp:621
#14 0x00007f2d29b65ac9 in timerSourceDispatch (source=<optimized out>) at
/usr/src/debug/dev-qt/qtcore-4.8.7-r2/qt-everywhere-opensource-src-4.8.7/src/corelib/kernel/qeventdispatcher_glib.cpp:193
#15 idleTimerSourceDispatch (source=<optimized out>) at
/usr/src/debug/dev-qt/qtcore-4.8.7-r2/qt-everywhere-opensource-src-4.8.7/src/corelib/kernel/qeventdispatcher_glib.cpp:240
#16 0x00007f2d23563c2a in g_main_dispatch (context=0xbc8250) at
/usr/src/debug/dev-libs/glib-2.48.1/glib-2.48.1/glib/gmain.c:3154
#17 g_main_context_dispatch (context=context@entry=0xbc8250) at
/usr/src/debug/dev-libs/glib-2.48.1/glib-2.48.1/glib/gmain.c:3769
#18 0x00007f2d23563fc5 in g_main_context_iterate
(context=context@entry=0xbc8250, block=block@entry=1,
dispatch=dispatch@entry=1, self=<optimized out>)
    at /usr/src/debug/dev-libs/glib-2.48.1/glib-2.48.1/glib/gmain.c:3840
#19 0x00007f2d2356408c in g_main_context_iteration (context=0xbc8250,
may_block=1) at
/usr/src/debug/dev-libs/glib-2.48.1/glib-2.48.1/glib/gmain.c:3901
#20 0x00007f2d29b664bc in QEventDispatcherGlib::processEvents (this=0xb11bd0,
flags=...)
    at
/usr/src/debug/dev-qt/qtcore-4.8.7-r2/qt-everywhere-opensource-src-4.8.7/src/corelib/kernel/qeventdispatcher_glib.cpp:450
#21 0x00007f2d2a112dd6 in QGuiEventDispatcherGlib::processEvents
(this=<optimized out>, flags=...)
    at
/usr/src/debug/dev-qt/qtgui-4.8.7/qt-everywhere-opensource-src-4.8.7/src/gui/kernel/qguieventdispatcher_glib.cpp:204
#22 0x00007f2d29b34981 in QEventLoop::processEvents
(this=this@entry=0x7fff224b8740, flags=...)
    at
/usr/src/debug/dev-qt/qtcore-4.8.7-r2/qt-everywhere-opensource-src-4.8.7/src/corelib/kernel/qeventloop.cpp:149
#23 0x00007f2d29b34d25 in QEventLoop::exec (this=this@entry=0x7fff224b8740,
flags=...) at
/usr/src/debug/dev-qt/qtcore-4.8.7-r2/qt-everywhere-opensource-src-4.8.7/src/corelib/kernel/qeventloop.cpp:204
#24 0x00007f2d29b3a519 in QCoreApplication::exec () at
/usr/src/debug/dev-qt/qtcore-4.8.7-r2/qt-everywhere-opensource-src-4.8.7/src/corelib/kernel/qcoreapplication.cpp:1227
#25 0x00007f2d2a066bdc in QApplication::exec () at
/usr/src/debug/dev-qt/qtgui-4.8.7/qt-everywhere-opensource-src-4.8.7/src/gui/kernel/qapplication.cpp:3823
#26 0x00000000004105fb in main (argc=<optimized out>, argv=<optimized out>) at
/usr/src/debug/dev-util/kdevelop-4.7.3/kdevelop-4.7.3/app/main.cpp:582

I have built this install with USE="cmake cxx qthelp -aqua -debug -gdbui
-okteta -test" and CFLAGS/CXXFLAGS="-march=native -g -O2"

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to