1 /* { dg-do preprocess } */
2 /* { dg-options -pedantic-errors } */
3 
4 #if 'a' != 'a' || '\001' != 1 || '\x12' != 0x12
5 #error a,1,0x12 /* { dg-bogus "#error" "basic charconst recognition" } */
6 #endif
7 
8 #if 'a' != L'a'
9 #error L'a'	/* { dg-bogus "error" "wide charconst recognition 1" } */
10 #endif
11 
12 #if L'\xfeed' != 0xfeed && L'\xfeed' != (0xfeed - 0x10000)
13 #error 0xfeed	/* { dg-bogus "error" "wide charconst recognition 2" } */
14 #endif
15 
16 #if L'\x1234' != 0x1234
17 #error 0x1234	/* { dg-bogus "error" "wide charconst recognition 3" } */
18 #endif
19 
20 /* The 'character constant (is )?too long' message is produced by 16-bit targets.  */
21 #if 'abcd' /* { dg-warning "(multi-character character constant)|(character constant (is )?too long)" "multi-character charconst" } */
22 #endif
23 
24 #if 'abcdefghi' /* { dg-warning "character constant (is )?too long" "charconst too long" } */
25 #endif
26 
27 #if '' /* { dg-error "empty character constant" "empty charconst" } */
28 #endif
29