diff options
author | Jonathan Wakely <jwakely.gcc@gmail.com> | 2009-12-15 17:42:47 +0000 |
---|---|---|
committer | Jonathan Wakely <redi@gcc.gnu.org> | 2009-12-15 17:42:47 +0000 |
commit | ec903a9c42e640af51c771cb3a844283acdc566b (patch) | |
tree | c2f8524e3fae97a6caa54a748bb213d265ab2a11 /libstdc++-v3/src | |
parent | 2a71eb48e4348f8bc33f9b02e45fd69adbe66b9c (diff) | |
download | gcc-ec903a9c42e640af51c771cb3a844283acdc566b.zip gcc-ec903a9c42e640af51c771cb3a844283acdc566b.tar.gz gcc-ec903a9c42e640af51c771cb3a844283acdc566b.tar.bz2 |
functional (function::function): Move construct target.
2009-12-15 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/std/functional (function::function): Move construct target.
(function::operator=): Use perfect forwarding for argument.
(function::operator()): Use new __throw_bad_function_call.
* include/bits/functexcept.h (__throw_bad_function_call): Declare.
* src/functexcept.cc (__throw_bad_function_call): Define.
* config/abi/pre/gnu.ver: Add new symbol.
* testsuite/20_util/function/cons/move_target.cc: New.
* testsuite/20_util/function/assign/move_target.cc: New.
From-SVN: r155261
Diffstat (limited to 'libstdc++-v3/src')
-rw-r--r-- | libstdc++-v3/src/functexcept.cc | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/libstdc++-v3/src/functexcept.cc b/libstdc++-v3/src/functexcept.cc index 352a6b7..d47eccb 100644 --- a/libstdc++-v3/src/functexcept.cc +++ b/libstdc++-v3/src/functexcept.cc @@ -29,6 +29,7 @@ #include <ios> #include <system_error> #include <future> +#include <functional> #ifdef _GLIBCXX_USE_NLS # include <libintl.h> @@ -104,6 +105,9 @@ _GLIBCXX_BEGIN_NAMESPACE(std) __throw_future_error(int __i) { throw future_error(future_errc(__i)); } + void + __throw_bad_function_call() + { throw bad_function_call(); } #else void __throw_bad_exception(void) @@ -169,6 +173,10 @@ _GLIBCXX_BEGIN_NAMESPACE(std) __throw_future_error(int) { std::abort(); } + void + __throw_bad_function_call() + { std::abort(); } + #endif //__EXCEPTIONS _GLIBCXX_END_NAMESPACE |