<div><ul><li> If <tt>BOOST_NO_EXCEPTIONS</tt> is not defined, <tt>boost::<spanclass="RenoLink"><ahref="throw_exception.html">throw_exception</a></span>(e)</tt> is equivalent to <tt>throw boost::<spanclass="RenoLink"><ahref="enable_current_exception.html">enable_current_exception</a></span>(boost::<spanclass="RenoLink"><ahref="enable_error_info.html">enable_error_info</a></span>(e))</tt>, unless <tt>BOOST_EXCEPTION_DISABLE</tt> is defined, in which case <tt>boost::<spanclass="RenoLink"><ahref="throw_exception.html">throw_exception</a></span>(e)</tt> is equivalent to <tt>throw e;</tt></li>
<li> If <tt>BOOST_NO_EXCEPTIONS</tt> is defined, the function is left undefined, and the user is expected to supply an appropriate definition. Callers of <tt>throw_exception</tt> are allowed to assume that the function never returns; therefore, if the user-defined <tt>throw_exception</tt> returns, the behavior is undefined.</li>