views:

72

answers:

0

A straight compilation of example http://www.boost.org/doc/libs/1_43_0/doc/html/boost_asio/tutorial/tutdaytime3/src.html results in a runtime null pointer exception. Stack trace points to the buffer_debug_check destructor which contains this comment:

// MSVC's string iterator checking may crash in a std::string::iterator // object's destructor when the iterator points to an already-destroyed // std::string object, unless the iterator is cleared first.

The test #if BOOST_WORKAROUND(BOOST_MSVC, >= 1400) succeeds in MSVC10 and (but) results in a null pointer exception in 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 is NULL