[Ktechlab-devel] [SVN/r410] Adding logic components calls pure virtual method

Link link at penguindevelopment.org
Mon Jun 29 07:44:30 UTC 2009


On 29/06/09 09:27, Alan Grimes wrote:
> Link wrote:
>> I'm not sure whether I should report bugs in the SVN version here or
>> using Bugzilla, but seeing as at least I know for a fact this place is
>> actively monitored, I'll put it here. :)
>>
>> Anyway, using the latest SVN revision, 410 at the time of writing,
>> adding logic components like AND-gates or OR-gates causes KTL to abort
>> with SIGABRT because a pure virtual method is called (at least, that's
>> printed to the stderr). gdb says the top-level error occurs at
>> main.cpp:61, if that's any help.
>
> usually, we only care about the bottom level error. ;)
>
> argh, I can't even build mine right now so maybe someone else can
> comment on this. I did do some extensive upgrades to the logic output
> terminal code. Maybe someone else can figure this out, I think my build
> is trying to use a random mixture of KDE3 and KDE4 header files due to a
> recent software update on my machine. =(
>

The bottom-level error reported by gdb is in raise.c, so I doubt that's 
very useful. Here's the list of errors I got:
#0  0x00007fd63ff92205 in *__GI_raise (sig=<value optimized out>) at 
../nptl/sysdeps/unix/sysv/linux/raise.c:64
#1  0x00007fd63ff93723 in *__GI_abort () at abort.c:88
#2  0x00007fd640818bac in __gnu_cxx::__verbose_terminate_handler () at 
/var/tmp/portage/sys-devel/gcc-4.3.3-r2/work/gcc-4.3.3/libstdc++-v3/libsupc++/vterminate.cc:98
#3  0x00007fd640816e66 in __cxxabiv1::__terminate (handler=0x3b3) at 
/var/tmp/portage/sys-devel/gcc-4.3.3-r2/work/gcc-4.3.3/libstdc++-v3/libsupc++/eh_terminate.cc:43
#4  0x00007fd640816e93 in std::terminate () at 
/var/tmp/portage/sys-devel/gcc-4.3.3-r2/work/gcc-4.3.3/libstdc++-v3/libsupc++/eh_terminate.cc:53
#5  0x00007fd64081781f in __cxa_pure_virtual () at 
/var/tmp/portage/sys-devel/gcc-4.3.3-r2/work/gcc-4.3.3/libstdc++-v3/libsupc++/pure.cc:55
#6  0x0000000000671adb in MultiInputGate::updateSymbolText 
(this=0x100bab0) at multiinputgate.cpp:92
#7  0x00000000006722f2 in MultiInputGate::updateLogicSymbolShape 
(this=0x100bab0) at multiinputgate.cpp:78
#8  0x0000000000673978 in MultiInputGate (this=0x100bab0, 
icnDocument=0xc0cbc0, newItem=true, id=0x7c0d59 "and", 
rectangularShapeText=@0x7fff55358440, baseWidth=32, likeOR=false) at 
multiinputgate.cpp:36
#9  0x0000000000673f05 in ECAnd (this=0x100bab0, icnDocument=0xc0cbc0, 
newItem=true, id=0x0) at multiinputgate.cpp:518
#10 0x000000000067405c in ECAnd::construct (itemDocument=0xc0cbc0, 
newItem=true, id=0x0) at multiinputgate.cpp:502
#11 0x00000000004fc6fc in ItemLibrary::createItem (this=0xc12fe0, 
id=@0x7fff55358690, itemDocument=0xc0cbc0, newItem=true, newId=0x0, 
finishCreation=true) at itemlibrary.cpp:372
#12 0x0000000000501e07 in ItemView::createDragItem (this=0xdef2c0, 
e=0x7fff55358b50) at itemview.cpp:424
#13 0x000000000047ce47 in CircuitView::dragEnterEvent (this=0xdef2c0, 
e=0x7fff55358b50) at circuitview.cpp:94
#14 0x0000000000503044 in CVBEditor::event (this=0xdcee70, 
e=0x7fff55358b50) at itemview.cpp:681
#15 0x00007fd6449b5335 in QApplication::internalNotify (this=<value 
optimized out>, receiver=0xdcee70, e=0x7fff55358b50) at 
kernel/qapplication.cpp:2638
#16 0x00007fd6449b64ba in QApplication::notify (this=0x7fff5535a840, 
receiver=0xdcee70, e=0x7fff55358b50) at kernel/qapplication.cpp:2526
#17 0x00007fd645f073da in KApplication::notify (this=0x7fff5535a840, 
receiver=0xdcee70, event=0x7fff55358b50) at kapplication.cpp:550
#18 0x00000000005086a1 in QApplication::sendEvent (receiver=0xdcee70, 
event=0x7fff55358b50) at /usr/qt/3/include/qapplication.h:499
#19 0x00007fd6449612b5 in qt_handle_xdnd_position (w=<value optimized 
out>, xe=<value optimized out>, passive=false) at kernel/qdnd_x11.cpp:663
#20 0x00007fd644961ac1 in QDragManager::move (this=0xe137a0, 
globalPos=@0x7fff553593a8) at kernel/qdnd_x11.cpp:1405
#21 0x00007fd6449626be in QDragManager::eventFilter (this=0xe137a0, 
o=0xf103c0, e=0x7fff55359390) at kernel/qdnd_x11.cpp:986
#22 0x00007fd6449b52ac in QApplication::internalNotify (this=<value 
optimized out>, receiver=0xf103c0, e=0x7fff55359390) at 
kernel/qapplication.cpp:2571
#23 0x00007fd6449b66da in QApplication::notify (this=0x7fff5535a840, 
receiver=0xf103c0, e=0x7fff55359390) at kernel/qapplication.cpp:2424
#24 0x00007fd645f073da in KApplication::notify (this=0x7fff5535a840, 
receiver=0xf103c0, event=0x7fff55359390) at kapplication.cpp:550
#25 0x00007fd64495306d in QETWidget::translateMouseEvent (this=0xf103c0, 
event=<value optimized out>) at kernel/qapplication_x11.cpp:4301
#26 0x00007fd644951efe in QApplication::x11ProcessEvent 
(this=0x7fff5535a840, event=0x7fff55359880) at 
kernel/qapplication_x11.cpp:3565
#27 0x00007fd6449649d2 in QEventLoop::processEvents (this=0xb2f930, 
flags=4) at kernel/qeventloop_x11.cpp:195
#28 0x00007fd6449cbe91 in QEventLoop::enterLoop (this=0xb2f930) at 
kernel/qeventloop.cpp:201
#29 0x00007fd6449623e6 in QDragManager::drag (this=0xe137a0, o=0xdc6cc0, 
mode=QDragObject::DragDefault) at kernel/qdnd_x11.cpp:1806
#30 0x00007fd64691407f in KListView::startDrag (this=0xbfb100) at 
klistview.cpp:1158
#31 0x00007fd64691467f in KListView::contentsMouseMoveEvent 
(this=0xbfb100, e=0x7fff55359c00) at klistview.cpp:842
#32 0x00007fd644b1d86e in QScrollView::viewportMouseMoveEvent 
(this=0xbfb100, e=0x7fff5535a130) at widgets/qscrollview.cpp:1787
#33 0x00007fd644b1c730 in QScrollView::eventFilter (this=0xbfb100, 
obj=0xc0d660, e=0x7fff5535a130) at widgets/qscrollview.cpp:1514
#34 0x00007fd644aec50e in QListView::eventFilter (this=0xbfb100, 
o=0xc0d660, e=0x7fff5535a130) at widgets/qlistview.cpp:3870
#35 0x00007fd644a13b2c in QObject::activate_filters (this=0xc0d660, 
e=0x7fff5535a130) at kernel/qobject.cpp:906
#36 0x00007fd644a13b87 in QObject::event (this=0xc0d660, 
e=0x7fff5535a130) at kernel/qobject.cpp:738
#37 0x00007fd644a48a35 in QWidget::event (this=0x3b3, e=0x3b3) at 
kernel/qwidget.cpp:4662
#38 0x00007fd6449b5335 in QApplication::internalNotify (this=<value 
optimized out>, receiver=0xc0d660, e=0x7fff5535a130) at 
kernel/qapplication.cpp:2638
#39 0x00007fd6449b66da in QApplication::notify (this=0x7fff5535a840, 
receiver=0xc0d660, e=0x7fff5535a130) at kernel/qapplication.cpp:2424
#40 0x00007fd645f073da in KApplication::notify (this=0x7fff5535a840, 
receiver=0xc0d660, event=0x7fff5535a130) at kapplication.cpp:550
#41 0x00007fd64495306d in QETWidget::translateMouseEvent (this=0xc0d660, 
event=<value optimized out>) at kernel/qapplication_x11.cpp:4301
#42 0x00007fd644951efe in QApplication::x11ProcessEvent 
(this=0x7fff5535a840, event=0x7fff5535a620) at 
kernel/qapplication_x11.cpp:3565
#43 0x00007fd6449649d2 in QEventLoop::processEvents (this=0xb2f930, 
flags=4) at kernel/qeventloop_x11.cpp:195
#44 0x00007fd6449cbe91 in QEventLoop::enterLoop (this=0xb2f930) at 
kernel/qeventloop.cpp:201
#45 0x00007fd6449cbd02 in QEventLoop::exec (this=0x3b3) at 
kernel/qeventloop.cpp:148
#46 0x0000000000579b9b in main (argc=1, argv=0x7fff5535abb8) at main.cpp:61

I hope that's slightly more useful, though I suppose if you can't 
compile KTL at your site, it won't help much.




More information about the Ktechlab-devel mailing list