aboutsummaryrefslogtreecommitdiff
path: root/configure.in
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2008-03-21 19:18:54 +0000
committerNick Mathewson <nickm@torproject.org>2008-03-21 19:18:54 +0000
commit64f38f217ae21eaa00b48749353dad62cfcb72c6 (patch)
tree5e5c283d2389732959cd3eeb4ca499a25ed7b902 /configure.in
parente207dc00a927704a004dfae84beda818f24b6c14 (diff)
downloadtor-64f38f217ae21eaa00b48749353dad62cfcb72c6.tar.gz
tor-64f38f217ae21eaa00b48749353dad62cfcb72c6.zip
r19003@catbus: nickm | 2008-03-21 15:13:57 -0400
Make --enable-gcc-warnings work under the recently released GCC 4.3. svn:r14149
Diffstat (limited to 'configure.in')
-rw-r--r--configure.in15
1 files changed, 14 insertions, 1 deletions
diff --git a/configure.in b/configure.in
index d2a568093e..2a153ddbbd 100644
--- a/configure.in
+++ b/configure.in
@@ -723,6 +723,11 @@ if test x$enable_gcc_warnings = xyes; then
#error
#endif]), have_gcc42=yes, have_gcc42=no)
+ AC_COMPILE_IFELSE(AC_LANG_PROGRAM([], [
+#if !defined(__GNUC__) || (__GNUC__ < 4) || (__GNUC__ == 4 && __GNUC_MINOR__ < 3)
+#error
+#endif]), have_gcc43=yes, have_gcc43=no)
+
save_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -Wshorten-64-to-32"
AC_COMPILE_IFELSE(AC_LANG_PROGRAM([], []), have_shorten64_flag=yes,
@@ -730,6 +735,7 @@ if test x$enable_gcc_warnings = xyes; then
CFLAGS="$save_CFLAGS"
CFLAGS="$CFLAGS -W -Wfloat-equal -Wundef -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes -Wwrite-strings -Wredundant-decls -Wchar-subscripts -Wcomment -Wformat=2 -Wwrite-strings -Wmissing-declarations -Wredundant-decls -Wnested-externs -Wbad-function-cast -Wswitch-enum -Werror"
+
# Disabled, so we can use mallinfo(): -Waggregate-return
if test x$have_gcc4 = xyes ; then
@@ -741,7 +747,14 @@ if test x$enable_gcc_warnings = xyes; then
# These warnings break gcc 4.0.2 and work on gcc 4.2
# XXXX020 Use -fstack-protector.
# XXXX020 See if any of these work with earlier versions.
- CFLAGS="$CFLAGS -Waddress -Wmissing-noreturn -Wnormalized=id -Woverride-init -Wstrict-overflow=5"
+ CFLAGS="$CFLAGS -Waddress -Wmissing-noreturn -Wnormalized=id -Woverride-init -Wstrict-overflow=1"
+ # We used to use -Wstrict-overflow=5, but that breaks us heavily under 4.3.
+ fi
+
+ if test x$have_gcc43 = xyes ; then
+ # These warnings break gcc 4.2 and work on gcc 4.3
+ # XXXX020 See if any of these work with earlier versions.
+ CFLAGS="$CFLAGS -Wextra -Warray-bounds"
fi
if test x$have_shorten64_flag = xyes ; then