Mercurial > gnulib
changeset 18285:baf8f2cb3d1d
stddef: support configuring with g++
Problem reported by Ángel González in:
http://lists.gnu.org/archive/html/bug-gnulib/2016-04/msg00003.html
* lib/stddef.in.h (_GL_STDDEF_ALIGNAS, max_align_t):
Do not define if _GCC_MAX_ALIGN_T is defined.
author | Paul Eggert <eggert@cs.ucla.edu> |
---|---|
date | Fri, 01 Apr 2016 21:01:17 -0700 |
parents | 5b41cc11f4c4 |
children | 8493b4b5d7ae |
files | ChangeLog lib/stddef.in.h |
diffstat | 2 files changed, 12 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog Thu Mar 31 10:16:15 2016 -0700 +++ b/ChangeLog Fri Apr 01 21:01:17 2016 -0700 @@ -1,3 +1,11 @@ +2016-04-01 Paul Eggert <eggert@cs.ucla.edu> + + stddef: support configuring with g++ + Problem reported by Ángel González in: + http://lists.gnu.org/archive/html/bug-gnulib/2016-04/msg00003.html + * lib/stddef.in.h (_GL_STDDEF_ALIGNAS, max_align_t): + Do not define if _GCC_MAX_ALIGN_T is defined. + 2016-03-25 Paul Eggert <eggert@cs.ucla.edu> test-framework-sh: minor cleanups
--- a/lib/stddef.in.h Thu Mar 31 10:16:15 2016 -0700 +++ b/lib/stddef.in.h Fri Apr 01 21:01:17 2016 -0700 @@ -81,8 +81,10 @@ # define wchar_t int #endif -/* Some platforms lack max_align_t. */ -#if !@HAVE_MAX_ALIGN_T@ +/* Some platforms lack max_align_t. The check for _GCC_MAX_ALIGN_T is + a hack in case the configure-time test was done with g++ even though + we are currently compiling with gcc. */ +#if ! (@HAVE_MAX_ALIGN_T@ || defined _GCC_MAX_ALIGN_T) /* On the x86, the maximum storage alignment of double, long, etc. is 4, but GCC's C11 ABI for x86 says that max_align_t has an alignment of 8, and the C11 standard allows this. Work around this problem by