Recently I begin to use stlport in my programs, and I want to build boost regex under win32 using vc6 and stlport 5.0. But when I build them,the following errors occurs: C:\lib\boost-1.30.2\libs\regex\build>set MSVCDIR= D:\Program Files\Microsoft Visual Studio\VC98\Bin C:\lib\boost-1.30.2\libs\regex\build>set STLPORT_PATH=E:/HuangLiang/c++stl/STLport-5.0-1031 C:\lib\boost-1.30.2\libs\regex\build>nmake -fvc6-stlport.mak cl /nologo /MT /W3 /GX /O2 /GB /GF /Gy /IE:/HuangLiang/c++stl/STLport-5.0-1031\stlport /I..\..\..\ /D_MT /DWIN32 /DNDEBUG /D_MBCS /D_LIB /YX /FD /c -Fpvc6-stlport/boost_regex_vc6-stlport_mss/boost_regex_vc6-stlport_mss.pch -Fo./vc6-stlport/boost_regex_vc6-stlport_mss/ -Fdvc6-stlport/boost_regex_vc6-stlport_mss.pdb ../src/cpp_regex_traits.cpp cpp_regex_traits.cpp ../src/cpp_regex_traits.cpp(662) : error C2660: 'isspace' : function does not take 2 parameters ../src/cpp_regex_traits.cpp(662) : fatal error C1903: unable to recover from previous error(s); stopping compilation After I searched msdn, I found that isspace have been defined at 2 places: isspace template<class E> bool isspace(E c, const locale& loc) const; The template function returns use_facet< ctype<E> >(loc). is(ctype<E>:: space, c). and in ctype.h. I remember when I compile regex using vc6 without stlport, no same errors occured. I need some help about what has happened with me. Thank you !