id summary reporter owner description type status milestone component version severity resolution keywords cc 5604 Boost.Phoenix: Provide access to thrown exception in catch handler Stuart Dootson Thomas Heller "I've been using Phoenix (the one that came with 1.44 - that's Phoenix v2?) for a bit, as a Boost.Lambda replacement, mostly happily. But I've come across a scenario I don't think Phoenix caters for, namely accessing an exception from a catch_ body, something like this: {{{ std::vector errors; using namespace boost::phoenix; using namespace boost::phoenix::arg_names; std::for_each(changes.begin(), changes.end(), try_ [ bind(&SomeClass::AddChange, this, arg1, std::string()) ] .catch_()` [ push_back(ref(errors), bind(&std::runtime_error::what, /* Can I access the exception that's been thrown? */)) ]); }}} I want to aggregate any error information thrown by {{{SomeClass::AddChange}}} in the {{{errors}}} vector, to be rethrown after the for_each. In Boost.Lambda, I'd be able to use the `_e` placeholder to access the exception object, but there seems to be no way of doing so in Phoenix? Adding a similar placeholder to give access to the exception object would be a very useful addition to Phoenix..." Feature Requests closed phoenix Boost 1.47.0 Problem fixed exception placeholder braden@…