LWG 2135: terminate() in condition_variable::wait()
* include/std/condition_variable (condition_variable::wait): Add noexcept. * src/c++11/condition_variable.cc (condition_variable::wait): Call std::terminate on error (DR 2135). From-SVN: r228217
This commit is contained in:
parent
7009b073c5
commit
80400b0477
3 changed files with 10 additions and 3 deletions
|
@ -1,3 +1,10 @@
|
|||
2015-09-28 Jonathan Wakely <jwakely@redhat.com>
|
||||
|
||||
* include/std/condition_variable (condition_variable::wait): Add
|
||||
noexcept.
|
||||
* src/c++11/condition_variable.cc (condition_variable::wait): Call
|
||||
std::terminate on error (DR 2135).
|
||||
|
||||
2015-09-25 Ville Voutilainen <ville.voutilainen@gmail.com>
|
||||
|
||||
Avoid creating dangling references in case of nested tuples
|
||||
|
|
|
@ -89,7 +89,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
|||
notify_all() noexcept;
|
||||
|
||||
void
|
||||
wait(unique_lock<mutex>& __lock);
|
||||
wait(unique_lock<mutex>& __lock) noexcept;
|
||||
|
||||
template<typename _Predicate>
|
||||
void
|
||||
|
|
|
@ -48,12 +48,12 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
|||
}
|
||||
|
||||
void
|
||||
condition_variable::wait(unique_lock<mutex>& __lock)
|
||||
condition_variable::wait(unique_lock<mutex>& __lock) noexcept
|
||||
{
|
||||
int __e = __gthread_cond_wait(&_M_cond, __lock.mutex()->native_handle());
|
||||
|
||||
if (__e)
|
||||
__throw_system_error(__e);
|
||||
std::terminate();
|
||||
}
|
||||
|
||||
void
|
||||
|
|
Loading…
Add table
Reference in a new issue