Niall Douglas wrote:
Bringing it back to the review of Stacktrace which this is (and not of Exception, another discussion thread would suit that), I am seeing the following options proposed for Stacktrace:
Option 1: That Stacktrace implement a macro like BOOST_STACKTRACE_THROW_EXCEPTION() which reimplements BOOST_THROW_EXCEPTION() but with muxed in stacktrace.
Option 2: That Stacktrace optionally hook some compile time hook in Boost.Exception to mux in stacktrace.
Option 3: That Stacktrace optionally hook some runtime hook in Boost.Exception to mux in stacktrace.
This is proving to be a distraction from the Stacktrace review and I think that we need to postpone this discussion for when Stacktrace is accepted. I, for one, don't back any of those options. Stacktrace itself shouldn't hook anything. boost::throw_exception should provide some sort of a mechanism via which the user should (easily) be able to include a stack trace into the exceptions.
Implied in all the above is that the exception type stacktrace mux in framework as described in the current Stacktrace docs is considered bad form and should be deleted?
That's not a problem as far as I'm concerned, but it would be nice if the Boost.Exception way is documented as well.