This is the mail archive of the
gcc-help@gcc.gnu.org
mailing list for the GCC project.
GCC 4.6.2 C++ thread cancellation issue
- From: Mike Dalpee <mikedalpee at enginsol dot com>
- To: "gcc-help at gcc dot gnu dot org" <gcc-help at gcc dot gnu dot org>
- Date: Mon, 7 May 2012 19:04:33 +0000
- Subject: GCC 4.6.2 C++ thread cancellation issue
Hello,
I am trying to port some legacy code to properly work in the face of thread cancellation. Based on information I have gleaned from searching the net, it appears that any catch(...) handlers that try to finalize the exception must be augmented to first catch abi::_forced_unwind and simply rethrow the exception for cancellation to work properly.
However.
I am running into a problem where the rethrow of abi::_forced_unwind is being treated as an unhandled exception by the runtime, thereby causing an abort to occur. So, my questions are:
1) Should what I am doing work?
2) Is there a particular way GCC must be built for the rethrow to work?
3) Is there a particular combination of GCC/GLIBC versions required for the rethrow to work?