aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBenjamin Kosnik <bkoz@redhat.com>2011-02-05 00:14:42 +0000
committerBenjamin Kosnik <bkoz@gcc.gnu.org>2011-02-05 00:14:42 +0000
commit2a86b404408c557786ea7aeb1cce9929a324ceca (patch)
tree13b54f4b5274fa3ebe3368bff678ff0e124398a0
parent962101acd8b0878b94ec74c5472fc7fac0e5f476 (diff)
downloadgcc-2a86b404408c557786ea7aeb1cce9929a324ceca.zip
gcc-2a86b404408c557786ea7aeb1cce9929a324ceca.tar.gz
gcc-2a86b404408c557786ea7aeb1cce9929a324ceca.tar.bz2
regex_error.h (__throw_regex_error): Not inline.
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. From-SVN: r169842
-rw-r--r--libstdc++-v3/ChangeLog6
-rw-r--r--libstdc++-v3/config/abi/pre/gnu.ver9
-rw-r--r--libstdc++-v3/include/bits/regex_error.h5
-rw-r--r--libstdc++-v3/src/functexcept.cc8
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