Boost logo

Boost :

From: Gennaro Prota (gennaro_prota_at_[hidden])
Date: 2002-08-31 12:53:59


A simple question: I'm rewriting the stream inserter and the stream
extractor for dynamic_bitset. Having a need for widening the
characters '0' and '1' I have used BOOST_USE_FACET:

  Ch const zero = BOOST_USE_FACET(std::ctype<Ch>, loc).widen('0');
  Ch const one = BOOST_USE_FACET(std::ctype<Ch>, loc).widen('1');

Anyhow the code fails to compile on VC++ 6.0 with STLport 4.5.3
because BOOST_USE_FACET is not defined at all. Of course it should.
BTW in this situation one can just use the standard syntax.

The problem seems to be that BOOST_NO_STD_LOCALE gets defined
somewhere (note that I use SGI IOStreams), thus config/suffix.hpp
defines BOOST_NO_STD_USE_FACET but finds none of
   BOOST_HAS_TWO_ARG_USE_FACET,
   BOOST_HAS_MACRO_USE_FACET,
   BOOST_HAS_STLP_USE_FACET

defined to select the appropriate definition for BOOST_USE_FACET.

Why BOOST_NO_STD_LOCALE gets defined?

Genny.


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