Peter Dimov write: > > 1. The proper C++ header file is <cassert>, not <assert.h>. > > True. The "improper" header has the advantage that it's universally > available, though, and there is no other difference between the two,
I don't want to make a mountain out of a molehill, but I believe there is a difference between the two: <cassert> is part of the C++ Standard, and <assert.h> is not. Strictly speaking, use of <assert.h> is not standard-conforming, and Boost code is supposed to be standard-conforming. > Throwing an exception from BOOST_ASSERT is undesired behavior. I don't > want it as a standard option. Except that, in the case I pointed out, it sometimes is desired behavior and the Right Thing(tm) to do. One aborts an entire subcomputation / transaction rather than aborting the entire program. I expect this to be the norm, not the exception (pardon the pun), for enterprise information systems. Because it is a common, important case, it is desirable that we provide a standard solution for this case. If you like, the documentation can make it clear exactly under which circumstances use of the exception-throwing behavior is desirable, and when it is not. _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost