Boost logo

Boost :

Subject: Re: [boost] [inspect] exceptions (FW: [Boost-users] no exceptions)
From: Robert Kawulak (robert.kawulak_at_[hidden])
Date: 2011-03-23 19:57:57


> From: Vladimir Prus
> I fail to see how the above refutes my statement. We don't have a requirement
> that Boost libraries work with non-conforming environment.
> Nor is it required that any Boost library uses Boost.Exception.
>
> Therefore, adding no-exceptions to inspect checks -- whose primary
> purpose is to beat authors whose libraries fail those checks -- would
> be wrong.

I feel that there may be some misunderstanding regarding the motivation behind BOOST_THROW_EXCEPTION Inspect check in this thread.
First of all, Inspect is for checking "official" Boost guidelines. BOOST_THROW_EXCEPTION is obviously not such a guideline yet. What
I'm proposing is that:
1. we add using BOOST_THROW_EXCEPTION as a guideline,
2. we add a check for this guideline to Inspect.

In the context of guidelines, preferring BOOST_THROW_EXCEPTION over plain throw is NOT about supporting BOOST_NO_EXEPTIONS
platforms. Of course, if try/catch/throw are not used in the code, you get this ability for free as a bonus. That's nice too, but
that's not the main point.

The points are already explained by Emil and me:
- automatic attachment of throw site information (file/line/function), letting you guess what went wrong at a glimpse without even
needing to attach debugger in some cases,
- enabling mechanism for attaching extra information via boost::error_info and building verbose error descriptions using this
information by boost::diagnostic_information,
- enabling transfer of exceptions between threads,
- providing global customisation point of exception-throwing behaviour, just like BOOST_ASSERT does for the assert macro.

Best regards,
Robert


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk