Boost logo

Boost :

Subject: Re: [boost] [C++0x] Emulate C++0x char16_t, char32_t, std::u16string, and std::u32string
From: Beman Dawes (bdawes_at_[hidden])
Date: 2011-07-21 22:13:25


On Thu, Jul 21, 2011 at 5:35 PM, Mathias Gaunard
<mathias.gaunard_at_[hidden]> wrote:
> On 07/21/2011 04:58 PM, Beman Dawes wrote:
>
>> But consider this... The two most widely used compilers, GCC and VC++,
>> are already shipping with char16_t and char32_t in the global
>> namespace. GCC via actual keywords, VC++ via typedefs. So other
>> compilers are bound to soon follow. Thus it seems a bit of a detour
>> for boost to introduce boost::char16_t/boost::char32_t.
>
> Note that you can't have boost::char16_t, since char16_t is a keyword.

Right, instead you have to write BOOST_CHAR16_T, which is defined as
boost::char16_t or char16_t depending on availability of C++0x or
Microsoft char16_t. Ugly. Ugly. Ugly.

The filesystem path POSIX implementation of the char16_t/char32_t
support is underway, still using the header I posted. No problems so
far.

--Beman


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