#include <boost/exception_ptr.hpp>
namespace boost { template <class T> exception_ptr copy_exception( T const & e ); }
As if
try { throw enable_current_exception(e); } catch(...) { return current_exception(); }