diff --git a/configure.ac b/configure.ac
index b71f683..b6fa19b 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,4 +1,4 @@
-# $Id: configure.ac,v 1.394 2008/03/09 00:34:23 dtucker Exp $
+# $Id: configure.ac,v 1.395 2008/03/09 11:50:50 dtucker Exp $
 #
 # Copyright (c) 1999-2004 Damien Miller
 #
@@ -15,7 +15,7 @@
 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 
 AC_INIT(OpenSSH, Portable, openssh-unix-dev@mindrot.org)
-AC_REVISION($Revision: 1.394 $)
+AC_REVISION($Revision: 1.395 $)
 AC_CONFIG_SRCDIR([ssh.c])
 
 AC_CONFIG_HEADER(config.h)
@@ -113,16 +113,23 @@
 	esac
 
 	# -fstack-protector-all doesn't always work for some GCC versions
-	# and/or platforms, so we test if we can.
+	# and/or platforms, so we test if we can.  If it's not supported
+	# on a give platform gcc will emit a warning so we use -Werror.
 	if test "x$use_stack_protector" = "x1"; then
 	    for t in -fstack-protector-all -fstack-protector; do
-		AC_MSG_CHECKING(if $CC understands $t)
+		AC_MSG_CHECKING(if $CC supports $t)
 		saved_CFLAGS="$CFLAGS"
 		saved_LDFLAGS="$LDFLAGS"
-		CFLAGS="$CFLAGS $t"
-		LDFLAGS="$LDFLAGS $t"
-		AC_TRY_LINK([], [ int main(void){return 0;} ],
+		CFLAGS="$CFLAGS $t -Werror"
+		LDFLAGS="$LDFLAGS $t -Werror"
+		AC_LINK_IFELSE(
+			[AC_LANG_SOURCE([
+#include <stdlib.h>
+int main(void){return 0;}
+			 ])],
 		    [ AC_MSG_RESULT(yes)
+		      CFLAGS="$saved_CFLAGS $t"
+		      LDFLAGS="$saved_LDFLAGS $t"
 		      AC_MSG_CHECKING(if $t works)
 		      AC_RUN_IFELSE(
 			[AC_LANG_SOURCE([
@@ -134,7 +141,7 @@
 			[ AC_MSG_RESULT(no) ],
 			[ AC_MSG_WARN([cross compiling: cannot test])
 			  break ]
-		    )
+		      )
 		    ],
 		    [ AC_MSG_RESULT(no) ]
 		)
