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/exception.hpp

Synopsis

namespace
boost
    {
    class
    exception
        {
        protected:
    
        exception();
        exception( exception const & x );    
        ~exception();    
        };    
    
    template <class Tag,class T>
    class error_info;    
    
    typedef error_info<struct throw_function_,char const *> throw_function;
    typedef error_info<struct throw_file_,char const *> throw_file;
    typedef error_info<struct throw_line_,int> throw_line;
    }