some old boost version won't define BOOST_NOEXCEPT for us