2018-11-28 Richard Biener <rguenther@suse.de>
[official-gcc.git] / gcc / testsuite / gcc.dg / utf16-4.c
blob60e00f60ee4d3f90e907233629351d46f0fff142
1 /* Contributed by Kris Van Hees <kris.van.hees@oracle.com> */
2 /* Expected errors for char16_t character constants. */
3 /* { dg-do compile } */
4 /* { dg-options "-std=gnu99" } */
6 typedef __CHAR16_TYPE__ char16_t;
8 char16_t c0 = u''; /* { dg-error "empty character" } */
9 char16_t c1 = u'ab'; /* { dg-warning "constant too long" } */
10 char16_t c2 = u'\U00064321'; /* { dg-warning "constant too long" } */
12 char16_t c3 = 'a';
13 char16_t c4 = U'a';
14 char16_t c5 = U'\u2029';
15 char16_t c6 = U'\U00064321'; /* { dg-warning "conversion from .(long )?unsigned int. to 'char16_t' {aka '(short )?unsigned int'} changes value from .410401. to .17185." } */
16 char16_t c7 = L'a';
17 char16_t c8 = L'\u2029';
18 char16_t c9 = L'\U00064321'; /* { dg-warning "conversion" "" { target { 4byte_wchar_t } } } */
19 /* { dg-warning "constant too long" "" { target { ! 4byte_wchar_t } } .-1 } */
21 int main () {}