Re: Various compilers/OS/architectures calitko tests

Hi Petr,

Yes, that worked. However, I went into other problems - I think they were caused by disabling precompiled headers. I had to put #include “Qt.h” in many source files because there were errors saying that Qt classes weren’t declared. See ‘calitko-icc.diff’ for changes I’ve made to get it working. I think we should unify “Qt.h” including, because in some source files the “Qt.h” include is present an in some not.

The latest revno 129 should be no-precompiled-headers-friendly :-). Actually Qt.h should only be included in cpp files and should be the very first file to include. I made sure it is included in all our cpp files and also made sure that all generated cpp files do include Qt.h.

Btw you can take a look on the ‘linux-icc.txt’ compilation log - the Intel compiler produced different warnings/messages than g++, so we could use it to improve the calitko code.

The log indeed contains some interesting warnings!

Any idea how to solve:

Protocols/BitTorrent/Packets/Testing/../BitField.h(54): warning #1125: function "Protocols::Generics::PacketBase::writePayload() const" is hidden by "Protocols::BitTorrent::Packets::BitField::writePayload" -- virtual function override intended?
void writePayload (BinaryWriter &) const;

It appears numerous times and the cause is that Gnutella::Packets::PacketBase and BitTorrent::Packets::PacketBase implement writePayload() and define a new pure virtual function void writePayload (BinaryWriter &), which thir derived classes implement. Maybe to get rid of the warnings we should reimplement both and have one simply call its base class implementation (which is sub-optimal and practically unnecessary).

./Gnutella/LocalPeer.h(44): warning #780: using-declaration ignored -- it refers to the current namespace
using Gnutella::NodeInfo;

is also an interesting one. Should we not write Gnutella::? I’ve also been thinking about the #includes in Import.h/cpp. If we include from a sub-package, then which one should we use:

#include "SubPackage/Module.h" // relative path to this file
#include "Package/SubPackage/Module.h // relative path to project's root

There are also other warnings but these two issues seem to produce the bigger part of all warnings.

Regards,

Peter

Would you like to post a relpy?


This post is a reply to:
Re: Various compilers/OS/architectures calitko tests
Hi Peter, thanks for these hints! Finally, I've managed to compile calitko by using all compilers that I've available (excluding the one on Solaris, because I got Qt4 compilation problems there). (more...)

Follow-ups:
Re: Various compilers/OS/architectures calitko tests
Hi Peter, Any idea how to solve: [snip] It appears numerous times and the cause is that Gnutella::Packets::PacketBase and BitTorrent::Packets::PacketBase implement writePayload() and define a new pure virtual function void writePayload (BinaryWriter &), (more...)