Boost を使用していますが、元の例外が発生しないことexception_ptr
を観察しています。rethrow_exception(ptr)
私はこれにそれを調理しました:
struct error : virtual std::exception, virtual boost::exception {};
try {
boost::exception_ptr ptr(boost::copy_exception(error()));
boost::rethrow_exception(ptr);
}
catch(boost::exception& e) {
// e is a boost::exception_detail::clone_impl<error>
}
e
typeerror
ではなくtype であってはなりませんclone_impl
か?
Boost 1.49.0 を使用しています。