blob: ada97be5ef646c82524700b1f13152f47b94c23a [file] [log] [blame]
/* Contributed by Kris Van Hees <kris.van.hees@oracle.com> */
/* Expected errors for char16_t/char32_t in c++98. */
/* Ensure u8, u and U prefixes are parsed as separate tokens in c++98. */
/* { dg-do compile } */
/* { dg-options "-std=c++98" } */
const static char16_t c0 = 'a'; /* { dg-error "not name a type" } */
const static char32_t c1 = 'a'; /* { dg-error "not name a type" } */
const unsigned short c2 = u'a'; /* { dg-error "not declared" } */
const unsigned long c3 = U'a'; /* { dg-error "not declared" } */
const unsigned char c4 = u8'a'; /* { dg-error "not declared" } */
#define u 1 +
#define U 2 +
#define u8 3 +
const unsigned short c5 = u'a';
const unsigned long c6 = U'a';
const unsigned char c7 = u8'a';
#undef u
#undef U
#undef u8
#define u "a"
#define U "b"
#define u8 "c"
const void *s0 = u"a";
const void *s1 = U"a";
const void *s2 = u8"a";
int main () {}