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