/** @file
$Id$
$Date$
$Author$
@copy © Marc Wäckerlin
@license LGPL, see file COPYING
$Log$
Revision 1.2 2004/08/28 16:21:25 marc
mrw-c++-0.92 (mrw)
- new file: version.cpp
- new file header for all sources
- work around warning in mrw::auto
- possibility to compile without log4cxx
- work around bugs in demangle.h and libiberty.h
- corrections in documentation
- added simple tracing mechanism
- more warnings
- small corrections in Auto<>::Free and a new test for it
- possibility to compile without stack trace
*/
#include
#ifdef HAVE_STACKTRACE
# include
#else
namespace mrw {
class StackTrace {
public:
operator std::string() throw() {return "";}
};
}
#endif
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;
}
}