From: Sebastian Redl (sebastian.redl_at_[hidden])
Date: 2006-11-14 17:36:35
Matthew Herrmann wrote:
> To remove the e.success(),
> you'd need to detect whether the stack was being unwound due to an
> exception or due to a natural return. This is where language support (or
> compiler-dependent tricks) would be required.
Language support exists. There is a function that returns true if the
stack is currently being unwound.
It is broken in VC++6 (always returns false), but aside from that I
believe it's quite well supported, though little known.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk