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 Marshall Clow, 7 years ago

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?

comment:2 by anonymous, 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.