Re: [cxx-abi-dev] ABI modification for exception propagation
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [cxx-abi-dev] ABI modification for exception propagation
- To: cxx-abi-dev@xxxxxxxxxxxxxxxx
- Subject: Re: [cxx-abi-dev] ABI modification for exception propagation
- From: David Vandevoorde <daveed@xxxxxxx>
- Date: Mon, 26 May 2008 21:27:06 -0400
On May 26, 2008, at 12:41 PM, Mark Mitchell wrote:
Sebastian Redl wrote:
I experimentally implemented N2197 "Exception Propagation" in GCC
and came to the conclusion that the current exception handling ABI
specification is insufficient. It needs to be changed in order to
make exception propagation possible.
Do you have a URL for this paper?
Note: The correct paper number is N2179.
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2179.html
I wrote up a proposal for the changes. My current implementation
doesn't quite follow this proposal, since I came up with some of
the ideas while writing the document, but I will change it.
It looks like your proposal is not backwards-compatible with the
current ABI. I think we should try very hard to avoid breaking
compatibility. If that means that we need to create new functions
(like __cxa_throw_exception_0x) or accept some performance
tradeoffs, we should do so. But, it should be possible to link old C
++ binaries with the new C++ library, and, ideally, to mix object
files from old and new versions of C++ and the run-time library.
Indeed. And my understanding of the discussions was that the
transportation protocol was designed to allow for backward
compatibility.
Daveed