forked from boostorg/throw_exception
Add boost::throw_exception overload taking a boost::source_location; use it in BOOST_THROW_EXCEPTION
This commit is contained in:
1 parent
43a57d518c
commit
dad5cb4ed3
3 files changed
+160
-108
No files matched your search
@@ -473,51 +473,6 @@ boost
|
||||
{
|
||||
return exception_detail::clone_impl<T>(x);
|
||||
}
|
||||
|
||||
template <class T>
|
||||
struct
|
||||
BOOST_SYMBOL_VISIBLE
|
||||
wrapexcept:
|
||||
public exception_detail::clone_impl<typename exception_detail::enable_error_info_return_type<T>::type>
|
||||
{
|
||||
typedef exception_detail::clone_impl<typename exception_detail::enable_error_info_return_type<T>::type> base_type;
|
||||
public:
|
||||
explicit
|
||||
wrapexcept( typename exception_detail::enable_error_info_return_type<T>::type const & x ):
|
||||
base_type( x )
|
||||
{
|
||||
}
|
||||
|
||||
~wrapexcept() BOOST_NOEXCEPT_OR_NOTHROW
|
||||
{
|
||||
}
|
||||
};
|
||||
|
||||
namespace
|
||||
exception_detail
|
||||
{
|
||||
template <class T>
|
||||
struct
|
||||
remove_error_info_injector
|
||||
{
|
||||
typedef T type;
|
||||
};
|
||||
|
||||
template <class T>
|
||||
struct
|
||||
remove_error_info_injector< error_info_injector<T> >
|
||||
{
|
||||
typedef T type;
|
||||
};
|
||||
|
||||
template <class T>
|
||||
inline
|
||||
wrapexcept<typename remove_error_info_injector<T>::type>
|
||||
enable_both( T const & x )
|
||||
{
|
||||
return wrapexcept<typename remove_error_info_injector<T>::type>( enable_error_info( x ) );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#if defined(_MSC_VER) && !defined(BOOST_EXCEPTION_ENABLE_WARNINGS)
|
||||
|
||||
Reference in new issue
Block a user