
On 06/22/2012 11:30 AM, Fabio Fracassi wrote:
Yes it is, because in reality boost exception solves problems for the users of any library that uses it. When using boost exception I can safely let exceptions escape threads and have them rethrown in the starting thread, for instance.
I use this heavily and it works great while simplifying code considerably. Got rid of bubbling errors and multiple ways to do exceptions/errors. When the unified boost exceptions came into existence tried them and immediately found a difference in code style, code size, readability and code maintenance. Boost threads, smart pointers, unified exceptions, timers, etc. improved C++ multi-thread programming for me considerably. And now boost threads and exceptions are working with the same code on Windows, Mac and Linux with all gnu compile.
... It has a real and important reason, because it unifies boost exception handling, nearly for free. The few boost libraries which do not use it, serialization most notably, cause trouble because they need extra care to make exception handling well behaved.
Catching and handling is now so much better it is good to reflect on what was achieved since ~1.38