
On Wed, Sep 28, 2011 at 8:48 AM, Brett Lentz <blentz@redhat.com> wrote:
2. Adding backtrace and system_error_code support.
This adds additional exception information to boost::thread_exception, boost::thread_resource_error, and boost::thread_interrupted that allows Passenger to dump a full backtrace all the way up its stack.
My only concern with this is in a case like this, for example: while (/* reading lines from file, parsing integers, otherwise ignoring*/) { try { myInts.push_back(boost::lexical_cast<int>(currentLineStr)); } catch (const boost::bad_lexical_cast&) // (has stack trace) {} } Will the stack trace make such an operation noticeably slower? I know it's easy to retort with "don't use exceptions for flow control" but I believe my concern is valid, even if it's a bit contrived of a situation. Perhaps we'd like to make it opt-in, like BOOST_THROW_EXCEPTION_TRACED or something. GMan, Nick Gorski