...one of the most highly
regarded and expertly designed C++ library projects in the
world. — Herb Sutter and Andrei
// In header: <boost/container/throw_exception.hpp> BOOST_NORETURN void throw_logic_error(const char * str);
Exception callback called by Boost.Container to report errors in the internal logical of the program, such as violation of logical preconditions or class invariants.
If BOOST_NO_EXCEPTIONS is NOT defined
std::logic_error(str) is thrown.
If BOOST_NO_EXCEPTIONS is defined and BOOST_CONTAINER_USER_DEFINED_THROW_CALLBACKS is NOT defined
BOOST_ASSERT_MSG(!"boost::container logic_error thrown", str) is called and
std::abort() if the former returns.
If BOOST_NO_EXCEPTIONS and BOOST_CONTAINER_USER_DEFINED_THROW_CALLBACKS are defined the user must provide an implementation and the function should not return.