forked from boostorg/throw_exception
merging changes from trunk.
[SVN r63565]
This commit is contained in:
committed by
Peter Dimov
parent
a53446874b
commit
173fa9c41e
@ -75,8 +75,8 @@ boost
|
|||||||
void
|
void
|
||||||
release()
|
release()
|
||||||
{
|
{
|
||||||
if( px_ )
|
if( px_ && px_->release() )
|
||||||
px_->release();
|
px_=0;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
@ -134,7 +134,7 @@ boost
|
|||||||
|
|
||||||
class exception;
|
class exception;
|
||||||
|
|
||||||
template <class>
|
template <class T>
|
||||||
class shared_ptr;
|
class shared_ptr;
|
||||||
|
|
||||||
namespace
|
namespace
|
||||||
@ -150,7 +150,7 @@ boost
|
|||||||
virtual shared_ptr<error_info_base> get( type_info_ const & ) const = 0;
|
virtual shared_ptr<error_info_base> get( type_info_ const & ) const = 0;
|
||||||
virtual void set( shared_ptr<error_info_base> const &, type_info_ const & ) = 0;
|
virtual void set( shared_ptr<error_info_base> const &, type_info_ const & ) = 0;
|
||||||
virtual void add_ref() const = 0;
|
virtual void add_ref() const = 0;
|
||||||
virtual void release() const = 0;
|
virtual bool release() const = 0;
|
||||||
virtual refcount_ptr<exception_detail::error_info_container> clone() const = 0;
|
virtual refcount_ptr<exception_detail::error_info_container> clone() const = 0;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
|
@ -43,26 +43,6 @@
|
|||||||
|
|
||||||
namespace boost
|
namespace boost
|
||||||
{
|
{
|
||||||
#if !defined( BOOST_EXCEPTION_DISABLE )
|
|
||||||
namespace
|
|
||||||
exception_detail
|
|
||||||
{
|
|
||||||
template <class E>
|
|
||||||
void
|
|
||||||
throw_exception_( E const & x, char const * current_function, char const * file, int line )
|
|
||||||
{
|
|
||||||
throw_exception(
|
|
||||||
set_info(
|
|
||||||
set_info(
|
|
||||||
set_info(
|
|
||||||
enable_error_info(x),
|
|
||||||
throw_function(current_function)),
|
|
||||||
throw_file(file)),
|
|
||||||
throw_line(line)));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef BOOST_NO_EXCEPTIONS
|
#ifdef BOOST_NO_EXCEPTIONS
|
||||||
|
|
||||||
void throw_exception( std::exception const & e ); // user defined
|
void throw_exception( std::exception const & e ); // user defined
|
||||||
@ -86,6 +66,26 @@ template<class E> BOOST_ATTRIBUTE_NORETURN inline void throw_exception( E const
|
|||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if !defined( BOOST_EXCEPTION_DISABLE )
|
||||||
|
namespace
|
||||||
|
exception_detail
|
||||||
|
{
|
||||||
|
template <class E>
|
||||||
|
BOOST_ATTRIBUTE_NORETURN
|
||||||
|
void
|
||||||
|
throw_exception_( E const & x, char const * current_function, char const * file, int line )
|
||||||
|
{
|
||||||
|
boost::throw_exception(
|
||||||
|
set_info(
|
||||||
|
set_info(
|
||||||
|
set_info(
|
||||||
|
enable_error_info(x),
|
||||||
|
throw_function(current_function)),
|
||||||
|
throw_file(file)),
|
||||||
|
throw_line(line)));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif
|
||||||
} // namespace boost
|
} // namespace boost
|
||||||
|
|
||||||
#endif // #ifndef BOOST_THROW_EXCEPTION_HPP_INCLUDED
|
#endif // #ifndef BOOST_THROW_EXCEPTION_HPP_INCLUDED
|
||||||
|
Reference in New Issue
Block a user