Boost logo

Boost :

Subject: Re: [boost] Boost.Process 0.5: Another update/potential candidate for an official library
From: Alexander Lamaison (awl03_at_[hidden])
Date: 2012-11-15 13:55:58


Yakov Galka <ybungalobill_at_[hidden]> writes:

> On Thu, Nov 15, 2012 at 8:05 PM, Alexander Lamaison <awl03_at_[hidden]>wrote:
>
>> [...]
>> Every C++ runtime implementation, every C++ standard library
>> implementation
>
> Likely to be true at this point in time (although non of us can check
> *every* C++ runtime), but I know plans to do otherwise.
>
>
>> and other Boost libraries on Windows
>
> AFAIK not boost.locale.

I wasn't aware of this but you are right. Hmmmm, perhaps, as
consistency is already lost we should just give up and use UTF-8
unilaterlly.

> [...] it is at least consistent.
>
> So does using UTF-8 everywhere.

That would indeed be consistent, but, alas, it isn't possible without
the consent of the compiler/STL which doesn't seem to be forthcoming.
So what do you do when you need at pass a string to the C++ runtime or
standard library? (Yes, I'm aware of Artyom's Nowide library due for
review but, as far as I'm aware, that doesn't replace all C++/STL
functions that take strings).

> Also there will not be confusion if, as I said, it is done as a
> compile-time switch.

There will still be confusion in the situation I mentioned above where
you have to pass your UTF-8 string to the C++ library. You would be
forced to use something like Boost.Locale to convert your string to the
local codepage and vice verse at the interface between your code and the
C++ library. Yuk.

Alex


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