This is an archive of the discontinued LLVM Phabricator instance.

[libc++] Support multibyte decimal_point and thousands_sep
AbandonedPublic

Authored by vangyzen on Nov 28 2016, 9:03 AM.

Details

Reviewers
EricWF
Summary

numpunct_byname<wchar_t> assumed that decimal_point and thousands_sep
were ASCII and simply copied the first byte from them. Add support
for multibyte strings in these fields.

I found this problem on FreeBSD 11, where thousands_sep in fr_FR.UTF-8
is a no-break space (U+00A0).

Event Timeline

vangyzen updated this revision to Diff 79411.Nov 28 2016, 9:03 AM
vangyzen retitled this revision from to [libc++] Support multibyte decimal_point and thousands_sep.
vangyzen updated this object.
vangyzen added a subscriber: cfe-commits.

A unit test change in D26979 found this and will continue to test it (on some OSes).

EricWF edited edge metadata.Dec 5 2016, 12:45 AM

Huh, I thought I had already fixed this but apparently I forgot to commit the patch. You can find my fix here: https://reviews.llvm.org/D24218

vangyzen abandoned this revision.Dec 5 2016, 7:47 AM

I'm abandoning this revision because D24218 is clearly superior.