Subject: Re: [boost] [msvc] disable 64-bit warning
From: Gennaro Prota (gennaro.prota_at_[hidden])
Date: 2008-09-12 13:15:11
Jürgen Hunold wrote:
> Hi !
> When compiling Boost with address-model=64, some libraries issue msvc-warning
> BOOST_ROOT\boost/config/abi_prefix.hpp(19) : warning
> C4103: 'BOOST_ROOT\boost\config\abi_prefix.hpp' : alignment changed after
> including header, may be due to missing #pragma pack(pop)
> See msvc_9_4103.txt for a full dump using
> bjam -a -q address-mode=64 -WX
> Those libraries are:
> - system
> - filesystem
> - serialization
> - wave
> Please find the necessary patches attached.
> Additionaly, I've added _SCL_SECURE_NO_WARNINGS to
> serialization and changed wave to always set _SCL_SECURE_NO_DEPRECATE and
> _CRT_SECURE_NO_DEPRECATE regardless of the compiler version. This should
> silence those warning for the msvc incarnation, too.
> Okay to commit ?
> Comments ?
Just two points (anyhow, please wait for someone who is more familiar with the
latest Boost directions to weigh in):
* I think it's safer to disable/re-enable the warning as "locally"
as possible; in this case, in msvc_prefix.hpp and msvc_suffix.hpp.
* the few times I use VC++, I just disable C4996; I see that Boost
has a warning_disable.hpp, instead. You might want to look at the
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk