From 06ceee8ca34999c5c35e5dfb85133d4b35c9689b Mon Sep 17 00:00:00 2001 From: Rich Felker Date: Tue, 27 Aug 2013 17:33:47 -0400 Subject: add attribute((may_alias)) checking in configure this will be needed for upcoming commits to the string/mem functions to correct their unannounced use of aliasing violations for word-at-a-time search, fill, and copy operations. --- configure | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'configure') diff --git a/configure b/configure index 469b7d29..40712c53 100755 --- a/configure +++ b/configure @@ -243,6 +243,27 @@ tryflag CFLAGS_C99FSE -fexcess-precision=standard \ || { test "$ARCH" = i386 && tryflag CFLAGS_C99FSE -ffloat-store ; } tryflag CFLAGS_C99FSE -frounding-math +# +# We may use the may_alias attribute if __GNUC__ is defined, so +# if the compiler defines __GNUC__ but does not provide it, +# it must be defined away as part of the CFLAGS. +# +printf "checking whether compiler needs attribute((may_alias)) suppression... " +cat > "$tmpc" </dev/null 2>&1 ; then +printf "no\n" +else +printf "yes\n" +CFLAGS_C99FSE="$CFLAGS_C99FSE -D__may_alias__=" +fi + # # Check for options that may be needed to prevent the compiler from # generating self-referential versions of memcpy,, memmove, memcmp, -- cgit v1.2.1