diff options
author | Thorbjørn Lindeijer <thorbjorn@lindeijer.nl> | 2012-05-05 18:12:36 +0200 |
---|---|---|
committer | Thorbjørn Lindeijer <thorbjorn@lindeijer.nl> | 2012-05-05 22:26:32 +0200 |
commit | 86154175f63a7f1a4b73b3727314ac760d83834e (patch) | |
tree | 5507b93f5ef8f4cb01b46233050230f9d12f9ef5 | |
parent | c32c1746b43f3f7869bbbf3c86533bf5a5d57a29 (diff) | |
download | mana-86154175f63a7f1a4b73b3727314ac760d83834e.tar.gz mana-86154175f63a7f1a4b73b3727314ac760d83834e.tar.bz2 mana-86154175f63a7f1a4b73b3727314ac760d83834e.tar.xz mana-86154175f63a7f1a4b73b3727314ac760d83834e.zip |
Fixed compilation errors and warnings with GCC 4.7
Also, since GCC 4.7 there is a binary compatibility issue when linking with a
Guichan that was not compiled in C++11 mode. This commit also allows compiling
with GCC 4.7 with C++11 mode turned off.
Reviewed-by: Erik Schilling
-rw-r--r-- | src/cpp0x_compat/cstdint | 9 | ||||
-rw-r--r-- | src/gui/widgets/tabbedarea.h | 3 | ||||
-rw-r--r-- | src/gui/widgets/textfield.h | 1 | ||||
-rw-r--r-- | src/net/download.h | 1 | ||||
-rw-r--r-- | src/resources/itemdb.h | 2 |
5 files changed, 11 insertions, 5 deletions
diff --git a/src/cpp0x_compat/cstdint b/src/cpp0x_compat/cstdint index d8d71d9d..05d56c6e 100644 --- a/src/cpp0x_compat/cstdint +++ b/src/cpp0x_compat/cstdint @@ -1,7 +1,10 @@ /* * Compatibility header used when the compiler doesn't support C++0x. * - * It doesn't seem necessary for it to contain anything, at least GCC 4.2.1 - * compiles Mana fine so it apparently understands types like uint16_t by - * default. + * While GCC 4.2.1 understands types like uint16_t by default, later versions + * are more strict so here are some typedefs for types used in our code. */ + +typedef unsigned char uint8_t; +typedef unsigned short uint16_t; +typedef unsigned int uint32_t; diff --git a/src/gui/widgets/tabbedarea.h b/src/gui/widgets/tabbedarea.h index 45b092a4..b43078a4 100644 --- a/src/gui/widgets/tabbedarea.h +++ b/src/gui/widgets/tabbedarea.h @@ -98,7 +98,8 @@ class TabbedArea : public gcn::TabbedArea, public gcn::WidgetListener int getContainerHeight() const { return mWidgetContainer->getHeight(); } - using gcn::TabbedArea::setSelectedTab; + void setSelectedTab(unsigned int index) + { gcn::TabbedArea::setSelectedTab(index); } void setSelectedTab(gcn::Tab *tab); diff --git a/src/gui/widgets/textfield.h b/src/gui/widgets/textfield.h index 28654032..94cada41 100644 --- a/src/gui/widgets/textfield.h +++ b/src/gui/widgets/textfield.h @@ -63,6 +63,7 @@ struct TextHistory { class AutoCompleteLister { public: + virtual ~AutoCompleteLister() {} virtual void getAutoCompleteList(std::vector<std::string>&) const {} }; diff --git a/src/net/download.h b/src/net/download.h index c0bdf204..26810f3f 100644 --- a/src/net/download.h +++ b/src/net/download.h @@ -18,6 +18,7 @@ * along with this program. If not, see <http://www.gnu.org/licenses/>. */ +#include <cstdlib> // pulls in int64_t #include <cstdio> #include <string> diff --git a/src/resources/itemdb.h b/src/resources/itemdb.h index 15311083..d7859ad3 100644 --- a/src/resources/itemdb.h +++ b/src/resources/itemdb.h @@ -78,7 +78,7 @@ class ItemDB mLoaded(false) {} - ~ItemDB() + virtual ~ItemDB() {} /** |