Version: kde 3.5 rc1 (using KDE KDE 3.5.0) Installed from: Gentoo Packages Compiler: 3.4.4 OS: Linux Hi, kopete versions bundled with kdenetwork-3.5_beta2 and kdenetwork-3.5_rc1 won't compile on ppc64 (beta1 might fail, too, but I didn't test that). I'll attach an output of the error shown while compiling kopete from kdenetwork-3.5_rc1 tarball. kopete built just fine with kde-3.4 versions on ppc64. Regards, Markus
Created attachment 13438 [details] compile error
Pasting the relevant error message: kircmessage.cpp: In static member function `static KIRC::Message KIRC::Message::parse(KIRC::Engine*, const QTextCodec*, bool*)': kircmessage.cpp:171: error: ISO C++ says that these are ambiguous, even though the worst conversion for the first is better than the worst conversion for the second: /usr/qt/3/include/qmemarray.h:100: note: candidate 1: type& QMemArray<type>::operator[](int) const [with type = char] kircmessage.cpp:171: note: candidate 2: operator[](const char*, long int) <built-in>
Created attachment 13450 [details] Possible patch for compiling problems Hi, could you test this patch? It should fix these errors.
I got the same error on amd64 and this patch fixed it. Thanks a lot for the quick fix!
SVN commit 480399 by rantala: BUG: 116339 Fix reported compilation problems with some 64-bit architectures. M +4 -4 kircmessage.cpp --- branches/KDE/3.5/kdenetwork/kopete/protocols/irc/libkirc/kircmessage.cpp #480398:480399 @@ -168,11 +168,11 @@ // // Some servers send '\n' instead of '\r\n' that the RFCs say they should be sending. - if (length > 1 && raw[length-2] == '\n') { - raw[length-2] = '\0'; + if (length > 1 && raw.at(length-2) == '\n') { + raw.at(length-2) = '\0'; } - if (length > 2 && raw[length-3] == '\r') { - raw[length-3] = '\0'; + if (length > 2 && raw.at(length-3) == '\r') { + raw.at(length-3) = '\0'; } kdDebug(14121) << "<< " << raw << endl;
*** Bug 116451 has been marked as a duplicate of this bug. ***
*** Bug 117124 has been marked as a duplicate of this bug. ***