summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--config.lib7
-rw-r--r--src/table/newgrf_debug_data.h2
2 files changed, 7 insertions, 2 deletions
diff --git a/config.lib b/config.lib
index ab9bb82b6..a144b9e3e 100644
--- a/config.lib
+++ b/config.lib
@@ -1285,7 +1285,7 @@ make_compiler_cflags() {
# -W alone doesn't enable all warnings enabled by -Wall; on the other hand,
# -Weverything enables too many useless warnings that can't be disabled (as of 3.0)
- flags="$flags -Wall -W"
+ flags="$flags -Wall -W -Wextra"
# warning: unused parameter '...'
flags="$flags -Wno-unused-parameter"
@@ -1326,6 +1326,11 @@ make_compiler_cflags() {
flags="$flags -Wno-unused-variable"
fi
+ if [ "$cc_version" -ge "33" ]; then
+ # clang completed C++11 support in version 3.3
+ flags="$flags -std=c++11"
+ fi
+
# rdynamic is used to get useful stack traces from crash reports.
ldflags="$ldflags -rdynamic"
else
diff --git a/src/table/newgrf_debug_data.h b/src/table/newgrf_debug_data.h
index b7d0c9202..afe19bbed 100644
--- a/src/table/newgrf_debug_data.h
+++ b/src/table/newgrf_debug_data.h
@@ -17,7 +17,7 @@
#define NIP_END() { NULL, 0, 0, 0, 0 }
/* Helper for filling callback tables */
-#define NIC(cb_id, base, variable, bit) { #cb_id, cpp_offsetof(base, variable), cpp_sizeof(base, variable), bit, cb_id }
+#define NIC(cb_id, base, variable, bit) { #cb_id, (ptrdiff_t)cpp_offsetof(base, variable), cpp_sizeof(base, variable), bit, cb_id }
#define NIC_END() { NULL, 0, 0, 0, 0 }
/* Helper for filling variable tables */