Boost logo

Boost Users :

Subject: Re: [Boost-users] no exceptions
From: Emil Dotchevski (emildotchevski_at_[hidden])
Date: 2011-03-30 18:41:02


On Wed, Mar 30, 2011 at 3:16 PM, Hochhaus, Andrew
<ahochhaus_at_[hidden]> wrote:
> Thanks Emil.
>
> On Mon, Mar 21, 2011 at 7:01 PM, Emil Dotchevski
> <emildotchevski_at_[hidden]> wrote:
>>> 2) What is the "recommended" way to throw exceptions inside boost
>>> library code (BOOST_THROW_EXCEPTION, boost::throw_exception, etc)?
>>
>> For BOOST_NO_EXCEPTIONS to work, it is sufficient to use
>> boost::throw_exception to throw. However, it is recommended to use
>> BOOST_THROW_EXCEPTION instead, which has the benefit of storing the
>> file and line number into the exception object. See
>> http://www.boost.org/doc/libs/release/libs/exception/doc/BOOST_THROW_EXCEPTION.html.
>
> That is what I was hoping for.
>
>>> 3) If this is not intended behavior, would incremental patches to
>>> remove these dependencies be considered for inclusion?
>>
>> You mean dependencies on boost/throw_exception.hpp? I'd think that
>> patches that convert naked throws to BOOST_THROW_EXCEPTION should be
>> accepted, since the boost/throw_exception.hpp header is extremely
>> lightweight.
>
> Yes. I'm hoping to convert naked throws to BOOST_THROW_EXCEPTION.
>
> While I'm at it, any reason why naked {try,catch} shouldn't also be
> converted to BOOST_{TRY,CATCH,CATCH_END}?

Yes. See the long discussion we had about that issue. :)

My personal opinion is that all throws in Boost should use
BOOST_THROW_EXCEPTION, because otherwise we're taking away
functionality that might be critical for some users of a library.
Beyond that, I don't think we should be converting try...catch uses
blindly.

Emil Dotchevski
Reverge Studios, Inc.
http://www.revergestudios.com/reblog/index.php?n=ReCode


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net