Boost logo

Boost :

From: Howard Hinnant (hinnant_at_[hidden])
Date: 2002-12-20 15:59:44


On Friday, December 20, 2002, at 03:21 PM, Samuel Krempp wrote:

> Checking today's boost.format regression results, there was new
> failures
> for the metrowerks compiler.
> Was it recently updated ? (now 8.3)
>
> I see boost.format is not the only lib for which the codewarrior
> regression status changed.
>
> At least in my case, codewarrior is to blame for the new failure :
>
> # 'getloc' is not a member of class 'std::basic_stringbuf<char,
> std::char_traits<char>, std::allocator<char>>'
>
> while a basic_stringbuf should inherit getloc from its basic_streambuf
> base.
>
> Is this a temporary problem ? (on the codewarrior setup, or the
> compiler itself)
> Or should workaround code be written ?

If the CodeWarrior C++ lib is linked to as a shared library, locale
support is turned off. If the C++ lib is statically linked to, there
is 100% standard locale support. This is not new behavior. You can
detect this situation with:

#ifdef _MSL_NO_LOCALE

With this defined, there is no such thing as locale, nor any of the
functions related to locale (such as getloc). The streams will
implicitly use the "C" locale even though you can no longer refer to
the "C" locale.

-Howard


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