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
This commit is contained in:
Benjamin Kosnik 2011-02-05 00:14:42 +00:00 committed by Benjamin Kosnik
parent 962101acd8
commit 2a86b40440
4 changed files with 24 additions and 4 deletions

View file

@ -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*.

View file

@ -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.

View file

@ -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

View file

@ -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