
on Wed Aug 27 2008, "Felipe Magno de Almeida" <felipe.m.almeida-AT-gmail.com> wrote:
On Wed, Aug 27, 2008 at 3:13 PM, David Abrahams <dave@boostpro.com> wrote:
on Wed Aug 27 2008, "Robert Ramey" <ramey-AT-rrsd.com> wrote:
[snip]
The most gauling was that when i pointed this out, no one seemed to see this as a problem.
Maybe the right people weren't reading your post.
In fact, there was no acknowedgement that this was even an error. and no promise to fix it. I got the feeling that the author thought this to be perfectly legitimate given the new superior features (which are required by current users) and that I should plan for future episodes of this nature.
Well, I really hope I'm missing something, but from the evidence I see before me, this was at least not handled well. We have a Boost-wide convention that libraries wanting to report errors on compilers with no exceptions support use boost::throw_exception. The change of boost::throw_exception essentially made a Boost-wide policy decision that such libraries, when they *do* throw, will integrate the Boost.Exception machinery. That shouldn't have happened without a broader discussion.
AFAIK, the boost was never meant to be used without RTTI without defining BOOST_NO_RTTI. So that I don't see how Boost.Exception is violating boost::throw_exception requirements. AFAIU, boost::throw_exception disables (if it doesn't, then I would call it a bug) boost.exception use when defining BOOST_NO_RTTI.
Yes, that's what it seems to do. I had looked in the wrong place (Boost.Exception's own headers) for mentions of BOOST_NO_RTTI and didn't see any. It doesn't change my overall point, though. -- Dave Abrahams BoostPro Computing http://www.boostpro.com