]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - test/Lexer/utf8-char-literal.cpp
Vendor import of clang RELEASE_360/rc1 tag r226102 (effectively, 3.6.0 RC1):
[FreeBSD/FreeBSD.git] / test / Lexer / utf8-char-literal.cpp
1 // RUN: %clang_cc1 -triple x86_64-apple-darwin -std=c++11 -fsyntax-only -verify %s
2 // RUN: %clang_cc1 -triple x86_64-apple-darwin -std=c11 -x c -fsyntax-only -verify %s
3 // RUN: %clang_cc1 -triple x86_64-apple-darwin -std=c++1z -fsyntax-only -verify %s
4
5 int array0[u'ñ' == u'\xf1'? 1 : -1];
6 int array1['\xF1' !=  u'\xf1'? 1 : -1];
7 int array1['ñ' !=  u'\xf1'? 1 : -1]; // expected-error {{character too large for enclosing character literal type}}
8 #if __cplusplus > 201402L
9 char a = u8'ñ'; // expected-error {{character too large for enclosing character literal type}}
10 char b = u8'\x80'; // ok
11 char c = u8'\u0080'; // expected-error {{character too large for enclosing character literal type}}
12 char d = u8'\u1234'; // expected-error {{character too large for enclosing character literal type}}
13 char e = u8'ሴ'; // expected-error {{character too large for enclosing character literal type}}
14 char f = u8'ab'; // expected-error {{Unicode character literals may not contain multiple characters}}
15 #endif