|
Boost : |
From: David Abrahams (dave_at_[hidden])
Date: 2006-06-14 17:44:46
Tanguy Fautre <tanguy.fautre_at_[hidden]> writes:
> Hi,
>
> Currently with Boost 1.33.1 and Visual C++ 2005, the libraries are
> compiled with the default _SECURE_SCL=1 value, which means Boost *.lib
> and *.dll files are compiled with checked iterator enabled.
>
> When an application using Boost is compiled with _SECURE_SCL=1 too,
> everything is fine.
>
> However, all hell breaks loose when the application is compiled with
> _SECURE_SCL=0 (which is the case of our projects). The problem arises
> because apparently the iterator implementation and structure is different.
>
> Therefore any call to Boost *.lib or *.dll functions with an iterator
> passed as an argument will result in a weird and unexplained crash (I
> first got the problem when using Boost.Signals).
>
>
> Because Visual C++ 2005 checked iterators are not Standard C++
> compliant, I think that it ought to be possible to disable them when
> compiling Boost (e.g. using an additional bjam variable in the vc-8_0
> toolset?).
Heh, I think we ought to think very carefully about changing our
default.
-- Dave Abrahams Boost Consulting www.boost-consulting.com
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk