Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

Boost Exception

boost/exception/diagnostic_information.hpp

Synopsis

#include <string>

namespace
boost
    {
    class exception;

    template <class E>
    std::string diagnostic_information( E const & e, bool verbose=true );
    
    std::string diagnostic_information( exception_ptr const & p, bool verbose=true );    
    
    char const * diagnostic_information_what( boost::exception const & e, bool verbose=true ) throw();    
    
    std::string current_exception_diagnostic_information();
    }