From 2384f27d34c1580dfac73d57d7c2c6b204f1d147 Mon Sep 17 00:00:00 2001 From: Rich Felker Date: Tue, 11 Dec 2012 23:28:31 -0500 Subject: [PATCH] treat invalid C as an error even if warnings aren't enabled. --- configure | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/configure b/configure index b61ffb82..96f93b24 100755 --- a/configure +++ b/configure @@ -270,9 +270,19 @@ fnmatch '-march=*|*\ -march=*' "$CFLAGS" || tryldflag CFLAGS_AUTO -march=i486 fnmatch '-mtune=*|*\ -mtune=*' "$CFLAGS" || tryldflag CFLAGS_AUTO -mtune=generic fi +# +# Even with -std=c99, gcc accepts some constructs which are constraint +# violations. We want to treat these as errors regardless of whether +# other purely stylistic warnings are enabled -- especially implicit +# function declarations, which are a dangerous programming error. +# +tryflag CFLAGS_AUTO -Werror=implicit-function-declaration +tryflag CFLAGS_AUTO -Werror=implicit-int +tryflag CFLAGS_AUTO -Werror=pointer-sign +tryflag CFLAGS_AUTO -Werror=pointer-arith + if test "x$warnings" = xyes ; then tryflag CFLAGS_AUTO -Wall -tryflag CFLAGS_AUTO -Wpointer-arith tryflag CFLAGS_AUTO -Wcast-align tryflag CFLAGS_AUTO -Wno-parentheses tryflag CFLAGS_AUTO -Wno-uninitialized -- 2.20.1