Boost logo

Boost :

Subject: [boost] [C++0x] Emulate C++0x char16_t, char32_t, std::u16string, and std::u32string
From: Beman Dawes (bdawes_at_[hidden])
Date: 2011-07-20 16:27:38


I'm starting to fold in Boost.Filesystem support for the new C++0x
character types. Support is emulated for compilers and standard
libraries not currently supporting the 0x features. The emulation is
working fine, with tests passing on Windows for GCC 4.5 and 4.6, and
VC++ 8, 9, and 10. Haven't tested on non-Windows systems yet.

This is the same emulation approach Microsoft ships in VC++ 10.

It seems to me that all Boost libraries that want to emulate these 0X
features should use the a unified approach. Otherwise we could get
into a situation where libraries A and B worked fine in isolation, but
had symbol or ODR clashes when used together.

The header I'm using is attached. I propose to place this in
<boost/string_0x.hpp> rather than, say,
<boost/filesystem/detail/string_0x.hpp>, and providing a simple doc
page.

Does this make sense?

--Beman




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