This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [basic-improvements] try/finally support for c/c++


On 06-Nov-2002, Richard Henderson <rth@redhat.com> wrote:
> longjmp pretty much bypasses all the logic one would care to
> ask about.  I would say that such would have to be undefined.  There
> is mention in the IA-64 psABI docs of a separate longjmp_unwind
> function that _is_ EH aware, but that's the exception not the rule.
> So leaving a try block via longjmp is going to have to be undefined.

Undefined behaviour is pretty drastic.  Would it be sufficient to just
make it implementation-defined whether or not longjmp() invokes cleanups
(i.e. destructors and finally blocks)?

-- 
Fergus Henderson <fjh@cs.mu.oz.au>  |  "I have always known that the pursuit
The University of Melbourne         |  of excellence is a lethal habit"
WWW: <http://www.cs.mu.oz.au/~fjh>  |     -- the last words of T. S. Garp.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]