
On 06/22/2012 02:23 PM, Stewart, Robert wrote:
In hindsight, I agree with Robert's assertion that there should have been a replacement function, boost::exception::throw_exception() or similar, to introduce the new functionality. Whether the existing function needed to be deprecated is a separate issue. The result is that libraries could knowingly choose the new version, and a dependency on Boost.Exception, or, if warranted, stick with the old.
That would be a terrible idea. The whole point of the system is that there is a single place where you enable Boost.Exception support for all libraries. If some libraries were allowed to stick to non-Boost.Exception-enabled boost::throw_exception, then you couldn't transfer those exceptions between threads.