From fdec36abf907e49e9af101877a9f11dd26cb6516 Mon Sep 17 00:00:00 2001 From: Paolo Carlini Date: Tue, 12 Feb 2013 12:01:14 +0000 Subject: [PATCH] cstdlib (at_quick_exit, quick_exit): Provide in C++11 mode. 2013-02-12 Paolo Carlini * include/c_std/cstdlib (at_quick_exit, quick_exit): Provide in C++11 mode. From-SVN: r195974 --- libstdc++-v3/ChangeLog | 5 +++++ libstdc++-v3/include/c_std/cstdlib | 28 ++++++++++++++++++++++++++++ 2 files changed, 33 insertions(+) diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 0c631f10ec1..03df2a51cef 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,8 @@ +2013-02-12 Paolo Carlini + + * include/c_std/cstdlib (at_quick_exit, quick_exit): Provide in + C++11 mode. + 2013-02-12 Julian Brown * testsuite/22_locale/time_get/get_weekday/char/38081-1.cc (test01): diff --git a/libstdc++-v3/include/c_std/cstdlib b/libstdc++-v3/include/c_std/cstdlib index 224fccfd9c5..fa3e0ead977 100644 --- a/libstdc++-v3/include/c_std/cstdlib +++ b/libstdc++-v3/include/c_std/cstdlib @@ -57,6 +57,14 @@ namespace std extern "C" void abort(void) throw () _GLIBCXX_NORETURN; extern "C" int atexit(void (*)()) throw (); extern "C" void exit(int) throw () _GLIBCXX_NORETURN; +#if __cplusplus >= 201103L +# ifdef _GLIBCXX_HAVE_AT_QUICK_EXIT + extern "C" int at_quick_exit(void (*)()) throw (); +# endif +# ifdef _GLIBCXX_HAVE_QUICK_EXIT + extern "C" void quick_exit(int) throw() _GLIBCXX_NORETURN; +# endif +#endif } // namespace #else @@ -67,6 +75,11 @@ namespace std #undef abort #undef abs #undef atexit +#if __cplusplus >= 201103L +# ifdef _GLIBCXX_HAVE_AT_QUICK_EXIT +# undef at_quick_exit +# endif +#endif #undef atof #undef atoi #undef atol @@ -83,6 +96,11 @@ namespace std #undef mbstowcs #undef mbtowc #undef qsort +#if __cplusplus >= 201103L +# ifdef _GLIBCXX_HAVE_QUICK_EXIT +# undef quick_exit +# endif +#endif #undef rand #undef realloc #undef srand @@ -103,6 +121,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION using ::abort; using ::abs; using ::atexit; +#if __cplusplus >= 201103L +# ifdef _GLIBCXX_HAVE_AT_QUICK_EXIT + using ::at_quick_exit; +# endif +#endif using ::atof; using ::atoi; using ::atol; @@ -121,6 +144,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION using ::mbtowc; #endif // _GLIBCXX_HAVE_MBSTATE_T using ::qsort; +#if __cplusplus >= 201103L +# ifdef _GLIBCXX_HAVE_QUICK_EXIT + using ::quick_exit; +# endif +#endif using ::rand; using ::realloc; using ::srand; -- 2.30.2