Opened 7 years ago
Last modified 7 years ago
#11651 new Bugs
boost::to_upper and boost::to_lower damages non ascii-charasters in std::u32string
Reported by: | anonymous | Owned by: | Marshall Clow |
---|---|---|---|
Milestone: | To Be Determined | Component: | string_algo |
Version: | Boost 1.59.0 | Severity: | Problem |
Keywords: | string algorithms to_upper to_lower | Cc: |
Description
code to reproduce:
std::u32string u32str = U"Проверка АаАа abcd"; boost::to_upper(u32str); u32str contains "@>25@:0 00 ABCD" after
proper upper string is "ПРОВЕРКА АААА ABCD"
Visual Studio 2015
Change History (2)
comment:1 by , 7 years ago
comment:2 by , 7 years ago
I have Windows 8.1 ENG and run with default locale. If to change from std::u32string to std::wstring the problem disappers
Note:
See TracTickets
for help on using tickets.
Let's be charitable here and say just that boost::to_upper and boost::to_lower are not "unicode aware".
What is the locale when you run this code?