Boost logo

Boost :

Subject: Re: [boost] [serialization] [libstdc++] [detail] utf8_codecvt_facet fixes broke serialization test_array_xml_warchive
From: Robert Ramey (ramey_at_[hidden])
Date: 2014-09-05 16:02:59


Beman Dawes wrote
> On Thu, Sep 4, 2014 at 11:59 AM, Robert Ramey <

> ramey@

> > wrote:
>
> Does any Boost library other than serialization try to switch between
> boost:: and std:: versions?

I'm just trying to make sure that the serialization library works on both
C++O3 and C++11 systems.

Support for utf8_codecvt is different for the libraries which come withe
systems. On many platforms, C++11 includes std support for utf8_codecvt and
that's what I use if it exists. While C++03 libraries don't come with such
support. And those that did had inconsistent interfaces. I made changes
which use config to select the std version if the library supports it and
the boost version otherwise. That was the only way I saw to avoid
invalidating all existing files created with the serialization library.

>> A better solution might be a new library for codecvt facets.
>> There
>> is a rich opportunity here.
>
> Why? Microsoft, for example, ships codecvt facets for 79 character sets,
> including the difficult Asian character sets. Why should boost try to
> duplicate the work that vendors have already done, particularly when
> Unicode become predominate.?

the codecvt interface is quite general purpose and could be used for a lot
of other things like translating binary data into base64. This could be
used to decouple things like base64 from the user program and just make it a
component of the stream buffer. Also there's the possibility of making a
codecvt composer such that other codecvt types could be piped together.
Basically, it would be a kit including a set of stream transformation
primitives which could be arbitrarily composed to generate a more complex
stream. FWIW that's what I had in mind.

RObert Ramey

--
View this message in context: http://boost.2283326.n4.nabble.com/serialization-libstdc-detail-utf8-codecvt-facet-fixes-broke-serialization-test-array-xml-warchive-tp4667261p4667299.html
Sent from the Boost - Dev mailing list archive at Nabble.com.

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