Boost logo

Boost :

Subject: [boost] Compiling 64bit regex 1.37.0 with VS2005
From: Foster Brereton (fosterb.boost_at_[hidden])
Date: 2008-11-13 20:20:44


Hi,

I've been looking around for potential issues I may have missed but
have found none, so I thought I'd ask the list. I am trying to compile
the regex library from 1.37.0 using MSVC2005. This used to work for
boost 1.36.0, but does not anymore. The extended error set I have
pasted here for email brevity:

http://pastebin.com/md368403

The start of the errors I'm seeing are:

usinstances.cpp
C:\boost_libraries\libs\regex\src\usinstances.cpp(47) : error C2910:
'std::char_traits<wchar_t>::length' : cannot be explicitly specialized
...
wc_regex_traits.cpp
C:\boost_libraries\libs\regex\src\wc_regex_traits.cpp(48) : error
C2910: 'std::char_traits<wchar_t>::length' : cannot be explicitly
specialized
...

... the really strange thing is, those lines read as follows:

template<> BOOST_REGEX_STDLIB_DECL std::size_t __cdecl
char_traits<unsigned short>::length(unsigned short const*);
...and...
template<> BOOST_REGEX_STDLIB_DECL std::size_t __cdecl
char_traits<unsigned short>::length(unsigned short const*);

... respectively, and make no mention of wchar_t.

My project settings are as follows:

/Od /I "." /I "." /D "DVA_COCOA_UI=0" /D "BOOST_ALL_DYN_LINK" /D
"BOOST_ALL_NO_LIB" /D "_WINDOWS" /D "MSWindows" /D
"_CRT_SECURE_NO_DEPRECATE" /D "_SCL_SECURE_NO_DEPRECATE" /D
"BOOST_THREAD_BUILD_DLL" /D "BOOST_REGEX_USE_CPP_LOCALE" /D
"BOOST_NO_WREGEX" /D "BOOST_REGEX_RECURSIVE" /D "BOOST_REGEX_NO_LIB"
/D "DEBUG=1" /D "_DEBUG" /D "_WINDLL" /D "_UNICODE" /D "UNICODE" /GF
/FD /EHsc /RTC1 /MDd /Zp8 /Gy /Zc:wchar_t-
/Fo"..\..\obj\win\debug\64/"
/Fd"..\..\lib\win\debug\64/boost_regex.pdb" /W3 /nologo /c /Zi /TP
/wd4355 /errorReport:prompt

I'm compiling with wchar_t support turned off, and am defining
BOOST_NO_WREGEX in an attempt to state as much explicitly for the
library. (I couldn't find much documentation about disabling wchar_t
support for the regex library explicitly).

Does anyone have any pointers to guide me in the direction I should go
to get this building again under a 64-bit environment? Thanks in
advance for the help,

Blessings,
Foster

-- 
Foster T. Brereton
Adobe Systems Incorporated
fbrereto_at_[hidden]

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk