diff options
author | Christopher Faylor <me@cgf.cx> | 2011-05-04 10:16:59 +0400 |
---|---|---|
committer | Christopher Faylor <me@cgf.cx> | 2011-05-04 10:16:59 +0400 |
commit | 9d2b7928b586d047f0c53ab3b2ecb26a45f36884 (patch) | |
tree | b2daee46626d823f1130d3e60836d8d3b3caea0a /winsup/cygwin/thread.cc | |
parent | cdbb272b4c5c165e7e1105eef36ce0600c9ea9fb (diff) |
* thread.h (pthread::static_cancel_self): Mark as noreturn.
(pthread::cancel_self): Ditto.
* thread.cc (pthread::cancel_self): Explicitly use pthread::exit to avoid a
"function returns" error.
Diffstat (limited to 'winsup/cygwin/thread.cc')
-rw-r--r-- | winsup/cygwin/thread.cc | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/winsup/cygwin/thread.cc b/winsup/cygwin/thread.cc index a521773d8..60a6d3a77 100644 --- a/winsup/cygwin/thread.cc +++ b/winsup/cygwin/thread.cc @@ -1044,7 +1044,9 @@ pthread::pop_all_cleanup_handlers () void pthread::cancel_self () { - exit (PTHREAD_CANCELED); + /* Can someone explain why the pthread:: is needed here? g++ complains + without it. */ + pthread::exit (PTHREAD_CANCELED); } DWORD |