diff options
author | Leandro Melo <leandro.melo@nokia.com> | 2012-06-06 13:41:22 +0200 |
---|---|---|
committer | hjk <qthjk@ovi.com> | 2012-06-06 14:55:07 +0200 |
commit | 23c637c4f677ab2f19793f409297b0131b21dcaa (patch) | |
tree | c940f0eddbc83bfc5ba3ee9e39c3833f45729cde /src/libs/3rdparty/cplusplus/Keywords.cpp | |
parent | b88a5f5d381b4279f6aa93e1400d78d910f1ed15 (diff) |
C++: Introduce unicode char/strings support
Those are the types char16_t and char32_t along with the new
char/string literals u'', U'', u"", u8"", and U"".
This is particularly important for the use of QStringLiteral
since in some platforms it relies on expansion such as above.
Note: The string literals quickfixes still need some tunning.
Task-number: QTCREATORBUG-7449
Change-Id: Iebcfea15677dc8e0ebb6143def89a5477e1be7d4
Reviewed-by: hjk <qthjk@ovi.com>
Diffstat (limited to 'src/libs/3rdparty/cplusplus/Keywords.cpp')
-rw-r--r-- | src/libs/3rdparty/cplusplus/Keywords.cpp | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/libs/3rdparty/cplusplus/Keywords.cpp b/src/libs/3rdparty/cplusplus/Keywords.cpp index fd5fc7d112..2062e40c7b 100644 --- a/src/libs/3rdparty/cplusplus/Keywords.cpp +++ b/src/libs/3rdparty/cplusplus/Keywords.cpp @@ -778,6 +778,28 @@ static inline int classify8(const char *s, bool q, bool x) { } } } + } else if (x && s[1] == 'h') { + if (s[2] == 'a') { + if (s[3] == 'r') { + if (s[4] == '1') { + if (s[5] == '6') { + if (s[6] == '_') { + if (s[7] == 't') { + return T_CHAR16_T; + } + } + } + } else if (s[4] == '3') { + if (s[5] == '2') { + if (s[6] == '_') { + if (s[7] == 't') { + return T_CHAR32_T; + } + } + } + } + } + } } } else if (x && s[0] == 'd') { |