diff --git a/include/boost/regex/config.hpp b/include/boost/regex/config.hpp index cc783a0b..db35fbd3 100644 --- a/include/boost/regex/config.hpp +++ b/include/boost/regex/config.hpp @@ -18,10 +18,10 @@ #ifndef BOOST_REGEX_CONFIG_HPP #define BOOST_REGEX_CONFIG_HPP -// -// Borland C++ Fix/error check -// this has to go *before* we include any std lib headers: -// +/* + Borland C++ Fix/error check + this has to go *before* we include any std lib headers: +*/ #if defined(__BORLANDC__) # include #endif @@ -60,11 +60,11 @@ # include # endif #else - // - // C build, - // don't include because that may - // do C++ specific things in future... - // + /* + * C build, + * don't include because that may + * do C++ specific things in future... + */ # include # include # ifdef _MSC_VER @@ -81,24 +81,24 @@ /* Obsolete macro, use BOOST_VERSION instead: */ #define BOOST_RE_VERSION 320 -// fix: +/* fix: */ #if defined(_UNICODE) && !defined(UNICODE) #define UNICODE #endif -// -// If there isn't good enough wide character support then there will -// be no wide character regular expressions: -// +/* +* If there isn't good enough wide character support then there will +* be no wide character regular expressions: +*/ #if (defined(BOOST_NO_CWCHAR) || defined(BOOST_NO_CWCTYPE) || defined(BOOST_NO_STD_WSTRING)) # if !defined(BOOST_NO_WREGEX) # define BOOST_NO_WREGEX # endif #else # if defined(__sgi) && (defined(__SGI_STL_PORT) || defined(_STLPORT_VERSION)) - // STLPort on IRIX is misconfigured: does not compile - // as a temporary fix include instead and prevent inclusion - // of STLPort version of + /* STLPort on IRIX is misconfigured: does not compile + * as a temporary fix include instead and prevent inclusion + * of STLPort version of */ # include # define __STLPORT_CWCTYPE # define _STLP_CWCTYPE @@ -110,34 +110,34 @@ #endif -// -// If Win32 support has been disabled for boost in general, then -// it is for regex in particular: -// +/* +* If Win32 support has been disabled for boost in general, then +* it is for regex in particular: +*/ #if defined(BOOST_DISABLE_WIN32) && !defined(BOOST_REGEX_NO_W32) # define BOOST_REGEX_NO_W32 #endif -// some versions of gcc can't merge template instances: +/* some versions of gcc can't merge template instances: */ #if defined(__CYGWIN__) # define BOOST_REGEX_NO_TEMPLATE_SWITCH_MERGE #endif -// fix problems with bool as a macro, -// this probably doesn't affect any current compilers: +/* fix problems with bool as a macro, +* this probably doesn't affect any current compilers: */ #if defined(bool) || defined(true) || defined(false) # define BOOST_REGEX_NO_BOOL #endif -// We don't make our templates external if the compiler -// can't handle it: +/* We don't make our templates external if the compiler + can't handle it: */ #if (defined(BOOST_NO_MEMBER_FUNCTION_SPECIALIZATIONS) || defined(__HP_aCC) || defined(__MWERKS__) || defined(__COMO__) || defined(BOOST_INTEL))\ && !defined(BOOST_MSVC) && !defined(__BORLANDC__) # define BOOST_REGEX_NO_EXTERNAL_TEMPLATES #endif -// disable our own file-iterators and mapfiles if we can't -// support them: +/* disable our own file-iterators and mapfiles if we can't + support them: */ #if !defined(BOOST_HAS_DIRENT_H) && !(defined(_WIN32) && !defined(BOOST_REGEX_NO_W32)) # define BOOST_REGEX_NO_FILEITER #endif diff --git a/include/boost/regex/v4/cregex.hpp b/include/boost/regex/v4/cregex.hpp index 903aa165..c1313e37 100644 --- a/include/boost/regex/v4/cregex.hpp +++ b/include/boost/regex/v4/cregex.hpp @@ -252,8 +252,11 @@ public: std::string What(int i = 0)const; std::string operator[](int i)const { return What(i); } +#ifdef __MINGW32__ + static const std::size_t npos = ~0u; +#else static const std::size_t npos; - +#endif friend struct re_detail::pred1; friend struct re_detail::pred2; friend struct re_detail::pred3;