diff options
-rw-r--r-- | libstdc++-v3/ChangeLog | 6 | ||||
-rw-r--r-- | libstdc++-v3/config/abi/pre/gnu.ver | 9 | ||||
-rw-r--r-- | libstdc++-v3/include/bits/regex_error.h | 5 | ||||
-rw-r--r-- | libstdc++-v3/src/functexcept.cc | 8 |
4 files changed, 24 insertions, 4 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index d2f17b8..aaa5178 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,9 @@ +2011-02-04 Benjamin Kosnik <bkoz@redhat.com> + + * include/bits/regex_error.h (__throw_regex_error): Not inline. + * src/functexcept.cc: Add definition. + * config/abi/pre/gnu.ver: Export. + 2011-02-04 Ralf Corsépius <ralf.corsepius@rtems.org> * crossconfig.m4 (GLIBCXX_CROSSCONFIG): Add *-rtems*. diff --git a/libstdc++-v3/config/abi/pre/gnu.ver b/libstdc++-v3/config/abi/pre/gnu.ver index 6757139..b5acc5d 100644 --- a/libstdc++-v3/config/abi/pre/gnu.ver +++ b/libstdc++-v3/config/abi/pre/gnu.ver @@ -1,6 +1,6 @@ ## Linker script for GNU versioning (GNU ld 2.13.91+ only.) ## -## Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 +## Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 ## Free Software Foundation, Inc. ## ## This file is part of the GNU ISO C++ Library. This library is free @@ -1205,6 +1205,13 @@ GLIBCXX_3.4.15 { _ZNSt8__detail15_List_node_base11_M_transfer*; _ZNSt8__detail15_List_node_base4swapERS0_S1_; + _ZNSt11regex_errorD*; + _ZNKSt11regex_error4whatEv; + _ZTSSt11regex_error; + _ZTVSt11regex_error; + _ZTISt11regex_error; + _ZSt19__throw_regex_errorNSt15regex_constants10error_typeE; + } GLIBCXX_3.4.14; # Symbols in the support library (libsupc++) have their own tag. diff --git a/libstdc++-v3/include/bits/regex_error.h b/libstdc++-v3/include/bits/regex_error.h index ffbedd5..cfcf479 100644 --- a/libstdc++-v3/include/bits/regex_error.h +++ b/libstdc++-v3/include/bits/regex_error.h @@ -156,9 +156,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION }; - inline void - __throw_regex_error(regex_constants::error_type __ecode) - { throw regex_error(__ecode); } + void + __throw_regex_error(regex_constants::error_type __ecode); _GLIBCXX_END_NAMESPACE_VERSION } // namespace std diff --git a/libstdc++-v3/src/functexcept.cc b/libstdc++-v3/src/functexcept.cc index 5cd5ea3..2fe14d5 100644 --- a/libstdc++-v3/src/functexcept.cc +++ b/libstdc++-v3/src/functexcept.cc @@ -31,6 +31,7 @@ #include <system_error> #include <future> #include <functional> +#include <regex> #ifdef _GLIBCXX_USE_NLS # include <libintl.h> @@ -111,6 +112,10 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION void __throw_bad_function_call() { throw bad_function_call(); } + + void + __throw_regex_error(regex_constants::error_type __ecode) + { throw regex_error(__ecode); } #else void __throw_bad_exception(void) @@ -180,6 +185,9 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION __throw_bad_function_call() { std::abort(); } + void + __throw_regex_error(regex_constants::error_type __ecode) + { std::abort(); } #endif //__EXCEPTIONS _GLIBCXX_END_NAMESPACE_VERSION |