On Wed, Aug 13, 2008 at 12:00 PM, Robert Ramey
Emil Dotchevski wrote:
A small piece of Boost Exception is integrated in boost::throw_exception, so any Boost library that throws exceptions introduces this dependency by default.
To disable the Boost Exception integration in boost::throw_exception, #define BOOST_EXCEPTION_DISABLE. Because Boost Exception requires RTTI, #defining BOOST_NO_TYPEID has the same effect.
Hmmm, so how does Boost exception behave on systems which don't support RTTI?
That is, can one assume that it's functionality will degrade gracefully in environments where RTTI is not supported?
It depends what you mean by degrade gracefully, but I suppose the answer is "no". As it is now, RTTI is required by Boost Exception. It is possible be more selective in disabling just the parts of Boost Exception that actually use typeid, but this is not done in 1.36. Isn't this a rare configuration anyway, that disables RTTI but enables exceptions? I mean, some form of RTTI is needed for exception handling anyway so it's not completely turned off as long as exceptions are enabled. Emil Dotchevski Reverge Studios, Inc. http://www.revergestudios.com/reblog/index.php?n=ReCode