From c8e51f80a8baa5f595b7d19a8098a7b066bc5c3d Mon Sep 17 00:00:00 2001 From: Michael Brown Date: Wed, 16 Mar 2011 18:10:49 +0000 Subject: [PATCH] [build] Avoid spurious address comparison warnings in gcc 4.6 A construction such as "assert ( ptr != NULL )" seems to trigger a false positive warning in gcc 4.6 if the value of "ptr" is known at compile-time to be non-NULL. Use -Wno-address to inhibit this warning. Reported-by: Ralph Giles Tested-by: Ralph Giles Signed-off-by: Michael Brown --- src/Makefile.housekeeping | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/Makefile.housekeeping b/src/Makefile.housekeeping index 78e78c99..964d5009 100644 --- a/src/Makefile.housekeeping +++ b/src/Makefile.housekeeping @@ -148,6 +148,15 @@ CFI_FLAGS := $(shell $(CFI_TEST) && $(ECHO) '-fno-dwarf2-cfi-asm') WORKAROUND_CFLAGS += $(CFI_FLAGS) endif +# gcc 4.6 generates spurious warnings if -Waddress is in force. +# Inhibit this. +# +ifeq ($(CCTYPE),gcc) +WNA_TEST = $(CC) -Wno-address -x c -c /dev/null -o /dev/null >/dev/null 2>&1 +WNA_FLAGS := $(shell $(WNA_TEST) && $(ECHO) '-Wno-address') +WORKAROUND_CFLAGS += $(WNA_FLAGS) +endif + # Some versions of gas choke on division operators, treating them as # comment markers. Specifying --divide will work around this problem, # but isn't available on older gas versions.