#include #include namespace mrw { exception::exception() throw(std::bad_exception): _stacktrace(new StackTrace) { } exception::~exception() throw() { delete _stacktrace; } const std::string& exception::stacktrace() const throw(std::bad_exception) { static const std::string st(*_stacktrace); return st; } }