brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.2 KiB · a58a82a Raw
22 lines · cpp
1// RUN: %clang_cc1 -std=gnu++11 -fsyntax-only -verify %s 2 3void f() {4  char *u8str;5  u8str = u8"a UTF-8 string"; // expected-error {{assigning to 'char *' from incompatible type 'const char[15]'}}6  char16_t *ustr;7  ustr = u"a UTF-16 string"; // expected-error {{assigning to 'char16_t *' from incompatible type 'const char16_t[16]'}}8  char32_t *Ustr;9  Ustr = U"a UTF-32 string"; // expected-error {{assigning to 'char32_t *' from incompatible type 'const char32_t[16]'}}10 11  char *Rstr;12  Rstr = R"foo(a raw string)foo"; // expected-warning{{ISO C++11 does not allow conversion from string literal to 'char *'}}13  wchar_t *LRstr;14  LRstr = LR"foo(a wide raw string)foo"; // expected-warning{{ISO C++11 does not allow conversion from string literal to 'wchar_t *'}}15  char *u8Rstr;16  u8Rstr = u8R"foo(a UTF-8 raw string)foo"; // expected-error {{assigning to 'char *' from incompatible type 'const char[19]'}}17  char16_t *uRstr;18  uRstr = uR"foo(a UTF-16 raw string)foo"; // expected-error {{assigning to 'char16_t *' from incompatible type 'const char16_t[20]'}}19  char32_t *URstr;20  URstr = UR"foo(a UTF-32 raw string)foo"; // expected-error {{assigning to 'char32_t *' from incompatible type 'const char32_t[20]'}}21}22