Bug 274827

Summary: Compile error when build against Qt 4.8
Product: [Applications] kopete Reporter: Raymond Wooninck <tittiatcoke>
Component: generalAssignee: Kopete Developers <kopete-bugs-null>
Status: RESOLVED FIXED    
Severity: normal CC: annma, b.brachaczek, jreznik, rdieter, than
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: openSUSE   
OS: Linux   
Latest Commit: Version Fixed In:
Attachments: Patch that fixes the build failure

Description Raymond Wooninck 2011-06-03 11:49:45 UTC
Version:           unspecified (using Devel) 
OS:                Linux

When the latest svn snapshot is compiled against Qt 4.8, the following error occurs: 

In file included from /usr/src/packages/BUILD/kdenetwork-4.6.80_20110602/kopete/libkopete/kopetepassword.cpp:459:0:
/usr/src/packages/BUILD/kdenetwork-4.6.80_20110602/build/kopete/libkopete/kopetepassword.moc: In static member function 'static void KopetePasswordRequestBase::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)':
/usr/src/packages/BUILD/kdenetwork-4.6.80_20110602/build/kopete/libkopete/kopetepassword.moc:133:84: error: cannot convert from base 'QObject' to derived type 'KopetePasswordRequestBase' via virtual base 'QObject'
make[2]: *** [kopete/libkopete/CMakeFiles/kopete.dir/kopetepassword.o] Error 1

Reproducible: Always

Steps to Reproduce:
Compile against recent snapshot of Qt 4.8
Comment 1 Anne-Marie Mahfouf 2011-06-05 17:31:48 UTC
Qt problem, reported here
http://bugreports.qt.nokia.com/browse/QTBUG-19717

See http://lists.kde.org/?l=kde-devel&m=130719594030343&w=2
Comment 2 Jaroslav Reznik 2011-08-02 12:25:35 UTC
Any news here? As it seems like upstream is reluctant to fix it in Qt.
Comment 3 Radek Novacek 2011-08-02 16:17:45 UTC
Created attachment 62471 [details]
Patch that fixes the build failure

IMHO there is not need for the virtual inheritance. I think the issue can be fixed by proposed patch. Calling constructor of QObject from KopetePasswordRequest can be replaced by calling its parent constructor and call QObject constructor from there. I'm not 100% sure about that, correct me if I'm wrong.
Comment 4 Rex Dieter 2011-08-02 16:30:09 UTC
thiago (still) maintains this a kde bug, doing something unsupported by Qt, reopening.
Comment 5 Raymond Wooninck 2011-10-24 12:14:27 UTC
With the current status (KDE snapshot of 23 October and Qt48 snapshot of 20 Oct), kopete compiles fine. So I don't know who implemented the solution, but KDE can be normally compiled with Qt 4.8 at the moment.