Bug 274827 - Compile error when build against Qt 4.8
Summary: Compile error when build against Qt 4.8
Status: RESOLVED FIXED
Alias: None
Product: kopete
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: openSUSE Linux
: NOR normal
Target Milestone: ---
Assignee: Kopete Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-06-03 11:49 UTC by Raymond Wooninck
Modified: 2011-10-24 12:14 UTC (History)
5 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
Patch that fixes the build failure (1.24 KB, patch)
2011-08-02 16:17 UTC, Radek Novacek
Details

Note You need to log in before you can comment on or make changes to this bug.
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.