diff options
author | smatz <smatz@openttd.org> | 2009-05-25 19:30:37 +0000 |
---|---|---|
committer | smatz <smatz@openttd.org> | 2009-05-25 19:30:37 +0000 |
commit | 9355d1d16981a7a0803aae1f1103900fea095bca (patch) | |
tree | 2e45ef523ad611092ab1bd94e7443a0375702eb8 | |
parent | 168ae6f7e2e87d3050c39bbb03148924751370a3 (diff) | |
download | openttd-9355d1d16981a7a0803aae1f1103900fea095bca.tar.xz |
(svn r16424) -Codechange: warn about casting-out 'const' only when using gcc4+, older versions give many useless false positives
-rw-r--r-- | config.lib | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/config.lib b/config.lib index 9ff14ed2a..78d328903 100644 --- a/config.lib +++ b/config.lib @@ -1103,7 +1103,7 @@ make_cflags_and_ldflags() { if [ $cc_version -ge 29 ]; then CFLAGS="$CFLAGS -Wall -Wno-multichar -Wsign-compare -Wundef" CFLAGS="$CFLAGS -Wwrite-strings -Wpointer-arith" - CFLAGS="$CFLAGS -Wno-uninitialized -Wcast-qual" + CFLAGS="$CFLAGS -Wno-uninitialized" CC_CFLAGS="$CC_CFLAGS -Wstrict-prototypes" fi @@ -1148,19 +1148,22 @@ make_cflags_and_ldflags() { LIBS="$LIBS -lws2_32 -lwinmm -lgdi32 -ldxguid -lole32" fi - # GCC 4.0+ complains about that we break strict-aliasing. - # On most places we don't see how to fix it, and it doesn't - # break anything. So disable strict-aliasing to make the - # compiler all happy. if [ $cc_version -ge 40 ]; then + # GCC 4.0+ complains about that we break strict-aliasing. + # On most places we don't see how to fix it, and it doesn't + # break anything. So disable strict-aliasing to make the + # compiler all happy. CFLAGS="$CFLAGS -fno-strict-aliasing" + # Warn about casting-out 'const' with regular C-style cast. + # The preferred way is const_cast<>() which doesn't warn. + CFLAGS="$CFLAGS -Wcast-qual" fi - # GCC 4.2+ automatically assumes that signed overflows do - # not occur in signed arithmetics, whereas we are not - # sure that they will not happen. It furthermore complains - # about it's own optimized code in some places. if [ $cc_version -ge 42 ]; then + # GCC 4.2+ automatically assumes that signed overflows do + # not occur in signed arithmetics, whereas we are not + # sure that they will not happen. It furthermore complains + # about it's own optimized code in some places. CFLAGS="$CFLAGS -fno-strict-overflow" fi fi |