diff options
author | Jonathan Wakely <jwakely.gcc@gmail.com> | 2011-11-07 08:46:58 +0000 |
---|---|---|
committer | Jonathan Wakely <redi@gcc.gnu.org> | 2011-11-07 08:46:58 +0000 |
commit | e0f0ee74f00a58dc356ab1ac23638c97d505eb8d (patch) | |
tree | cb5f8d91252e8e7bcda39fce03401c8827c41961 | |
parent | b3242a4c75342dc2a5260fd452b9ea5c9d604296 (diff) | |
download | gcc-e0f0ee74f00a58dc356ab1ac23638c97d505eb8d.zip gcc-e0f0ee74f00a58dc356ab1ac23638c97d505eb8d.tar.gz gcc-e0f0ee74f00a58dc356ab1ac23638c97d505eb8d.tar.bz2 |
acinclude.m4: Check for <stdalign.h>
* acinclude.m4: Check for <stdalign.h>
* configure: Regenerate.
* config.h.in: Likewise.
* include/Makefile.am: Add <cstdalign>.
* include/Makefile.in: Regenerate.
* include/c_global/cstdalign: New.
* testsuite/18_support/headers/cstdalign/std_c++0x_neg.cc: New.
* doc/xml/manual/backwards_compatibility.xml: Update.
* doc/xml/manual/status_cxx2011.xml: Update.
From-SVN: r181076
-rw-r--r-- | libstdc++-v3/ChangeLog | 12 | ||||
-rw-r--r-- | libstdc++-v3/acinclude.m4 | 3 | ||||
-rw-r--r-- | libstdc++-v3/config.h.in | 3 | ||||
-rwxr-xr-x | libstdc++-v3/configure | 14 | ||||
-rw-r--r-- | libstdc++-v3/doc/xml/manual/backwards_compatibility.xml | 2 | ||||
-rw-r--r-- | libstdc++-v3/doc/xml/manual/status_cxx2011.xml | 5 | ||||
-rw-r--r-- | libstdc++-v3/include/Makefile.am | 1 | ||||
-rw-r--r-- | libstdc++-v3/include/Makefile.in | 1 | ||||
-rw-r--r-- | libstdc++-v3/include/c_global/cstdalign | 44 | ||||
-rw-r--r-- | libstdc++-v3/testsuite/18_support/headers/cstdalign/std_c++0x_neg.cc | 24 |
10 files changed, 105 insertions, 4 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 408b0d4..006d875 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,5 +1,17 @@ 2011-11-07 Jonathan Wakely <jwakely.gcc@gmail.com> + * acinclude.m4: Check for <stdalign.h> + * configure: Regenerate. + * config.h.in: Likewise. + * include/Makefile.am: Add <cstdalign>. + * include/Makefile.in: Regenerate. + * include/c_global/cstdalign: New. + * testsuite/18_support/headers/cstdalign/std_c++0x_neg.cc: New. + * doc/xml/manual/backwards_compatibility.xml: Update. + * doc/xml/manual/status_cxx2011.xml: Update. + +2011-11-07 Jonathan Wakely <jwakely.gcc@gmail.com> + PR libstdc++/50982 * include/std/mutex (__once_proxy): Use void parameter list to work on implicit extern "C" systems. diff --git a/libstdc++-v3/acinclude.m4 b/libstdc++-v3/acinclude.m4 index 684a295..3464b76 100644 --- a/libstdc++-v3/acinclude.m4 +++ b/libstdc++-v3/acinclude.m4 @@ -1641,6 +1641,9 @@ AC_DEFUN([GLIBCXX_CHECK_C99_TR1], [ # Check for the existence of the <stdbool.h> header. AC_CHECK_HEADERS(stdbool.h) + # Check for the existence of the <stdalign.h> header. + AC_CHECK_HEADERS(stdalign.h) + CXXFLAGS="$ac_save_CXXFLAGS" AC_LANG_RESTORE ]) diff --git a/libstdc++-v3/config.h.in b/libstdc++-v3/config.h.in index f82d91a..82ccd4e 100644 --- a/libstdc++-v3/config.h.in +++ b/libstdc++-v3/config.h.in @@ -330,6 +330,9 @@ /* Define to 1 if you have the `sqrtl' function. */ #undef HAVE_SQRTL +/* Define to 1 if you have the <stdalign.h> header file. */ +#undef HAVE_STDALIGN_H + /* Define to 1 if you have the <stdbool.h> header file. */ #undef HAVE_STDBOOL_H diff --git a/libstdc++-v3/configure b/libstdc++-v3/configure index 428cdc5..94b29a0 100755 --- a/libstdc++-v3/configure +++ b/libstdc++-v3/configure @@ -19105,6 +19105,20 @@ fi done + # Check for the existence of the <stdalign.h> header. + for ac_header in stdalign.h +do : + ac_fn_cxx_check_header_mongrel "$LINENO" "stdalign.h" "ac_cv_header_stdalign_h" "$ac_includes_default" +if test "x$ac_cv_header_stdalign_h" = x""yes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_STDALIGN_H 1 +_ACEOF + +fi + +done + + CXXFLAGS="$ac_save_CXXFLAGS" ac_ext=c ac_cpp='$CPP $CPPFLAGS' diff --git a/libstdc++-v3/doc/xml/manual/backwards_compatibility.xml b/libstdc++-v3/doc/xml/manual/backwards_compatibility.xml index b69ac4d..525157f 100644 --- a/libstdc++-v3/doc/xml/manual/backwards_compatibility.xml +++ b/libstdc++-v3/doc/xml/manual/backwards_compatibility.xml @@ -1135,7 +1135,7 @@ AC_DEFUN([AC_HEADER_STDCXX_11], [ #include <cmath> #include <csetjmp> #include <csignal> - // #include <cstdalign> + #include <cstdalign> #include <cstdarg> #include <cstdbool> #include <cstddef> diff --git a/libstdc++-v3/doc/xml/manual/status_cxx2011.xml b/libstdc++-v3/doc/xml/manual/status_cxx2011.xml index 7f06254..2715b2a 100644 --- a/libstdc++-v3/doc/xml/manual/status_cxx2011.xml +++ b/libstdc++-v3/doc/xml/manual/status_cxx2011.xml @@ -253,11 +253,10 @@ particular release. <entry/> </row> <row> - <?dbhtml bgcolor="#B0B0B0" ?> <entry>18.10</entry> <entry>Other runtime support</entry> - <entry>Partial</entry> - <entry>Missing <filename class="headerfile"><cstdalign></filename> </entry> + <entry>Y</entry> + <entry/> </row> <row> <entry> diff --git a/libstdc++-v3/include/Makefile.am b/libstdc++-v3/include/Makefile.am index bc4594d..732f7bc 100644 --- a/libstdc++-v3/include/Makefile.am +++ b/libstdc++-v3/include/Makefile.am @@ -634,6 +634,7 @@ c_base_headers = \ ${c_base_srcdir}/cmath \ ${c_base_srcdir}/csetjmp \ ${c_base_srcdir}/csignal \ + ${c_base_srcdir}/cstdalign \ ${c_base_srcdir}/cstdarg \ ${c_base_srcdir}/cstdbool \ ${c_base_srcdir}/cstddef \ diff --git a/libstdc++-v3/include/Makefile.in b/libstdc++-v3/include/Makefile.in index 3b31e8a..3d4330c 100644 --- a/libstdc++-v3/include/Makefile.in +++ b/libstdc++-v3/include/Makefile.in @@ -885,6 +885,7 @@ c_base_headers = \ ${c_base_srcdir}/cmath \ ${c_base_srcdir}/csetjmp \ ${c_base_srcdir}/csignal \ + ${c_base_srcdir}/cstdalign \ ${c_base_srcdir}/cstdarg \ ${c_base_srcdir}/cstdbool \ ${c_base_srcdir}/cstddef \ diff --git a/libstdc++-v3/include/c_global/cstdalign b/libstdc++-v3/include/c_global/cstdalign new file mode 100644 index 0000000..31f0c1b --- /dev/null +++ b/libstdc++-v3/include/c_global/cstdalign @@ -0,0 +1,44 @@ +// <cstdalign> -*- C++ -*- + +// Copyright (C) 2011 Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 3, or (at your option) +// any later version. + +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// Under Section 7 of GPL version 3, you are granted additional +// permissions described in the GCC Runtime Library Exception, version +// 3.1, as published by the Free Software Foundation. + +// You should have received a copy of the GNU General Public License and +// a copy of the GCC Runtime Library Exception along with this program; +// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see +// <http://www.gnu.org/licenses/>. + +/** @file include/cstdalign + * This is a Standard C++ Library header. + */ + +#pragma GCC system_header + +#ifndef _GLIBCXX_CSTDALIGN +#define _GLIBCXX_CSTDALIGN 1 + +#ifndef __GXX_EXPERIMENTAL_CXX0X__ +# include <bits/c++0x_warning.h> +#else +# include <bits/c++config.h> +# if _GLIBCXX_HAVE_STDALIGN_H +# include <stdalign.h> +# endif +#endif + +#endif + diff --git a/libstdc++-v3/testsuite/18_support/headers/cstdalign/std_c++0x_neg.cc b/libstdc++-v3/testsuite/18_support/headers/cstdalign/std_c++0x_neg.cc new file mode 100644 index 0000000..a72d65f --- /dev/null +++ b/libstdc++-v3/testsuite/18_support/headers/cstdalign/std_c++0x_neg.cc @@ -0,0 +1,24 @@ +// { dg-do compile } +// { dg-options "-std=gnu++98" } + +// Copyright (C) 2011 Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 3, or (at your option) +// any later version. + +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License along +// with this library; see the file COPYING3. If not see +// <http://www.gnu.org/licenses/>. + +#include <cstdalign> + +// { dg-error "ISO C.. 2011" "" { target *-*-* } 32 } + |