On 2017-06-16 21:52, Thiago Macieira wrote:
On Friday, 16 June 2017 11:14:20 PDT André Pönitz wrote:
On Thu, Jun 15, 2017 at 04:07:03PM -0700, Thiago Macieira wrote:
character set. Without the /utf-8 option added in MSVC 2015 Update 2, the
conversion fails and the compiler prints:

warning C4566: character represented by universal-character-name '\u0431'
cannot be represented in the current code page (1252)

[ok, not a C++11 issue per se, but we still want to use Unicode source
code]
There was never *consensus* on using something outside plain ASCII in
Qt sources.

This is predicted, self-inflicted pain.

Right, we've had to live with ASCII-only sources for the last 25 years. We
could wait a little longer.

I just don't want to!

Here's a tricky question: how do you create a QStringLiteral with non-ASCII
characters that will work on all our supported compilers?


That question reminds me of the discussion last August http://lists.qt-project.org/pipermail/interest/2016-August/023882.html about Unicode code points in MSVC and how to fix so that tr("Coördinaat") or tr("Co\u00F6rdinaat"); worked with old MSVC compilers.

My workaround: use raw UTF8 hex bytes: tr("Co\xC3\xB6rdinaat");

I think using that stunt should allow you to encode any non-ASCII characters inside a QStringLiteral with any compiler that supports "\x..."

Rgrds Henry

_______________________________________________
Development mailing list
[email protected]
http://lists.qt-project.org/mailman/listinfo/development

Reply via email to