Boost logo

Boost :

From: Gennaro Prota (gennaro_prota_at_[hidden])
Date: 2004-05-30 04:58:16


On Mon, 24 May 2004 10:15:43 -0400, Howard Hinnant
<hinnant_at_[hidden]> wrote:

>On May 23, 2004, at 5:33 AM, Gennaro Prota wrote:
>[...]
>> Since I test for BOOST_NO_STD_LOCALE before #including it may well be
>> that <locale> is not getting included :) But why everything works with
>> CW 9.2 instead? Can you please confirm that _MSL_NO_LOCALE is defined
>> for version 8.3 and not for 9.2?
>
>That is correct, for building/using the std::lib in a DLL
>configuration. When linking statically to the std::lib, _MSL_NO_LOCALE
>is not defined for either release. When _MSL_NO_LOCALE is defined,
>that means that facets (such as ctype) don't exist as well. In a
>nutshell, chapter 22 disappears, along with everything that appears in
>the <locale> synopsis.

I've committed a quick fix now. I'm not proud of it, but let's see if
it works first. Among other things, I've simply *disabled* the wchar_t
tests when BOOST_NO_STD_LOCALE is defined. I don't like this at all:
it implies we have different sets of tests for different platforms and
even let libraries that do not support <locale> appear better (in the
regression logs) than libraries that support it with some failures. Is
there any boost policy for this? Maybe I should put the wchar_t tests
in a separate file and mark that one as unusable for platforms with no
<locale> support? Still, for Metrowerks that would be a problem,
because the library, in general, *does* support locale; it just
disables it in some configurations.

Genny.


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