summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/CMakeLists.txt2
-rw-r--r--src/Makefile.am2
-rw-r--r--src/client.cpp2
-rw-r--r--src/utils/dumpsizes.cpp40
-rw-r--r--src/utils/dumpsizes.h28
5 files changed, 74 insertions, 0 deletions
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 420c91cf3..ec9ccd1ff 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -882,6 +882,8 @@ SET(SRCS
utils/dtor.h
utils/dumplibs.cpp
utils/dumplibs.h
+ utils/dumpsizes.cpp
+ utils/dumpsizes.h
utils/env.cpp
utils/env.h
utils/foreach.h
diff --git a/src/Makefile.am b/src/Makefile.am
index be0a7c06f..3697146ee 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -589,6 +589,8 @@ BASE_SRC += events/actionevent.h \
utils/dtor.h \
utils/dumplibs.cpp \
utils/dumplibs.h \
+ utils/dumpsizes.cpp \
+ utils/dumpsizes.h \
utils/env.cpp \
utils/env.h \
utils/foreach.h \
diff --git a/src/client.cpp b/src/client.cpp
index d67b58dce..f2e565bdd 100644
--- a/src/client.cpp
+++ b/src/client.cpp
@@ -115,6 +115,7 @@
#include "utils/cpu.h"
#include "utils/delete2.h"
#include "utils/dumplibs.h"
+#include "utils/dumpsizes.h"
#include "utils/env.h"
#include "utils/fuzzer.h"
#include "utils/gettext.h"
@@ -350,6 +351,7 @@ void Client::gameInit()
updateEnv();
dumpLibs();
+ dumpSizes();
// Initialize SDL
logger->log1("Initializing SDL...");
diff --git a/src/utils/dumpsizes.cpp b/src/utils/dumpsizes.cpp
new file mode 100644
index 000000000..86f89b6cd
--- /dev/null
+++ b/src/utils/dumpsizes.cpp
@@ -0,0 +1,40 @@
+/*
+ * The ManaPlus Client
+ * Copyright (C) 2017 The ManaPlus Developers
+ *
+ * This file is part of The ManaPlus Client.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include "utils/dumpsizes.h"
+
+#include "logger.h"
+
+#include "utils/cast.h"
+
+#include "debug.h"
+
+#define dumpSize(str) \
+ logger->log(" sizeof("#str"): %d", CAST_S32(sizeof(str)));
+
+void dumpSizes()
+{
+ logger->log("Type sizes:");
+ dumpSize(char);
+ dumpSize(short);
+ dumpSize(int);
+ dumpSize(long);
+ dumpSize(size_t);
+}
diff --git a/src/utils/dumpsizes.h b/src/utils/dumpsizes.h
new file mode 100644
index 000000000..c7729ac14
--- /dev/null
+++ b/src/utils/dumpsizes.h
@@ -0,0 +1,28 @@
+/*
+ * The ManaPlus Client
+ * Copyright (C) 2017 The ManaPlus Developers
+ *
+ * This file is part of The ManaPlus Client.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#ifndef UTILS_DUMPSIZES_H
+#define UTILS_DUMPSIZES_H
+
+#include "localconsts.h"
+
+void dumpSizes();
+
+#endif // UTILS_DUMPSIZES_H