Wide character support?

Beman Dawes bdawes@acm.org
Sat May 28 15:24:00 GMT 2005

"Artem B. Bityuckiy" <dedekind@yandex.ru> wrote in message 
> Hello,
> Beman Dawes wrote:
>> I'd like to be able to use the C++ standard library std::wstring with 
>> Cygwin.
>> What would be involved in adding wide character support to newlib?  In a 
>> cgywin mailing list posting Christopher Faylor indicated that this is 
>> what is needed.
> 2 years ago I worked on this issue. You need NLS support in Newlib to make 
> use of C++ wstring stuff.
> What I did:
> 1. Ported the Iconv library to Newlib. Iconv is the heart of NLS. It is 
> currently in Newlib CVS. Perhaps, it isn't ideal, but it worked.
> 2. Implemented mblen() and friends.
> 3. Implemented wc<->mb convertion functions (mbtowc(), mbstowcs(), etc).
> 4. Added full wide-char support to vscanf()/vprintf() serites (%S, etc).
> 2,3,4 is not in the Newlib repositiry. But it worked quite stably AFAIR.
> I'm not involved in the area anymore and I have no energy to complete the 
> work, sorry. I may share what I've done with you if you wish to implement 
> the NLS stuff for Newlib.

I don't know yet. I'm trying to get an idea of how much effort would be 
involved, and if the Newlib folks are interested.

My main motivation is that lack of wide character support in Cygwin prevents 
Boost (www.boost.org) C++ developers from testing on Windows with GCC, and 
prevents Boost users from getting the full benefit of the Boost libraries 
with Cygwin. This is unfortunate. So if wide character support could be 
added without a major effort, I would be willing to work on it, perhaps with 
the help of some of the other Boost developers.


More information about the Newlib mailing list