It was added in 668b3fc to fix lexical_cast (https://svn.boost.org/trac10/ticket/4115) problem, but that seems to be an overkill (and probably not needed since boostorg/lexical_cast@3ce36a2?).
Also, it is a strange thing that with defined BOOST_NO_STD_TYPEINFO there is std::typeinfo. It completely undermines the purpose of the macro and of boost/core/typeinfo.hpp.