1 /* Contributed by Kris Van Hees <kris.van.hees@oracle.com> */
2 /* Expected errors for char16_t/char32_t in c++98. */
3 /* Ensure u and U prefixes are parsed as separate tokens in c++98. */
4 /* { dg-do compile } */
5 /* { dg-options "-std=c++98" } */
6 
7 const static char16_t	c0	= 'a';	/* { dg-error "not name a type" } */
8 const static char32_t	c1	= 'a';	/* { dg-error "not name a type" } */
9 
10 const unsigned short	c2	= u'a';	/* { dg-error "not declared" } */
11 const unsigned long	c3	= U'a';	/* { dg-error "not declared" } */
12 
13 #define u	1 +
14 #define U	2 +
15 
16 const unsigned short	c5	= u'a';
17 const unsigned long	c6	= U'a';
18 
19 #undef u
20 #undef U
21 #define u	"a"
22 #define U	"b"
23 
24 const void		*s0	= u"a";
25 const void		*s1	= U"a";
26 
main()27 int main () {}
28