diff --git a/include/boost/regex/detail/regex_config.hpp b/include/boost/regex/detail/regex_config.hpp index 250fc3c9..ebe461af 100644 --- a/include/boost/regex/detail/regex_config.hpp +++ b/include/boost/regex/detail/regex_config.hpp @@ -307,10 +307,10 @@ full list of macros and their usage. # endif #endif -#ifdef _REENTRANT +#if defined(_REENTRANT) || defined(_PTHREADS) // -// several compilers define _REENTRANT when -// threading support is turned on: +// Several compilers define _REENTRANT or +// _PTHREADS when threading support is turned on: // #define BOOST_RE_THREADS #endif diff --git a/include/boost/regex/detail/regex_match.hpp b/include/boost/regex/detail/regex_match.hpp index 63af6bc7..79e8738b 100644 --- a/include/boost/regex/detail/regex_match.hpp +++ b/include/boost/regex/detail/regex_match.hpp @@ -1192,13 +1192,13 @@ unsigned int reg_grep2(Predicate foo, I first, I last, const reg_expression&) { } } #endif -#ifdef BOOST_MSVC +#if (defined(BOOST_MSVC) || defined(__ICL)) && (defined(_YVALS) || defined(_CPPLIB_VER)) namespace std{ template inline random_access_iterator_tag __cdecl @@ -370,3 +370,4 @@ typedef boost::reg_expression, jm_debug_al +