$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
From: Anthony Williams (anthony.williamsNOSPAM_at_[hidden])
Date: 2003-10-31 08:35:59
"John Maddock" <john_at_[hidden]> writes:
>> I'm using VC++ 7.1 on Win2k and I have build the regex and thread libs
>> using the IDE which means that /Zc:wchar_t is not by default enabled. Are
>> you
>> saying that it should be? Is this true for both libs or just regex? I mean
>> I'm having these
>> settings for some time now and everything worked just fine ... and I'm not
>> sure if
>> I should really add the /Zc:wchar_t to these libs.
>
> No, you should build the libraries with the same settings that your project
> will use, if your project doesn't use /Zc:wchat_t then neither must your lib
> builds.
>
> What I'm trying to determine is what the default behaviour of the Boost
> build system should be.
IMHO, the build system is correct as-is --- require /Zc:wchar_t, since you
cannot reliably build a non-trivial application that uses wchar_t as a typedef
for unsigned short without lots of hacks. e.g.
WORD x=someIntegerReturnedFromWin32API();
std::string s=boost::lexical_cast<std::string>(x);
fails without /Zc:wchar_t on 1.30.0. This is fixed for 1.30.2, but how much
other code has the same problems?
I would recommend that VC7.1 users *always* have /Zc:wchar_t set unless they
have a good reason not to, regardless whether or not they use boost.
Anthony
-- Anthony Williams Senior Software Engineer, Beran Instruments Ltd. Remove NOSPAM when replying, for timely response.