|
Boost : |
Subject: Re: [boost] [RFC] Boost library name mangling and Microsoft's 'secure STL' feature.
From: Sebastian Redl (sebastian.redl_at_[hidden])
Date: 2008-09-04 10:13:07
David Abrahams wrote:
> on Thu Sep 04 2008, "Giovanni Piero Deretta" <gpderetta-AT-gmail.com> wrote:
>
>
>> 2008/9/4 Sebastian Redl <sebastian.redl_at_[hidden]>:
>>
>>> Jurko GospodnetiÄ wrote:
>>>
>>>> First some collected background information related to Microsoft's
>>>> checked & debugging iterator support to get a clearer image of what we are
>>>> modeling. And could someone please collect a similar summary for other
>>>> compilers/libraries?
>>>>
>>> Just a quick note: GCC's scheme works thus:
>>>
>>> 1) If _GLIBCXX_DEBUG is defined, the debug containers are made available.
>>> 2) These containers lie in the std::__debug namespace. To actually use them,
>>> the programmer needs to somehow use them explicitly. This can be done
>>> through using statements or declarations, through typedefs, or namespace
>>> aliases. There is no macro or compiler switch that replaces the normal
>>> containers automatically.
>>>
>>> It is therefore an explicit choice by the programmer to use those
>>> containers, for every individual usage. No switching in the build system is
>>> necessary or even possible.
>>>
>> Eh? I'm fairly sure that if the macro is defined, standard containers
>> are replaced by their debug counterpart. This is all you need to do to
>> enable debugging (I have caught many bugs in my code just by defining
>> that macro).
>>
>
> That's my experience too.
>
>
You're right, sorry. There's a strong using statement importing the
entire debug namespace in debug mode.
Sebastian
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk