Похоже, вы неправильно поняли значение BOOST_NO_EXCEPTIONS, оно дает вам шанс выручить только так, как вы хотите, последовательным образом.
Выполнение вошло в состояние, в котором оно больше не может продолжаться, то есть, когда выдается исключение, поэтому, если пользователь определил throw_exception, то логично думать, что поведение не определено.