Прямая компиляция примера http://www.boost.org/doc/libs/1_43_0/doc/html/boost_asio/tutorial/tutdaytime3/src.html приводит к исключению нулевого указателя во время выполнения. Трассировка стека указывает на деструктор buffer_debug_check, который содержит этот комментарий:
// Проверка итератора строки MSVC может привести к сбою в std :: string :: iterator
// деструктор объекта, когда итератор указывает на уже уничтоженный
// std :: string object, если итератор не очищен первым.
Тест #if BOOST_WORKAROUND (BOOST_MSVC,> = 1400) успешно выполняется в MSVC10 и (но) приводит к исключению пустого указателя в c: \ Program Files (x86) \ Microsoft Visual Studio 10.0 \ VC \ include \ xutility line 123
_Iterator_base12& operator=(const _Iterator_base12& _Right)
{
// assign an iterator
if (_Myproxy != _Right._Myproxy)
_Adopt(_Right._Myproxy->_Mycont);
return (*this);
}
_Right._Myproxy имеет значение NULL