
On Tue, Jul 1, 2008 at 1:53 PM, Daniel James <daniel_james@fmail.co.uk> wrote:
On 01/07/2008, Emil Dotchevski <emil@revergestudios.com> wrote:
It is possible to disable the data-transporting functionality only, leaving the exception_ptr functionality available even with BOOST_NO_TYPEID, but compilers need some RTTI functionality to implement exception handling so I am not sure if an exception handling library makes sense at all when RTTI is disabled.
Exceptions seem to work in g++ with RTTI disabled.
Catch needs to discriminate between different exception types in a way similar to dynamic_cast, except that unlike dynamic_cast, it needs to work for objects of non-polymorphic types as well. That's what I was referring to.
I think the best option is to #define BOOST_EXCEPTION_DISABLE if BOOST_NO_TYPEID is defined.
This seems very disruptive. If that's the only solution then, at this stage in the release cycle, it might be better to just leave things as they are and live with the regression (it's for an undocumented feature, so I don't think it's a show stopper).
It seems pretty straight forward to me, my only question was what's the right way to do this since I don't know much about configuring Boost. Emil Dotchevski Reverge Studios, Inc. http://www.revergestudios.com/reblog/index.php?n=ReCode