This is the mail archive of the
mailing list for the Archer project.
Re: Tasks (exception round-up)
On Tuesday 29 July 2008 21:00:21, Tom Tromey wrote:
> Tom> * Exceptions. Look at the existing longjmp stuff, come up with
> Tom> an estimate for the new work.
> Phil> Can you elaborate a little more on this. I was hoping it would become
> Phil> clearer as I investigated.
> gdb has some existing code to handle setjmp/longjmp "properly".
> Unfortunately I think this code doesn't work on Linux, due to a
> security feature of glibc; but if you can scare up a Solaris box or
> something you might be able to play around with it.
You can set LD_POINTER_GUARD=0 in the environment to avoid
pointer mangling, then things will work. What still does not
work even without pointer mangling, is GDB ignoring setjmp/longjmp
sequences that land in frames inner to the current stepping
frame. The "longjmp if going outer" feature.
If you're curious, there were several threads on gdb-patches list
about longjmp handling a few months back.
This was the last time I tried to make it happen, but it was
Another earlier attempt, which accesses internal glibc date
to get to pointer unmangling, idea based on an another longjmp
patch from Jan Kratochvil:
You may or may not have some version of Jan's patch in your
trees, I don't know.
Unless supporting sjlj c++ exception models, it doesn't seem like
making longjmp handling fly is a requirement.