1/* Generated by re2c 0.13.5 on Thu Jul 18 20:13:38 2013 */
2#line 1 "cpp.re"
3/*=============================================================================
4    Boost.Wave: A Standard compliant C++ preprocessor library
5
6    Copyright (c) 2001 Daniel C. Nuffer
7    Copyright (c) 2001-2013 Hartmut Kaiser.
8    Distributed under the Boost Software License, Version 1.0. (See accompanying
9    file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
10
11    This is a lexer conforming to the Standard with a few exceptions.
12    So it does allow the '$' to be part of identifiers. If you need strict
13    Standards conforming behaviour, please include the lexer definition
14    provided in the file strict_cpp.re.
15
16    TODO:
17        handle errors better.
18=============================================================================*/
19
20#line 41 "cpp.re"
21
22
23
24#line 25 "cpp_re.inc"
25{
26    YYCTYPE yych;
27    unsigned int yyaccept = 0;
28    static const unsigned char yybm[] = {
29        /* table 1 .. 8: 0 */
30          0,   0,   0,   0,   0,   0,   0,   0,
31          0,  60,  32,  60,  60,  64,   0,   0,
32          0,   0,   0,   0,   0,   0,   0,   0,
33          0,   0,   0,   0,   0,   0,   0,   0,
34         60,  60,  52,  60,  60,  60,  60,  56,
35         60,  60, 156,  60,  60,  60,  60,  60,
36         60,  60,  60,  60,  60,  60,  60,  60,
37         60,  60,  60,  60,  60,  60,  44,  57,
38         60,  60,  60,  60,  60,  60,  60,  60,
39         60,  60,  60,  60,  60,  60,  60,  60,
40         60,  60,  60,  60,  60,  60,  60,  60,
41         60,  60,  60,  60,  58,  60,  60,  60,
42         60,  60,  60,  60,  60,  60,  60,  60,
43         60,  60,  60,  60,  60,  60,  60,  60,
44         60,  60,  60,  60,  60,  60,  60,  60,
45         60,  60,  60,  60,  60,  60,  60,  60,
46         60,  60,  60,  60,  60,  60,  60,  60,
47         60,  60,  60,  60,  60,  60,  60,  60,
48         60,  60,  60,  60,  60,  60,  60,  60,
49         60,  60,  60,  60,  60,  60,  60,  60,
50         60,  60,  60,  60,  60,  60,  60,  60,
51         60,  60,  60,  60,  60,  60,  60,  60,
52         60,  60,  60,  60,  60,  60,  60,  60,
53         60,  60,  60,  60,  60,  60,  60,  60,
54         60,  60,  60,  60,  60,  60,  60,  60,
55         60,  60,  60,  60,  60,  60,  60,  60,
56         60,  60,  60,  60,  60,  60,  60,  60,
57         60,  60,  60,  60,  60,  60,  60,  60,
58         60,  60,  60,  60,  60,  60,  60,  60,
59         60,  60,  60,  60,  60,  60,  60,  60,
60         60,  60,  60,  60,  60,  60,  60,  60,
61         60,  60,  60,  60,  60,  60,  60,  60,
62        /* table 9 .. 12: 256 */
63          0,   0,   0,   0,   0,   0,   0,   0,
64          0,  80,   0,  80,  80,   0,   0,   0,
65          0,   0,   0,   0,   0,   0,   0,   0,
66          0,   0,   0,   0,   0,   0,   0,   0,
67         80,  64,   0,  64,  96,  64,  64,  64,
68         64,  64,  64,  64,  64,  64,  64,  64,
69        224, 224, 224, 224, 224, 224, 224, 224,
70        224, 224,  64,  64,  64,  64,  64,   0,
71         64, 224, 224, 224, 224, 224, 224,  96,
72         96,  96,  96,  96,  96,  96,  96,  96,
73         96,  96,  96,  96,  96,  96,  96,  96,
74         96,  96,  96,  64,   0,  64,  64,  96,
75         64, 224, 224, 224, 224, 224, 224,  96,
76         96,  96,  96,  96,  96,  96,  96,  96,
77         96,  96,  96,  96,  96,  96,  96,  96,
78         96,  96,  96,  64,  64,  64,  64,  64,
79         64,  64,  64,  64,  64,  64,  64,  64,
80         64,  64,  64,  64,  64,  64,  64,  64,
81         64,  64,  64,  64,  64,  64,  64,  64,
82         64,  64,  64,  64,  64,  64,  64,  64,
83         64,  64,  64,  64,  64,  64,  64,  64,
84         64,  64,  64,  64,  64,  64,  64,  64,
85         64,  64,  64,  64,  64,  64,  64,  64,
86         64,  64,  64,  64,  64,  64,  64,  64,
87         64,  64,  64,  64,  64,  64,  64,  64,
88         64,  64,  64,  64,  64,  64,  64,  64,
89         64,  64,  64,  64,  64,  64,  64,  64,
90         64,  64,  64,  64,  64,  64,  64,  64,
91         64,  64,  64,  64,  64,  64,  64,  64,
92         64,  64,  64,  64,  64,  64,  64,  64,
93         64,  64,  64,  64,  64,  64,  64,  64,
94         64,  64,  64,  64,  64,  64,  64,  64,
95    };
96
97    if ((YYLIMIT - YYCURSOR) < 17) YYFILL(17);
98    yych = *YYCURSOR;
99    switch (yych) {
100    case 0x00:    goto yy90;
101    case 0x01:
102    case 0x02:
103    case 0x03:
104    case 0x04:
105    case 0x05:
106    case 0x06:
107    case 0x07:
108    case 0x08:
109    case 0x0E:
110    case 0x0F:
111    case 0x10:
112    case 0x11:
113    case 0x12:
114    case 0x13:
115    case 0x14:
116    case 0x15:
117    case 0x16:
118    case 0x17:
119    case 0x18:
120    case 0x19:
121    case 0x1A:
122    case 0x1B:
123    case 0x1C:
124    case 0x1D:
125    case 0x1E:
126    case 0x1F:    goto yy93;
127    case '\t':
128    case '\v':
129    case '\f':    goto yy84;
130    case '\n':    goto yy87;
131    case '\r':    goto yy89;
132    case ' ':    goto yy86;
133    case '!':    goto yy68;
134    case '"':    goto yy79;
135    case '#':    goto yy45;
136    case '$':
137    case 'A':
138    case 'B':
139    case 'C':
140    case 'D':
141    case 'E':
142    case 'F':
143    case 'G':
144    case 'H':
145    case 'I':
146    case 'J':
147    case 'K':
148    case 'M':
149    case 'N':
150    case 'O':
151    case 'P':
152    case 'Q':
153    case 'S':
154    case 'T':
155    case 'V':
156    case 'W':
157    case 'X':
158    case 'Y':
159    case 'Z':
160    case 'h':
161    case 'j':
162    case 'k':
163    case 'q':
164    case 'y':
165    case 'z':    goto yy82;
166    case '%':    goto yy37;
167    case '&':    goto yy62;
168    case '\'':    goto yy77;
169    case '(':    goto yy47;
170    case ')':    goto yy49;
171    case '*':    goto yy57;
172    case '+':    goto yy53;
173    case ',':    goto yy74;
174    case '-':    goto yy55;
175    case '.':    goto yy4;
176    case '/':    goto yy2;
177    case '0':
178    case '1':
179    case '2':
180    case '3':
181    case '4':
182    case '5':
183    case '6':
184    case '7':
185    case '8':
186    case '9':    goto yy6;
187    case ':':    goto yy43;
188    case ';':    goto yy51;
189    case '<':    goto yy33;
190    case '=':    goto yy70;
191    case '>':    goto yy72;
192    case '?':    goto yy31;
193    case 'L':    goto yy76;
194    case 'R':    goto yy80;
195    case 'U':    goto yy81;
196    case '[':    goto yy39;
197    case '\\':    goto yy83;
198    case ']':    goto yy41;
199    case '^':    goto yy59;
200    case '_':    goto yy28;
201    case 'a':    goto yy8;
202    case 'b':    goto yy10;
203    case 'c':    goto yy11;
204    case 'd':    goto yy12;
205    case 'e':    goto yy13;
206    case 'f':    goto yy14;
207    case 'g':    goto yy15;
208    case 'i':    goto yy16;
209    case 'l':    goto yy17;
210    case 'm':    goto yy18;
211    case 'n':    goto yy19;
212    case 'o':    goto yy20;
213    case 'p':    goto yy21;
214    case 'r':    goto yy22;
215    case 's':    goto yy23;
216    case 't':    goto yy24;
217    case 'u':    goto yy25;
218    case 'v':    goto yy26;
219    case 'w':    goto yy27;
220    case 'x':    goto yy61;
221    case '{':    goto yy29;
222    case '|':    goto yy64;
223    case '}':    goto yy35;
224    case '~':    goto yy66;
225    default:    goto yy92;
226    }
227yy2:
228    ++YYCURSOR;
229    if ((yych = *YYCURSOR) <= '.') {
230        if (yych == '*') goto yy998;
231    } else {
232        if (yych <= '/') goto yy996;
233        if (yych == '=') goto yy994;
234    }
235#line 189 "cpp.re"
236    { BOOST_WAVE_RET(T_DIVIDE); }
237#line 238 "cpp_re.inc"
238yy4:
239    yyaccept = 0;
240    yych = *(YYMARKER = ++YYCURSOR);
241    if (yych <= '-') {
242        if (yych == '*') goto yy988;
243    } else {
244        if (yych <= '.') goto yy990;
245        if (yych <= '/') goto yy5;
246        if (yych <= '9') goto yy991;
247    }
248yy5:
249#line 175 "cpp.re"
250    { BOOST_WAVE_RET(T_DOT); }
251#line 252 "cpp_re.inc"
252yy6:
253    ++YYCURSOR;
254yy7:
255#line 46 "cpp.re"
256    { goto pp_number; }
257#line 258 "cpp_re.inc"
258yy8:
259    yyaccept = 1;
260    yych = *(YYMARKER = ++YYCURSOR);
261    switch (yych) {
262    case 'l':    goto yy964;
263    case 'n':    goto yy965;
264    case 's':    goto yy966;
265    case 'u':    goto yy967;
266    default:    goto yy109;
267    }
268yy9:
269#line 291 "cpp.re"
270    { BOOST_WAVE_RET(T_IDENTIFIER); }
271#line 272 "cpp_re.inc"
272yy10:
273    yyaccept = 1;
274    yych = *(YYMARKER = ++YYCURSOR);
275    if (yych <= 'n') {
276        if (yych == 'i') goto yy946;
277        goto yy109;
278    } else {
279        if (yych <= 'o') goto yy947;
280        if (yych == 'r') goto yy948;
281        goto yy109;
282    }
283yy11:
284    yyaccept = 1;
285    yych = *(YYMARKER = ++YYCURSOR);
286    switch (yych) {
287    case 'a':    goto yy893;
288    case 'h':    goto yy894;
289    case 'l':    goto yy895;
290    case 'o':    goto yy896;
291    default:    goto yy109;
292    }
293yy12:
294    yyaccept = 1;
295    yych = *(YYMARKER = ++YYCURSOR);
296    if (yych <= 'n') {
297        if (yych == 'e') goto yy855;
298        goto yy109;
299    } else {
300        if (yych <= 'o') goto yy856;
301        if (yych == 'y') goto yy858;
302        goto yy109;
303    }
304yy13:
305    yyaccept = 1;
306    yych = *(YYMARKER = ++YYCURSOR);
307    if (yych <= 'm') {
308        if (yych == 'l') goto yy830;
309        goto yy109;
310    } else {
311        if (yych <= 'n') goto yy831;
312        if (yych == 'x') goto yy832;
313        goto yy109;
314    }
315yy14:
316    yyaccept = 1;
317    yych = *(YYMARKER = ++YYCURSOR);
318    switch (yych) {
319    case 'a':    goto yy811;
320    case 'l':    goto yy812;
321    case 'o':    goto yy813;
322    case 'r':    goto yy814;
323    default:    goto yy109;
324    }
325yy15:
326    yyaccept = 1;
327    yych = *(YYMARKER = ++YYCURSOR);
328    if (yych == 'o') goto yy807;
329    goto yy109;
330yy16:
331    yyaccept = 1;
332    yych = *(YYMARKER = ++YYCURSOR);
333    if (yych <= 'l') {
334        if (yych == 'f') goto yy791;
335        goto yy109;
336    } else {
337        if (yych <= 'm') goto yy793;
338        if (yych <= 'n') goto yy794;
339        goto yy109;
340    }
341yy17:
342    yyaccept = 1;
343    yych = *(YYMARKER = ++YYCURSOR);
344    if (yych == 'o') goto yy787;
345    goto yy109;
346yy18:
347    yyaccept = 1;
348    yych = *(YYMARKER = ++YYCURSOR);
349    if (yych == 'u') goto yy780;
350    goto yy109;
351yy19:
352    yyaccept = 1;
353    yych = *(YYMARKER = ++YYCURSOR);
354    if (yych <= 'e') {
355        if (yych == 'a') goto yy747;
356        if (yych <= 'd') goto yy109;
357        goto yy748;
358    } else {
359        if (yych <= 'o') {
360            if (yych <= 'n') goto yy109;
361            goto yy749;
362        } else {
363            if (yych == 'u') goto yy750;
364            goto yy109;
365        }
366    }
367yy20:
368    yyaccept = 1;
369    yych = *(YYMARKER = ++YYCURSOR);
370    if (yych == 'p') goto yy733;
371    if (yych == 'r') goto yy734;
372    goto yy109;
373yy21:
374    yyaccept = 1;
375    yych = *(YYMARKER = ++YYCURSOR);
376    if (yych == 'r') goto yy712;
377    if (yych == 'u') goto yy713;
378    goto yy109;
379yy22:
380    yyaccept = 1;
381    yych = *(YYMARKER = ++YYCURSOR);
382    if (yych == 'e') goto yy684;
383    goto yy109;
384yy23:
385    yyaccept = 1;
386    yych = *(YYMARKER = ++YYCURSOR);
387    if (yych <= 's') {
388        if (yych <= 'g') goto yy109;
389        if (yych <= 'h') goto yy638;
390        if (yych <= 'i') goto yy639;
391        goto yy109;
392    } else {
393        if (yych <= 't') goto yy640;
394        if (yych == 'w') goto yy641;
395        goto yy109;
396    }
397yy24:
398    yyaccept = 1;
399    yych = *(YYMARKER = ++YYCURSOR);
400    if (yych <= 'h') {
401        if (yych == 'e') goto yy591;
402        if (yych <= 'g') goto yy109;
403        goto yy592;
404    } else {
405        if (yych <= 'r') {
406            if (yych <= 'q') goto yy109;
407            goto yy593;
408        } else {
409            if (yych == 'y') goto yy594;
410            goto yy109;
411        }
412    }
413yy25:
414    yyaccept = 1;
415    yych = *(YYMARKER = ++YYCURSOR);
416    if (yych <= '8') {
417        if (yych <= '&') {
418            if (yych == '"') goto yy129;
419            goto yy109;
420        } else {
421            if (yych <= '\'') goto yy131;
422            if (yych <= '7') goto yy109;
423            goto yy573;
424        }
425    } else {
426        if (yych <= 'm') {
427            if (yych == 'R') goto yy128;
428            goto yy109;
429        } else {
430            if (yych <= 'n') goto yy574;
431            if (yych == 's') goto yy575;
432            goto yy109;
433        }
434    }
435yy26:
436    yyaccept = 1;
437    yych = *(YYMARKER = ++YYCURSOR);
438    if (yych == 'i') goto yy555;
439    if (yych == 'o') goto yy556;
440    goto yy109;
441yy27:
442    yyaccept = 1;
443    yych = *(YYMARKER = ++YYCURSOR);
444    if (yych == 'c') goto yy543;
445    if (yych == 'h') goto yy544;
446    goto yy109;
447yy28:
448    yyaccept = 1;
449    yych = *(YYMARKER = ++YYCURSOR);
450    switch (yych) {
451    case '_':    goto yy454;
452    case 'a':    goto yy455;
453    case 'b':    goto yy456;
454    case 'c':    goto yy457;
455    case 'd':    goto yy458;
456    case 'f':    goto yy459;
457    case 'i':    goto yy460;
458    case 's':    goto yy461;
459    default:    goto yy109;
460    }
461yy29:
462    ++YYCURSOR;
463#line 139 "cpp.re"
464    { BOOST_WAVE_RET(T_LEFTBRACE); }
465#line 466 "cpp_re.inc"
466yy31:
467    yyaccept = 2;
468    yych = *(YYMARKER = ++YYCURSOR);
469    if (yych == '?') goto yy419;
470yy32:
471#line 164 "cpp.re"
472    { BOOST_WAVE_RET(T_QUESTION_MARK); }
473#line 474 "cpp_re.inc"
474yy33:
475    ++YYCURSOR;
476    if ((yych = *YYCURSOR) <= ':') {
477        if (yych == '%') goto yy415;
478        if (yych >= ':') goto yy413;
479    } else {
480        if (yych <= ';') goto yy34;
481        if (yych <= '<') goto yy411;
482        if (yych <= '=') goto yy409;
483    }
484yy34:
485#line 205 "cpp.re"
486    { BOOST_WAVE_RET(T_LESS); }
487#line 488 "cpp_re.inc"
488yy35:
489    ++YYCURSOR;
490#line 142 "cpp.re"
491    { BOOST_WAVE_RET(T_RIGHTBRACE); }
492#line 493 "cpp_re.inc"
493yy37:
494    ++YYCURSOR;
495    if ((yych = *YYCURSOR) <= '<') {
496        if (yych == ':') goto yy400;
497    } else {
498        if (yych <= '=') goto yy402;
499        if (yych <= '>') goto yy404;
500    }
501#line 190 "cpp.re"
502    { BOOST_WAVE_RET(T_PERCENT); }
503#line 504 "cpp_re.inc"
504yy39:
505    ++YYCURSOR;
506#line 145 "cpp.re"
507    { BOOST_WAVE_RET(T_LEFTBRACKET); }
508#line 509 "cpp_re.inc"
509yy41:
510    ++YYCURSOR;
511#line 148 "cpp.re"
512    { BOOST_WAVE_RET(T_RIGHTBRACKET); }
513#line 514 "cpp_re.inc"
514yy43:
515    ++YYCURSOR;
516    if ((yych = *YYCURSOR) == ':') goto yy396;
517    if (yych == '>') goto yy398;
518#line 162 "cpp.re"
519    { BOOST_WAVE_RET(T_COLON); }
520#line 521 "cpp_re.inc"
521yy45:
522    yyaccept = 3;
523    yych = *(YYMARKER = ++YYCURSOR);
524    if (yych <= 'c') {
525        if (yych <= ' ') {
526            if (yych <= '\n') {
527                if (yych == '\t') goto yy273;
528            } else {
529                if (yych <= '\f') goto yy273;
530                if (yych >= ' ') goto yy273;
531            }
532        } else {
533            if (yych <= '.') {
534                if (yych == '#') goto yy284;
535            } else {
536                if (yych <= '/') goto yy273;
537                if (yych == '?') goto yy283;
538            }
539        }
540    } else {
541        if (yych <= 'p') {
542            if (yych <= 'i') {
543                if (yych <= 'e') goto yy273;
544                if (yych >= 'i') goto yy273;
545            } else {
546                if (yych == 'l') goto yy273;
547                if (yych >= 'p') goto yy273;
548            }
549        } else {
550            if (yych <= 't') {
551                if (yych == 'r') goto yy273;
552            } else {
553                if (yych == 'v') goto yy46;
554                if (yych <= 'w') goto yy273;
555            }
556        }
557    }
558yy46:
559#line 151 "cpp.re"
560    { BOOST_WAVE_RET(T_POUND); }
561#line 562 "cpp_re.inc"
562yy47:
563    ++YYCURSOR;
564#line 159 "cpp.re"
565    { BOOST_WAVE_RET(T_LEFTPAREN); }
566#line 567 "cpp_re.inc"
567yy49:
568    ++YYCURSOR;
569#line 160 "cpp.re"
570    { BOOST_WAVE_RET(T_RIGHTPAREN); }
571#line 572 "cpp_re.inc"
572yy51:
573    ++YYCURSOR;
574#line 161 "cpp.re"
575    { BOOST_WAVE_RET(T_SEMICOLON); }
576#line 577 "cpp_re.inc"
577yy53:
578    ++YYCURSOR;
579    if ((yych = *YYCURSOR) == '+') goto yy268;
580    if (yych == '=') goto yy270;
581#line 186 "cpp.re"
582    { BOOST_WAVE_RET(T_PLUS); }
583#line 584 "cpp_re.inc"
584yy55:
585    ++YYCURSOR;
586    if ((yych = *YYCURSOR) <= '<') {
587        if (yych == '-') goto yy262;
588    } else {
589        if (yych <= '=') goto yy264;
590        if (yych <= '>') goto yy260;
591    }
592#line 187 "cpp.re"
593    { BOOST_WAVE_RET(T_MINUS); }
594#line 595 "cpp_re.inc"
595yy57:
596    ++YYCURSOR;
597    if ((yych = *YYCURSOR) == '=') goto yy258;
598#line 188 "cpp.re"
599    { BOOST_WAVE_RET(T_STAR); }
600#line 601 "cpp_re.inc"
601yy59:
602    ++YYCURSOR;
603    if ((yych = *YYCURSOR) == '=') goto yy256;
604#line 191 "cpp.re"
605    { BOOST_WAVE_RET(T_XOR); }
606#line 607 "cpp_re.inc"
607yy61:
608    yyaccept = 1;
609    yych = *(YYMARKER = ++YYCURSOR);
610    if (yych == 'o') goto yy249;
611    goto yy109;
612yy62:
613    ++YYCURSOR;
614    if ((yych = *YYCURSOR) == '&') goto yy245;
615    if (yych == '=') goto yy247;
616#line 194 "cpp.re"
617    { BOOST_WAVE_RET(T_AND); }
618#line 619 "cpp_re.inc"
619yy64:
620    yyaccept = 4;
621    yych = *(YYMARKER = ++YYCURSOR);
622    if (yych <= '>') {
623        if (yych == '=') goto yy240;
624    } else {
625        if (yych <= '?') goto yy237;
626        if (yych == '|') goto yy238;
627    }
628yy65:
629#line 196 "cpp.re"
630    { BOOST_WAVE_RET(T_OR); }
631#line 632 "cpp_re.inc"
632yy66:
633    ++YYCURSOR;
634#line 199 "cpp.re"
635    { BOOST_WAVE_RET(T_COMPL); }
636#line 637 "cpp_re.inc"
637yy68:
638    ++YYCURSOR;
639    if ((yych = *YYCURSOR) == '=') goto yy235;
640#line 202 "cpp.re"
641    { BOOST_WAVE_RET(T_NOT); }
642#line 643 "cpp_re.inc"
643yy70:
644    ++YYCURSOR;
645    if ((yych = *YYCURSOR) == '=') goto yy233;
646#line 204 "cpp.re"
647    { BOOST_WAVE_RET(T_ASSIGN); }
648#line 649 "cpp_re.inc"
649yy72:
650    ++YYCURSOR;
651    if ((yych = *YYCURSOR) <= '<') goto yy73;
652    if (yych <= '=') goto yy227;
653    if (yych <= '>') goto yy229;
654yy73:
655#line 206 "cpp.re"
656    { BOOST_WAVE_RET(T_GREATER); }
657#line 658 "cpp_re.inc"
658yy74:
659    ++YYCURSOR;
660#line 238 "cpp.re"
661    { BOOST_WAVE_RET(T_COMMA); }
662#line 663 "cpp_re.inc"
663yy76:
664    yyaccept = 1;
665    yych = *(YYMARKER = ++YYCURSOR);
666    if (yych <= '?') {
667        if (yych <= '&') {
668            if (yych <= '"') {
669                if (yych <= '!') goto yy9;
670                goto yy137;
671            } else {
672                if (yych == '$') goto yy108;
673                goto yy9;
674            }
675        } else {
676            if (yych <= '/') {
677                if (yych <= '\'') goto yy226;
678                goto yy9;
679            } else {
680                if (yych <= '9') goto yy108;
681                if (yych <= '>') goto yy9;
682                goto yy111;
683            }
684        }
685    } else {
686        if (yych <= '[') {
687            if (yych <= 'Q') {
688                if (yych <= '@') goto yy9;
689                goto yy108;
690            } else {
691                if (yych <= 'R') goto yy225;
692                if (yych <= 'Z') goto yy108;
693                goto yy9;
694            }
695        } else {
696            if (yych <= '_') {
697                if (yych <= '\\') goto yy110;
698                if (yych <= '^') goto yy9;
699                goto yy108;
700            } else {
701                if (yych <= '`') goto yy9;
702                if (yych <= 'z') goto yy108;
703                goto yy9;
704            }
705        }
706    }
707yy77:
708    yyaccept = 5;
709    yych = *(YYMARKER = ++YYCURSOR);
710    if (yych <= '\f') {
711        if (yych == '\t') goto yy182;
712        if (yych >= '\v') goto yy182;
713    } else {
714        if (yych <= 0x1F) goto yy78;
715        if (yych != '\'') goto yy182;
716    }
717yy78:
718#line 340 "cpp.re"
719    { BOOST_WAVE_RET(TOKEN_FROM_ID(*s->tok, UnknownTokenType)); }
720#line 721 "cpp_re.inc"
721yy79:
722    yyaccept = 5;
723    yych = *(YYMARKER = ++YYCURSOR);
724    if (yych <= '\n') {
725        if (yych == '\t') goto yy138;
726        goto yy78;
727    } else {
728        if (yych <= '\f') goto yy138;
729        if (yych <= 0x1F) goto yy78;
730        goto yy138;
731    }
732yy80:
733    yyaccept = 1;
734    yych = *(YYMARKER = ++YYCURSOR);
735    if (yych == '"') goto yy135;
736    goto yy109;
737yy81:
738    yyaccept = 1;
739    yych = *(YYMARKER = ++YYCURSOR);
740    if (yych <= '&') {
741        if (yych == '"') goto yy129;
742        goto yy109;
743    } else {
744        if (yych <= '\'') goto yy131;
745        if (yych == 'R') goto yy128;
746        goto yy109;
747    }
748yy82:
749    yyaccept = 1;
750    yych = *(YYMARKER = ++YYCURSOR);
751    goto yy109;
752yy83:
753    yyaccept = 5;
754    yych = *(YYMARKER = ++YYCURSOR);
755    if (yych == 'U') goto yy100;
756    if (yych == 'u') goto yy98;
757    goto yy78;
758yy84:
759    ++YYCURSOR;
760    yych = *YYCURSOR;
761    goto yy97;
762yy85:
763#line 320 "cpp.re"
764    { BOOST_WAVE_RET(T_SPACE); }
765#line 766 "cpp_re.inc"
766yy86:
767    yych = *++YYCURSOR;
768    goto yy97;
769yy87:
770    ++YYCURSOR;
771yy88:
772#line 323 "cpp.re"
773    {
774        s->line++;
775        cursor.column = 1;
776        BOOST_WAVE_RET(T_NEWLINE);
777    }
778#line 779 "cpp_re.inc"
779yy89:
780    yych = *++YYCURSOR;
781    if (yych == '\n') goto yy95;
782    goto yy88;
783yy90:
784    ++YYCURSOR;
785#line 330 "cpp.re"
786    {
787        if (s->eof && cursor != s->eof)
788        {
789            BOOST_WAVE_UPDATE_CURSOR();     // adjust the input cursor
790            (*s->error_proc)(s, lexing_exception::generic_lexing_error,
791                "invalid character '\\000' in input stream");
792        }
793        BOOST_WAVE_RET(T_EOF);
794    }
795#line 796 "cpp_re.inc"
796yy92:
797    yych = *++YYCURSOR;
798    goto yy78;
799yy93:
800    ++YYCURSOR;
801#line 343 "cpp.re"
802    {
803        // flag the error
804        BOOST_WAVE_UPDATE_CURSOR();     // adjust the input cursor
805        (*s->error_proc)(s, lexing_exception::generic_lexing_error,
806            "invalid character '\\%03o' in input stream", *--YYCURSOR);
807    }
808#line 809 "cpp_re.inc"
809yy95:
810    yych = *++YYCURSOR;
811    goto yy88;
812yy96:
813    ++YYCURSOR;
814    if (YYLIMIT <= YYCURSOR) YYFILL(1);
815    yych = *YYCURSOR;
816yy97:
817    if (yybm[256+yych] & 16) {
818        goto yy96;
819    }
820    goto yy85;
821yy98:
822    yych = *++YYCURSOR;
823    if (yych <= '@') {
824        if (yych <= '/') goto yy99;
825        if (yych <= '9') goto yy125;
826    } else {
827        if (yych <= 'F') goto yy125;
828        if (yych <= '`') goto yy99;
829        if (yych <= 'f') goto yy125;
830    }
831yy99:
832    YYCURSOR = YYMARKER;
833    if (yyaccept <= 56) {
834        if (yyaccept <= 28) {
835            if (yyaccept <= 14) {
836                if (yyaccept <= 7) {
837                    if (yyaccept <= 3) {
838                        if (yyaccept <= 1) {
839                            if (yyaccept <= 0) {
840                                goto yy5;
841                            } else {
842                                goto yy9;
843                            }
844                        } else {
845                            if (yyaccept <= 2) {
846                                goto yy32;
847                            } else {
848                                goto yy46;
849                            }
850                        }
851                    } else {
852                        if (yyaccept <= 5) {
853                            if (yyaccept <= 4) {
854                                goto yy65;
855                            } else {
856                                goto yy78;
857                            }
858                        } else {
859                            if (yyaccept <= 6) {
860                                goto yy142;
861                            } else {
862                                goto yy192;
863                            }
864                        }
865                    }
866                } else {
867                    if (yyaccept <= 11) {
868                        if (yyaccept <= 9) {
869                            if (yyaccept <= 8) {
870                                goto yy251;
871                            } else {
872                                goto yy255;
873                            }
874                        } else {
875                            if (yyaccept <= 10) {
876                                goto yy291;
877                            } else {
878                                goto yy306;
879                            }
880                        }
881                    } else {
882                        if (yyaccept <= 13) {
883                            if (yyaccept <= 12) {
884                                goto yy401;
885                            } else {
886                                goto yy429;
887                            }
888                        } else {
889                            goto yy433;
890                        }
891                    }
892                }
893            } else {
894                if (yyaccept <= 21) {
895                    if (yyaccept <= 18) {
896                        if (yyaccept <= 16) {
897                            if (yyaccept <= 15) {
898                                goto yy437;
899                            } else {
900                                goto yy468;
901                            }
902                        } else {
903                            if (yyaccept <= 17) {
904                                goto yy474;
905                            } else {
906                                goto yy482;
907                            }
908                        }
909                    } else {
910                        if (yyaccept <= 20) {
911                            if (yyaccept <= 19) {
912                                goto yy490;
913                            } else {
914                                goto yy495;
915                            }
916                        } else {
917                            goto yy500;
918                        }
919                    }
920                } else {
921                    if (yyaccept <= 25) {
922                        if (yyaccept <= 23) {
923                            if (yyaccept <= 22) {
924                                goto yy503;
925                            } else {
926                                goto yy513;
927                            }
928                        } else {
929                            if (yyaccept <= 24) {
930                                goto yy519;
931                            } else {
932                                goto yy522;
933                            }
934                        }
935                    } else {
936                        if (yyaccept <= 27) {
937                            if (yyaccept <= 26) {
938                                goto yy529;
939                            } else {
940                                goto yy536;
941                            }
942                        } else {
943                            goto yy538;
944                        }
945                    }
946                }
947            }
948        } else {
949            if (yyaccept <= 42) {
950                if (yyaccept <= 35) {
951                    if (yyaccept <= 32) {
952                        if (yyaccept <= 30) {
953                            if (yyaccept <= 29) {
954                                goto yy540;
955                            } else {
956                                goto yy542;
957                            }
958                        } else {
959                            if (yyaccept <= 31) {
960                                goto yy548;
961                            } else {
962                                goto yy554;
963                            }
964                        }
965                    } else {
966                        if (yyaccept <= 34) {
967                            if (yyaccept <= 33) {
968                                goto yy564;
969                            } else {
970                                goto yy566;
971                            }
972                        } else {
973                            goto yy572;
974                        }
975                    }
976                } else {
977                    if (yyaccept <= 39) {
978                        if (yyaccept <= 37) {
979                            if (yyaccept <= 36) {
980                                goto yy579;
981                            } else {
982                                goto yy587;
983                            }
984                        } else {
985                            if (yyaccept <= 38) {
986                                goto yy590;
987                            } else {
988                                goto yy603;
989                            }
990                        }
991                    } else {
992                        if (yyaccept <= 41) {
993                            if (yyaccept <= 40) {
994                                goto yy605;
995                            } else {
996                                goto yy608;
997                            }
998                        } else {
999                            goto yy611;
1000                        }
1001                    }
1002                }
1003            } else {
1004                if (yyaccept <= 49) {
1005                    if (yyaccept <= 46) {
1006                        if (yyaccept <= 44) {
1007                            if (yyaccept <= 43) {
1008                                goto yy613;
1009                            } else {
1010                                goto yy619;
1011                            }
1012                        } else {
1013                            if (yyaccept <= 45) {
1014                                goto yy628;
1015                            } else {
1016                                goto yy630;
1017                            }
1018                        }
1019                    } else {
1020                        if (yyaccept <= 48) {
1021                            if (yyaccept <= 47) {
1022                                goto yy637;
1023                            } else {
1024                                goto yy646;
1025                            }
1026                        } else {
1027                            goto yy652;
1028                        }
1029                    }
1030                } else {
1031                    if (yyaccept <= 53) {
1032                        if (yyaccept <= 51) {
1033                            if (yyaccept <= 50) {
1034                                goto yy656;
1035                            } else {
1036                                goto yy663;
1037                            }
1038                        } else {
1039                            if (yyaccept <= 52) {
1040                                goto yy669;
1041                            } else {
1042                                goto yy675;
1043                            }
1044                        }
1045                    } else {
1046                        if (yyaccept <= 55) {
1047                            if (yyaccept <= 54) {
1048                                goto yy679;
1049                            } else {
1050                                goto yy683;
1051                            }
1052                        } else {
1053                            goto yy691;
1054                        }
1055                    }
1056                }
1057            }
1058        }
1059    } else {
1060        if (yyaccept <= 85) {
1061            if (yyaccept <= 71) {
1062                if (yyaccept <= 64) {
1063                    if (yyaccept <= 60) {
1064                        if (yyaccept <= 58) {
1065                            if (yyaccept <= 57) {
1066                                goto yy705;
1067                            } else {
1068                                goto yy711;
1069                            }
1070                        } else {
1071                            if (yyaccept <= 59) {
1072                                goto yy718;
1073                            } else {
1074                                goto yy727;
1075                            }
1076                        }
1077                    } else {
1078                        if (yyaccept <= 62) {
1079                            if (yyaccept <= 61) {
1080                                goto yy732;
1081                            } else {
1082                                goto yy735;
1083                            }
1084                        } else {
1085                            if (yyaccept <= 63) {
1086                                goto yy739;
1087                            } else {
1088                                goto yy746;
1089                            }
1090                        }
1091                    }
1092                } else {
1093                    if (yyaccept <= 68) {
1094                        if (yyaccept <= 66) {
1095                            if (yyaccept <= 65) {
1096                                goto yy756;
1097                            } else {
1098                                goto yy759;
1099                            }
1100                        } else {
1101                            if (yyaccept <= 67) {
1102                                goto yy763;
1103                            } else {
1104                                goto yy769;
1105                            }
1106                        }
1107                    } else {
1108                        if (yyaccept <= 70) {
1109                            if (yyaccept <= 69) {
1110                                goto yy771;
1111                            } else {
1112                                goto yy779;
1113                            }
1114                        } else {
1115                            goto yy786;
1116                        }
1117                    }
1118                }
1119            } else {
1120                if (yyaccept <= 78) {
1121                    if (yyaccept <= 75) {
1122                        if (yyaccept <= 73) {
1123                            if (yyaccept <= 72) {
1124                                goto yy790;
1125                            } else {
1126                                goto yy792;
1127                            }
1128                        } else {
1129                            if (yyaccept <= 74) {
1130                                goto yy797;
1131                            } else {
1132                                goto yy801;
1133                            }
1134                        }
1135                    } else {
1136                        if (yyaccept <= 77) {
1137                            if (yyaccept <= 76) {
1138                                goto yy806;
1139                            } else {
1140                                goto yy810;
1141                            }
1142                        } else {
1143                            goto yy819;
1144                        }
1145                    }
1146                } else {
1147                    if (yyaccept <= 82) {
1148                        if (yyaccept <= 80) {
1149                            if (yyaccept <= 79) {
1150                                goto yy821;
1151                            } else {
1152                                goto yy825;
1153                            }
1154                        } else {
1155                            if (yyaccept <= 81) {
1156                                goto yy829;
1157                            } else {
1158                                goto yy838;
1159                            }
1160                        }
1161                    } else {
1162                        if (yyaccept <= 84) {
1163                            if (yyaccept <= 83) {
1164                                goto yy843;
1165                            } else {
1166                                goto yy848;
1167                            }
1168                        } else {
1169                            goto yy851;
1170                        }
1171                    }
1172                }
1173            }
1174        } else {
1175            if (yyaccept <= 99) {
1176                if (yyaccept <= 92) {
1177                    if (yyaccept <= 89) {
1178                        if (yyaccept <= 87) {
1179                            if (yyaccept <= 86) {
1180                                goto yy854;
1181                            } else {
1182                                goto yy857;
1183                            }
1184                        } else {
1185                            if (yyaccept <= 88) {
1186                                goto yy869;
1187                            } else {
1188                                goto yy874;
1189                            }
1190                        }
1191                    } else {
1192                        if (yyaccept <= 91) {
1193                            if (yyaccept <= 90) {
1194                                goto yy881;
1195                            } else {
1196                                goto yy886;
1197                            }
1198                        } else {
1199                            goto yy892;
1200                        }
1201                    }
1202                } else {
1203                    if (yyaccept <= 96) {
1204                        if (yyaccept <= 94) {
1205                            if (yyaccept <= 93) {
1206                                goto yy901;
1207                            } else {
1208                                goto yy908;
1209                            }
1210                        } else {
1211                            if (yyaccept <= 95) {
1212                                goto yy910;
1213                            } else {
1214                                goto yy916;
1215                            }
1216                        }
1217                    } else {
1218                        if (yyaccept <= 98) {
1219                            if (yyaccept <= 97) {
1220                                goto yy921;
1221                            } else {
1222                                goto yy925;
1223                            }
1224                        } else {
1225                            goto yy928;
1226                        }
1227                    }
1228                }
1229            } else {
1230                if (yyaccept <= 106) {
1231                    if (yyaccept <= 103) {
1232                        if (yyaccept <= 101) {
1233                            if (yyaccept <= 100) {
1234                                goto yy934;
1235                            } else {
1236                                goto yy938;
1237                            }
1238                        } else {
1239                            if (yyaccept <= 102) {
1240                                goto yy943;
1241                            } else {
1242                                goto yy945;
1243                            }
1244                        }
1245                    } else {
1246                        if (yyaccept <= 105) {
1247                            if (yyaccept <= 104) {
1248                                goto yy952;
1249                            } else {
1250                                goto yy955;
1251                            }
1252                        } else {
1253                            goto yy960;
1254                        }
1255                    }
1256                } else {
1257                    if (yyaccept <= 110) {
1258                        if (yyaccept <= 108) {
1259                            if (yyaccept <= 107) {
1260                                goto yy963;
1261                            } else {
1262                                goto yy970;
1263                            }
1264                        } else {
1265                            if (yyaccept <= 109) {
1266                                goto yy972;
1267                            } else {
1268                                goto yy974;
1269                            }
1270                        }
1271                    } else {
1272                        if (yyaccept <= 112) {
1273                            if (yyaccept <= 111) {
1274                                goto yy978;
1275                            } else {
1276                                goto yy985;
1277                            }
1278                        } else {
1279                            goto yy987;
1280                        }
1281                    }
1282                }
1283            }
1284        }
1285    }
1286yy100:
1287    yych = *++YYCURSOR;
1288    if (yych <= '@') {
1289        if (yych <= '/') goto yy99;
1290        if (yych >= ':') goto yy99;
1291    } else {
1292        if (yych <= 'F') goto yy101;
1293        if (yych <= '`') goto yy99;
1294        if (yych >= 'g') goto yy99;
1295    }
1296yy101:
1297    yych = *++YYCURSOR;
1298    if (yych <= '@') {
1299        if (yych <= '/') goto yy99;
1300        if (yych >= ':') goto yy99;
1301    } else {
1302        if (yych <= 'F') goto yy102;
1303        if (yych <= '`') goto yy99;
1304        if (yych >= 'g') goto yy99;
1305    }
1306yy102:
1307    yych = *++YYCURSOR;
1308    if (yych <= '@') {
1309        if (yych <= '/') goto yy99;
1310        if (yych >= ':') goto yy99;
1311    } else {
1312        if (yych <= 'F') goto yy103;
1313        if (yych <= '`') goto yy99;
1314        if (yych >= 'g') goto yy99;
1315    }
1316yy103:
1317    yych = *++YYCURSOR;
1318    if (yych <= '@') {
1319        if (yych <= '/') goto yy99;
1320        if (yych >= ':') goto yy99;
1321    } else {
1322        if (yych <= 'F') goto yy104;
1323        if (yych <= '`') goto yy99;
1324        if (yych >= 'g') goto yy99;
1325    }
1326yy104:
1327    yych = *++YYCURSOR;
1328    if (yych <= '@') {
1329        if (yych <= '/') goto yy99;
1330        if (yych >= ':') goto yy99;
1331    } else {
1332        if (yych <= 'F') goto yy105;
1333        if (yych <= '`') goto yy99;
1334        if (yych >= 'g') goto yy99;
1335    }
1336yy105:
1337    yych = *++YYCURSOR;
1338    if (yych <= '@') {
1339        if (yych <= '/') goto yy99;
1340        if (yych >= ':') goto yy99;
1341    } else {
1342        if (yych <= 'F') goto yy106;
1343        if (yych <= '`') goto yy99;
1344        if (yych >= 'g') goto yy99;
1345    }
1346yy106:
1347    yych = *++YYCURSOR;
1348    if (yych <= '@') {
1349        if (yych <= '/') goto yy99;
1350        if (yych >= ':') goto yy99;
1351    } else {
1352        if (yych <= 'F') goto yy107;
1353        if (yych <= '`') goto yy99;
1354        if (yych >= 'g') goto yy99;
1355    }
1356yy107:
1357    yych = *++YYCURSOR;
1358    if (yych <= '@') {
1359        if (yych <= '/') goto yy99;
1360        if (yych >= ':') goto yy99;
1361    } else {
1362        if (yych <= 'F') goto yy108;
1363        if (yych <= '`') goto yy99;
1364        if (yych >= 'g') goto yy99;
1365    }
1366yy108:
1367    yyaccept = 1;
1368    YYMARKER = ++YYCURSOR;
1369    if (YYLIMIT <= YYCURSOR) YYFILL(1);
1370    yych = *YYCURSOR;
1371yy109:
1372    if (yybm[256+yych] & 32) {
1373        goto yy108;
1374    }
1375    if (yych == '?') goto yy111;
1376    if (yych != '\\') goto yy9;
1377yy110:
1378    ++YYCURSOR;
1379    if (YYLIMIT <= YYCURSOR) YYFILL(1);
1380    yych = *YYCURSOR;
1381    if (yych == 'U') goto yy114;
1382    if (yych == 'u') goto yy113;
1383    goto yy99;
1384yy111:
1385    ++YYCURSOR;
1386    if (YYLIMIT <= YYCURSOR) YYFILL(1);
1387    yych = *YYCURSOR;
1388    if (yych != '?') goto yy99;
1389    ++YYCURSOR;
1390    if (YYLIMIT <= YYCURSOR) YYFILL(1);
1391    yych = *YYCURSOR;
1392    if (yych == '/') goto yy110;
1393    goto yy99;
1394yy113:
1395    ++YYCURSOR;
1396    if (YYLIMIT <= YYCURSOR) YYFILL(1);
1397    yych = *YYCURSOR;
1398    if (yych <= '@') {
1399        if (yych <= '/') goto yy99;
1400        if (yych <= '9') goto yy122;
1401        goto yy99;
1402    } else {
1403        if (yych <= 'F') goto yy122;
1404        if (yych <= '`') goto yy99;
1405        if (yych <= 'f') goto yy122;
1406        goto yy99;
1407    }
1408yy114:
1409    ++YYCURSOR;
1410    if (YYLIMIT <= YYCURSOR) YYFILL(1);
1411    yych = *YYCURSOR;
1412    if (yych <= '@') {
1413        if (yych <= '/') goto yy99;
1414        if (yych >= ':') goto yy99;
1415    } else {
1416        if (yych <= 'F') goto yy115;
1417        if (yych <= '`') goto yy99;
1418        if (yych >= 'g') goto yy99;
1419    }
1420yy115:
1421    ++YYCURSOR;
1422    if (YYLIMIT <= YYCURSOR) YYFILL(1);
1423    yych = *YYCURSOR;
1424    if (yych <= '@') {
1425        if (yych <= '/') goto yy99;
1426        if (yych >= ':') goto yy99;
1427    } else {
1428        if (yych <= 'F') goto yy116;
1429        if (yych <= '`') goto yy99;
1430        if (yych >= 'g') goto yy99;
1431    }
1432yy116:
1433    ++YYCURSOR;
1434    if (YYLIMIT <= YYCURSOR) YYFILL(1);
1435    yych = *YYCURSOR;
1436    if (yych <= '@') {
1437        if (yych <= '/') goto yy99;
1438        if (yych >= ':') goto yy99;
1439    } else {
1440        if (yych <= 'F') goto yy117;
1441        if (yych <= '`') goto yy99;
1442        if (yych >= 'g') goto yy99;
1443    }
1444yy117:
1445    ++YYCURSOR;
1446    if (YYLIMIT <= YYCURSOR) YYFILL(1);
1447    yych = *YYCURSOR;
1448    if (yych <= '@') {
1449        if (yych <= '/') goto yy99;
1450        if (yych >= ':') goto yy99;
1451    } else {
1452        if (yych <= 'F') goto yy118;
1453        if (yych <= '`') goto yy99;
1454        if (yych >= 'g') goto yy99;
1455    }
1456yy118:
1457    ++YYCURSOR;
1458    if (YYLIMIT <= YYCURSOR) YYFILL(1);
1459    yych = *YYCURSOR;
1460    if (yych <= '@') {
1461        if (yych <= '/') goto yy99;
1462        if (yych >= ':') goto yy99;
1463    } else {
1464        if (yych <= 'F') goto yy119;
1465        if (yych <= '`') goto yy99;
1466        if (yych >= 'g') goto yy99;
1467    }
1468yy119:
1469    ++YYCURSOR;
1470    if (YYLIMIT <= YYCURSOR) YYFILL(1);
1471    yych = *YYCURSOR;
1472    if (yych <= '@') {
1473        if (yych <= '/') goto yy99;
1474        if (yych >= ':') goto yy99;
1475    } else {
1476        if (yych <= 'F') goto yy120;
1477        if (yych <= '`') goto yy99;
1478        if (yych >= 'g') goto yy99;
1479    }
1480yy120:
1481    ++YYCURSOR;
1482    if (YYLIMIT <= YYCURSOR) YYFILL(1);
1483    yych = *YYCURSOR;
1484    if (yych <= '@') {
1485        if (yych <= '/') goto yy99;
1486        if (yych >= ':') goto yy99;
1487    } else {
1488        if (yych <= 'F') goto yy121;
1489        if (yych <= '`') goto yy99;
1490        if (yych >= 'g') goto yy99;
1491    }
1492yy121:
1493    ++YYCURSOR;
1494    if (YYLIMIT <= YYCURSOR) YYFILL(1);
1495    yych = *YYCURSOR;
1496    if (yych <= '@') {
1497        if (yych <= '/') goto yy99;
1498        if (yych <= '9') goto yy108;
1499        goto yy99;
1500    } else {
1501        if (yych <= 'F') goto yy108;
1502        if (yych <= '`') goto yy99;
1503        if (yych <= 'f') goto yy108;
1504        goto yy99;
1505    }
1506yy122:
1507    ++YYCURSOR;
1508    if (YYLIMIT <= YYCURSOR) YYFILL(1);
1509    yych = *YYCURSOR;
1510    if (yych <= '@') {
1511        if (yych <= '/') goto yy99;
1512        if (yych >= ':') goto yy99;
1513    } else {
1514        if (yych <= 'F') goto yy123;
1515        if (yych <= '`') goto yy99;
1516        if (yych >= 'g') goto yy99;
1517    }
1518yy123:
1519    ++YYCURSOR;
1520    if (YYLIMIT <= YYCURSOR) YYFILL(1);
1521    yych = *YYCURSOR;
1522    if (yych <= '@') {
1523        if (yych <= '/') goto yy99;
1524        if (yych >= ':') goto yy99;
1525    } else {
1526        if (yych <= 'F') goto yy124;
1527        if (yych <= '`') goto yy99;
1528        if (yych >= 'g') goto yy99;
1529    }
1530yy124:
1531    ++YYCURSOR;
1532    if (YYLIMIT <= YYCURSOR) YYFILL(1);
1533    yych = *YYCURSOR;
1534    if (yych <= '@') {
1535        if (yych <= '/') goto yy99;
1536        if (yych <= '9') goto yy108;
1537        goto yy99;
1538    } else {
1539        if (yych <= 'F') goto yy108;
1540        if (yych <= '`') goto yy99;
1541        if (yych <= 'f') goto yy108;
1542        goto yy99;
1543    }
1544yy125:
1545    yych = *++YYCURSOR;
1546    if (yych <= '@') {
1547        if (yych <= '/') goto yy99;
1548        if (yych >= ':') goto yy99;
1549    } else {
1550        if (yych <= 'F') goto yy126;
1551        if (yych <= '`') goto yy99;
1552        if (yych >= 'g') goto yy99;
1553    }
1554yy126:
1555    yych = *++YYCURSOR;
1556    if (yych <= '@') {
1557        if (yych <= '/') goto yy99;
1558        if (yych >= ':') goto yy99;
1559    } else {
1560        if (yych <= 'F') goto yy127;
1561        if (yych <= '`') goto yy99;
1562        if (yych >= 'g') goto yy99;
1563    }
1564yy127:
1565    yych = *++YYCURSOR;
1566    if (yych <= '@') {
1567        if (yych <= '/') goto yy99;
1568        if (yych <= '9') goto yy108;
1569        goto yy99;
1570    } else {
1571        if (yych <= 'F') goto yy108;
1572        if (yych <= '`') goto yy99;
1573        if (yych <= 'f') goto yy108;
1574        goto yy99;
1575    }
1576yy128:
1577    yyaccept = 1;
1578    yych = *(YYMARKER = ++YYCURSOR);
1579    if (yych == '"') goto yy133;
1580    goto yy109;
1581yy129:
1582    ++YYCURSOR;
1583#line 275 "cpp.re"
1584    {
1585            if (s->act_in_cpp0x_mode)
1586                goto extstringlit;
1587            --YYCURSOR;
1588            BOOST_WAVE_RET(T_IDENTIFIER);
1589        }
1590#line 1591 "cpp_re.inc"
1591yy131:
1592    ++YYCURSOR;
1593#line 267 "cpp.re"
1594    {
1595            if (s->act_in_cpp0x_mode)
1596                goto extcharlit;
1597            --YYCURSOR;
1598            BOOST_WAVE_RET(T_IDENTIFIER);
1599        }
1600#line 1601 "cpp_re.inc"
1601yy133:
1602    ++YYCURSOR;
1603#line 283 "cpp.re"
1604    {
1605            if (s->act_in_cpp0x_mode)
1606                goto extrawstringlit;
1607            --YYCURSOR;
1608            BOOST_WAVE_RET(T_IDENTIFIER);
1609        }
1610#line 1611 "cpp_re.inc"
1611yy135:
1612    ++YYCURSOR;
1613#line 259 "cpp.re"
1614    {
1615            if (s->act_in_cpp0x_mode)
1616                goto extrawstringlit;
1617            --YYCURSOR;
1618            BOOST_WAVE_RET(T_IDENTIFIER);
1619        }
1620#line 1621 "cpp_re.inc"
1621yy137:
1622    ++YYCURSOR;
1623    if (YYLIMIT <= YYCURSOR) YYFILL(1);
1624    yych = *YYCURSOR;
1625yy138:
1626    if (yybm[256+yych] & 64) {
1627        goto yy137;
1628    }
1629    if (yych <= '!') goto yy99;
1630    if (yych <= '"') goto yy141;
1631    if (yych >= '\\') goto yy140;
1632yy139:
1633    ++YYCURSOR;
1634    if (YYLIMIT <= YYCURSOR) YYFILL(1);
1635    yych = *YYCURSOR;
1636    if (yybm[256+yych] & 64) {
1637        goto yy137;
1638    }
1639    if (yych <= '!') goto yy99;
1640    if (yych <= '"') goto yy141;
1641    if (yych <= '[') goto yy152;
1642yy140:
1643    ++YYCURSOR;
1644    if (YYLIMIT <= YYCURSOR) YYFILL(1);
1645    yych = *YYCURSOR;
1646    if (yych <= '`') {
1647        if (yych <= '7') {
1648            if (yych <= '&') {
1649                if (yych == '"') goto yy137;
1650                goto yy99;
1651            } else {
1652                if (yych <= '\'') goto yy137;
1653                if (yych <= '/') goto yy99;
1654                goto yy147;
1655            }
1656        } else {
1657            if (yych <= 'T') {
1658                if (yych == '?') goto yy145;
1659                goto yy99;
1660            } else {
1661                if (yych <= 'U') goto yy144;
1662                if (yych == '\\') goto yy137;
1663                goto yy99;
1664            }
1665        }
1666    } else {
1667        if (yych <= 'r') {
1668            if (yych <= 'f') {
1669                if (yych <= 'b') goto yy137;
1670                if (yych <= 'e') goto yy99;
1671                goto yy137;
1672            } else {
1673                if (yych == 'n') goto yy137;
1674                if (yych <= 'q') goto yy99;
1675                goto yy137;
1676            }
1677        } else {
1678            if (yych <= 'u') {
1679                if (yych <= 's') goto yy99;
1680                if (yych <= 't') goto yy137;
1681                goto yy143;
1682            } else {
1683                if (yych <= 'v') goto yy137;
1684                if (yych == 'x') goto yy146;
1685                goto yy99;
1686            }
1687        }
1688    }
1689yy141:
1690    ++YYCURSOR;
1691yy142:
1692#line 256 "cpp.re"
1693    { BOOST_WAVE_RET(T_STRINGLIT); }
1694#line 1695 "cpp_re.inc"
1695yy143:
1696    ++YYCURSOR;
1697    if (YYLIMIT <= YYCURSOR) YYFILL(1);
1698    yych = *YYCURSOR;
1699    if (yych <= '@') {
1700        if (yych <= '/') goto yy99;
1701        if (yych <= '9') goto yy178;
1702        goto yy99;
1703    } else {
1704        if (yych <= 'F') goto yy178;
1705        if (yych <= '`') goto yy99;
1706        if (yych <= 'f') goto yy178;
1707        goto yy99;
1708    }
1709yy144:
1710    ++YYCURSOR;
1711    if (YYLIMIT <= YYCURSOR) YYFILL(1);
1712    yych = *YYCURSOR;
1713    if (yych <= '@') {
1714        if (yych <= '/') goto yy99;
1715        if (yych <= '9') goto yy171;
1716        goto yy99;
1717    } else {
1718        if (yych <= 'F') goto yy171;
1719        if (yych <= '`') goto yy99;
1720        if (yych <= 'f') goto yy171;
1721        goto yy99;
1722    }
1723yy145:
1724    ++YYCURSOR;
1725    if (YYLIMIT <= YYCURSOR) YYFILL(1);
1726    yych = *YYCURSOR;
1727    if (yybm[256+yych] & 64) {
1728        goto yy137;
1729    }
1730    if (yych <= '!') goto yy99;
1731    if (yych <= '"') goto yy141;
1732    if (yych <= '[') goto yy151;
1733    goto yy140;
1734yy146:
1735    ++YYCURSOR;
1736    if (YYLIMIT <= YYCURSOR) YYFILL(1);
1737    yych = *YYCURSOR;
1738    if (yybm[256+yych] & 128) {
1739        goto yy149;
1740    }
1741    goto yy99;
1742yy147:
1743    ++YYCURSOR;
1744    if (YYLIMIT <= YYCURSOR) YYFILL(1);
1745    yych = *YYCURSOR;
1746    if (yych <= '"') {
1747        if (yych <= '\n') {
1748            if (yych == '\t') goto yy137;
1749            goto yy99;
1750        } else {
1751            if (yych <= '\f') goto yy137;
1752            if (yych <= 0x1F) goto yy99;
1753            if (yych <= '!') goto yy137;
1754            goto yy141;
1755        }
1756    } else {
1757        if (yych <= '>') {
1758            if (yych <= '/') goto yy137;
1759            if (yych >= '8') goto yy137;
1760        } else {
1761            if (yych <= '?') goto yy139;
1762            if (yych == '\\') goto yy140;
1763            goto yy137;
1764        }
1765    }
1766    ++YYCURSOR;
1767    if (YYLIMIT <= YYCURSOR) YYFILL(1);
1768    yych = *YYCURSOR;
1769    if (yybm[256+yych] & 64) {
1770        goto yy137;
1771    }
1772    if (yych <= '!') goto yy99;
1773    if (yych <= '"') goto yy141;
1774    if (yych <= '[') goto yy139;
1775    goto yy140;
1776yy149:
1777    ++YYCURSOR;
1778    if (YYLIMIT <= YYCURSOR) YYFILL(1);
1779    yych = *YYCURSOR;
1780    if (yybm[256+yych] & 128) {
1781        goto yy149;
1782    }
1783    if (yych <= '!') {
1784        if (yych <= '\n') {
1785            if (yych == '\t') goto yy137;
1786            goto yy99;
1787        } else {
1788            if (yych <= '\f') goto yy137;
1789            if (yych <= 0x1F) goto yy99;
1790            goto yy137;
1791        }
1792    } else {
1793        if (yych <= '?') {
1794            if (yych <= '"') goto yy141;
1795            if (yych <= '>') goto yy137;
1796            goto yy139;
1797        } else {
1798            if (yych == '\\') goto yy140;
1799            goto yy137;
1800        }
1801    }
1802yy151:
1803    ++YYCURSOR;
1804    if (YYLIMIT <= YYCURSOR) YYFILL(1);
1805    yych = *YYCURSOR;
1806    if (yybm[256+yych] & 64) {
1807        goto yy137;
1808    }
1809    if (yych <= '!') goto yy99;
1810    if (yych <= '"') goto yy141;
1811    if (yych >= '\\') goto yy140;
1812yy152:
1813    ++YYCURSOR;
1814    if (YYLIMIT <= YYCURSOR) YYFILL(1);
1815    yych = *YYCURSOR;
1816    if (yybm[0+yych] & 1) {
1817        goto yy152;
1818    }
1819    if (yych <= '!') {
1820        if (yych <= '\n') {
1821            if (yych == '\t') goto yy137;
1822            goto yy99;
1823        } else {
1824            if (yych <= '\f') goto yy137;
1825            if (yych <= 0x1F) goto yy99;
1826            goto yy137;
1827        }
1828    } else {
1829        if (yych <= '/') {
1830            if (yych <= '"') goto yy141;
1831            if (yych <= '.') goto yy137;
1832        } else {
1833            if (yych == '\\') goto yy140;
1834            goto yy137;
1835        }
1836    }
1837yy154:
1838    ++YYCURSOR;
1839    if (YYLIMIT <= YYCURSOR) YYFILL(1);
1840    yych = *YYCURSOR;
1841    if (yybm[0+yych] & 2) {
1842        goto yy154;
1843    }
1844    if (yych <= '7') {
1845        if (yych <= '\f') {
1846            if (yych == '\t') goto yy137;
1847            if (yych <= '\n') goto yy99;
1848            goto yy137;
1849        } else {
1850            if (yych <= '!') {
1851                if (yych <= 0x1F) goto yy99;
1852                goto yy137;
1853            } else {
1854                if (yych <= '"') goto yy158;
1855                if (yych <= '/') goto yy137;
1856                goto yy147;
1857            }
1858        }
1859    } else {
1860        if (yych <= 'U') {
1861            if (yych == '?') goto yy159;
1862            if (yych <= 'T') goto yy137;
1863            goto yy157;
1864        } else {
1865            if (yych <= 'u') {
1866                if (yych <= 't') goto yy137;
1867            } else {
1868                if (yych == 'x') goto yy149;
1869                goto yy137;
1870            }
1871        }
1872    }
1873    ++YYCURSOR;
1874    if (YYLIMIT <= YYCURSOR) YYFILL(1);
1875    yych = *YYCURSOR;
1876    if (yych <= '9') {
1877        if (yych <= '\f') {
1878            if (yych == '\t') goto yy137;
1879            if (yych <= '\n') goto yy99;
1880            goto yy137;
1881        } else {
1882            if (yych <= '!') {
1883                if (yych <= 0x1F) goto yy99;
1884                goto yy137;
1885            } else {
1886                if (yych <= '"') goto yy141;
1887                if (yych <= '/') goto yy137;
1888                goto yy168;
1889            }
1890        }
1891    } else {
1892        if (yych <= 'F') {
1893            if (yych == '?') goto yy139;
1894            if (yych <= '@') goto yy137;
1895            goto yy168;
1896        } else {
1897            if (yych <= '\\') {
1898                if (yych <= '[') goto yy137;
1899                goto yy140;
1900            } else {
1901                if (yych <= '`') goto yy137;
1902                if (yych <= 'f') goto yy168;
1903                goto yy137;
1904            }
1905        }
1906    }
1907yy157:
1908    ++YYCURSOR;
1909    if (YYLIMIT <= YYCURSOR) YYFILL(1);
1910    yych = *YYCURSOR;
1911    if (yych <= '9') {
1912        if (yych <= '\f') {
1913            if (yych == '\t') goto yy137;
1914            if (yych <= '\n') goto yy99;
1915            goto yy137;
1916        } else {
1917            if (yych <= '!') {
1918                if (yych <= 0x1F) goto yy99;
1919                goto yy137;
1920            } else {
1921                if (yych <= '"') goto yy141;
1922                if (yych <= '/') goto yy137;
1923                goto yy161;
1924            }
1925        }
1926    } else {
1927        if (yych <= 'F') {
1928            if (yych == '?') goto yy139;
1929            if (yych <= '@') goto yy137;
1930            goto yy161;
1931        } else {
1932            if (yych <= '\\') {
1933                if (yych <= '[') goto yy137;
1934                goto yy140;
1935            } else {
1936                if (yych <= '`') goto yy137;
1937                if (yych <= 'f') goto yy161;
1938                goto yy137;
1939            }
1940        }
1941    }
1942yy158:
1943    yyaccept = 6;
1944    YYMARKER = ++YYCURSOR;
1945    if (YYLIMIT <= YYCURSOR) YYFILL(1);
1946    yych = *YYCURSOR;
1947    if (yybm[256+yych] & 64) {
1948        goto yy137;
1949    }
1950    if (yych <= '!') goto yy142;
1951    if (yych <= '"') goto yy141;
1952    if (yych <= '[') goto yy139;
1953    goto yy140;
1954yy159:
1955    ++YYCURSOR;
1956    if (YYLIMIT <= YYCURSOR) YYFILL(1);
1957    yych = *YYCURSOR;
1958    if (yybm[256+yych] & 64) {
1959        goto yy137;
1960    }
1961    if (yych <= '!') goto yy99;
1962    if (yych <= '"') goto yy141;
1963    if (yych >= '\\') goto yy140;
1964    ++YYCURSOR;
1965    if (YYLIMIT <= YYCURSOR) YYFILL(1);
1966    yych = *YYCURSOR;
1967    if (yybm[0+yych] & 1) {
1968        goto yy152;
1969    }
1970    if (yych <= '!') {
1971        if (yych <= '\n') {
1972            if (yych == '\t') goto yy137;
1973            goto yy99;
1974        } else {
1975            if (yych <= '\f') goto yy137;
1976            if (yych <= 0x1F) goto yy99;
1977            goto yy137;
1978        }
1979    } else {
1980        if (yych <= '/') {
1981            if (yych <= '"') goto yy141;
1982            if (yych <= '.') goto yy137;
1983            goto yy154;
1984        } else {
1985            if (yych == '\\') goto yy140;
1986            goto yy137;
1987        }
1988    }
1989yy161:
1990    ++YYCURSOR;
1991    if (YYLIMIT <= YYCURSOR) YYFILL(1);
1992    yych = *YYCURSOR;
1993    if (yych <= '9') {
1994        if (yych <= '\f') {
1995            if (yych == '\t') goto yy137;
1996            if (yych <= '\n') goto yy99;
1997            goto yy137;
1998        } else {
1999            if (yych <= '!') {
2000                if (yych <= 0x1F) goto yy99;
2001                goto yy137;
2002            } else {
2003                if (yych <= '"') goto yy141;
2004                if (yych <= '/') goto yy137;
2005            }
2006        }
2007    } else {
2008        if (yych <= 'F') {
2009            if (yych == '?') goto yy139;
2010            if (yych <= '@') goto yy137;
2011        } else {
2012            if (yych <= '\\') {
2013                if (yych <= '[') goto yy137;
2014                goto yy140;
2015            } else {
2016                if (yych <= '`') goto yy137;
2017                if (yych >= 'g') goto yy137;
2018            }
2019        }
2020    }
2021    ++YYCURSOR;
2022    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2023    yych = *YYCURSOR;
2024    if (yych <= '9') {
2025        if (yych <= '\f') {
2026            if (yych == '\t') goto yy137;
2027            if (yych <= '\n') goto yy99;
2028            goto yy137;
2029        } else {
2030            if (yych <= '!') {
2031                if (yych <= 0x1F) goto yy99;
2032                goto yy137;
2033            } else {
2034                if (yych <= '"') goto yy141;
2035                if (yych <= '/') goto yy137;
2036            }
2037        }
2038    } else {
2039        if (yych <= 'F') {
2040            if (yych == '?') goto yy139;
2041            if (yych <= '@') goto yy137;
2042        } else {
2043            if (yych <= '\\') {
2044                if (yych <= '[') goto yy137;
2045                goto yy140;
2046            } else {
2047                if (yych <= '`') goto yy137;
2048                if (yych >= 'g') goto yy137;
2049            }
2050        }
2051    }
2052    ++YYCURSOR;
2053    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2054    yych = *YYCURSOR;
2055    if (yych <= '9') {
2056        if (yych <= '\f') {
2057            if (yych == '\t') goto yy137;
2058            if (yych <= '\n') goto yy99;
2059            goto yy137;
2060        } else {
2061            if (yych <= '!') {
2062                if (yych <= 0x1F) goto yy99;
2063                goto yy137;
2064            } else {
2065                if (yych <= '"') goto yy141;
2066                if (yych <= '/') goto yy137;
2067            }
2068        }
2069    } else {
2070        if (yych <= 'F') {
2071            if (yych == '?') goto yy139;
2072            if (yych <= '@') goto yy137;
2073        } else {
2074            if (yych <= '\\') {
2075                if (yych <= '[') goto yy137;
2076                goto yy140;
2077            } else {
2078                if (yych <= '`') goto yy137;
2079                if (yych >= 'g') goto yy137;
2080            }
2081        }
2082    }
2083    ++YYCURSOR;
2084    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2085    yych = *YYCURSOR;
2086    if (yych <= '9') {
2087        if (yych <= '\f') {
2088            if (yych == '\t') goto yy137;
2089            if (yych <= '\n') goto yy99;
2090            goto yy137;
2091        } else {
2092            if (yych <= '!') {
2093                if (yych <= 0x1F) goto yy99;
2094                goto yy137;
2095            } else {
2096                if (yych <= '"') goto yy141;
2097                if (yych <= '/') goto yy137;
2098            }
2099        }
2100    } else {
2101        if (yych <= 'F') {
2102            if (yych == '?') goto yy139;
2103            if (yych <= '@') goto yy137;
2104        } else {
2105            if (yych <= '\\') {
2106                if (yych <= '[') goto yy137;
2107                goto yy140;
2108            } else {
2109                if (yych <= '`') goto yy137;
2110                if (yych >= 'g') goto yy137;
2111            }
2112        }
2113    }
2114    ++YYCURSOR;
2115    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2116    yych = *YYCURSOR;
2117    if (yych <= '9') {
2118        if (yych <= '\f') {
2119            if (yych == '\t') goto yy137;
2120            if (yych <= '\n') goto yy99;
2121            goto yy137;
2122        } else {
2123            if (yych <= '!') {
2124                if (yych <= 0x1F) goto yy99;
2125                goto yy137;
2126            } else {
2127                if (yych <= '"') goto yy141;
2128                if (yych <= '/') goto yy137;
2129            }
2130        }
2131    } else {
2132        if (yych <= 'F') {
2133            if (yych == '?') goto yy139;
2134            if (yych <= '@') goto yy137;
2135        } else {
2136            if (yych <= '\\') {
2137                if (yych <= '[') goto yy137;
2138                goto yy140;
2139            } else {
2140                if (yych <= '`') goto yy137;
2141                if (yych >= 'g') goto yy137;
2142            }
2143        }
2144    }
2145    ++YYCURSOR;
2146    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2147    yych = *YYCURSOR;
2148    if (yych <= '9') {
2149        if (yych <= '\f') {
2150            if (yych == '\t') goto yy137;
2151            if (yych <= '\n') goto yy99;
2152            goto yy137;
2153        } else {
2154            if (yych <= '!') {
2155                if (yych <= 0x1F) goto yy99;
2156                goto yy137;
2157            } else {
2158                if (yych <= '"') goto yy141;
2159                if (yych <= '/') goto yy137;
2160            }
2161        }
2162    } else {
2163        if (yych <= 'F') {
2164            if (yych == '?') goto yy139;
2165            if (yych <= '@') goto yy137;
2166        } else {
2167            if (yych <= '\\') {
2168                if (yych <= '[') goto yy137;
2169                goto yy140;
2170            } else {
2171                if (yych <= '`') goto yy137;
2172                if (yych >= 'g') goto yy137;
2173            }
2174        }
2175    }
2176    ++YYCURSOR;
2177    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2178    yych = *YYCURSOR;
2179    if (yybm[256+yych] & 64) {
2180        goto yy137;
2181    }
2182    if (yych <= '!') goto yy99;
2183    if (yych <= '"') goto yy141;
2184    if (yych <= '[') goto yy139;
2185    goto yy140;
2186yy168:
2187    ++YYCURSOR;
2188    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2189    yych = *YYCURSOR;
2190    if (yych <= '9') {
2191        if (yych <= '\f') {
2192            if (yych == '\t') goto yy137;
2193            if (yych <= '\n') goto yy99;
2194            goto yy137;
2195        } else {
2196            if (yych <= '!') {
2197                if (yych <= 0x1F) goto yy99;
2198                goto yy137;
2199            } else {
2200                if (yych <= '"') goto yy141;
2201                if (yych <= '/') goto yy137;
2202            }
2203        }
2204    } else {
2205        if (yych <= 'F') {
2206            if (yych == '?') goto yy139;
2207            if (yych <= '@') goto yy137;
2208        } else {
2209            if (yych <= '\\') {
2210                if (yych <= '[') goto yy137;
2211                goto yy140;
2212            } else {
2213                if (yych <= '`') goto yy137;
2214                if (yych >= 'g') goto yy137;
2215            }
2216        }
2217    }
2218    ++YYCURSOR;
2219    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2220    yych = *YYCURSOR;
2221    if (yych <= '9') {
2222        if (yych <= '\f') {
2223            if (yych == '\t') goto yy137;
2224            if (yych <= '\n') goto yy99;
2225            goto yy137;
2226        } else {
2227            if (yych <= '!') {
2228                if (yych <= 0x1F) goto yy99;
2229                goto yy137;
2230            } else {
2231                if (yych <= '"') goto yy141;
2232                if (yych <= '/') goto yy137;
2233            }
2234        }
2235    } else {
2236        if (yych <= 'F') {
2237            if (yych == '?') goto yy139;
2238            if (yych <= '@') goto yy137;
2239        } else {
2240            if (yych <= '\\') {
2241                if (yych <= '[') goto yy137;
2242                goto yy140;
2243            } else {
2244                if (yych <= '`') goto yy137;
2245                if (yych >= 'g') goto yy137;
2246            }
2247        }
2248    }
2249    ++YYCURSOR;
2250    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2251    yych = *YYCURSOR;
2252    if (yybm[256+yych] & 64) {
2253        goto yy137;
2254    }
2255    if (yych <= '!') goto yy99;
2256    if (yych <= '"') goto yy141;
2257    if (yych <= '[') goto yy139;
2258    goto yy140;
2259yy171:
2260    ++YYCURSOR;
2261    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2262    yych = *YYCURSOR;
2263    if (yych <= '@') {
2264        if (yych <= '/') goto yy99;
2265        if (yych >= ':') goto yy99;
2266    } else {
2267        if (yych <= 'F') goto yy172;
2268        if (yych <= '`') goto yy99;
2269        if (yych >= 'g') goto yy99;
2270    }
2271yy172:
2272    ++YYCURSOR;
2273    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2274    yych = *YYCURSOR;
2275    if (yych <= '@') {
2276        if (yych <= '/') goto yy99;
2277        if (yych >= ':') goto yy99;
2278    } else {
2279        if (yych <= 'F') goto yy173;
2280        if (yych <= '`') goto yy99;
2281        if (yych >= 'g') goto yy99;
2282    }
2283yy173:
2284    ++YYCURSOR;
2285    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2286    yych = *YYCURSOR;
2287    if (yych <= '@') {
2288        if (yych <= '/') goto yy99;
2289        if (yych >= ':') goto yy99;
2290    } else {
2291        if (yych <= 'F') goto yy174;
2292        if (yych <= '`') goto yy99;
2293        if (yych >= 'g') goto yy99;
2294    }
2295yy174:
2296    ++YYCURSOR;
2297    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2298    yych = *YYCURSOR;
2299    if (yych <= '@') {
2300        if (yych <= '/') goto yy99;
2301        if (yych >= ':') goto yy99;
2302    } else {
2303        if (yych <= 'F') goto yy175;
2304        if (yych <= '`') goto yy99;
2305        if (yych >= 'g') goto yy99;
2306    }
2307yy175:
2308    ++YYCURSOR;
2309    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2310    yych = *YYCURSOR;
2311    if (yych <= '@') {
2312        if (yych <= '/') goto yy99;
2313        if (yych >= ':') goto yy99;
2314    } else {
2315        if (yych <= 'F') goto yy176;
2316        if (yych <= '`') goto yy99;
2317        if (yych >= 'g') goto yy99;
2318    }
2319yy176:
2320    ++YYCURSOR;
2321    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2322    yych = *YYCURSOR;
2323    if (yych <= '@') {
2324        if (yych <= '/') goto yy99;
2325        if (yych >= ':') goto yy99;
2326    } else {
2327        if (yych <= 'F') goto yy177;
2328        if (yych <= '`') goto yy99;
2329        if (yych >= 'g') goto yy99;
2330    }
2331yy177:
2332    ++YYCURSOR;
2333    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2334    yych = *YYCURSOR;
2335    if (yych <= '@') {
2336        if (yych <= '/') goto yy99;
2337        if (yych <= '9') goto yy137;
2338        goto yy99;
2339    } else {
2340        if (yych <= 'F') goto yy137;
2341        if (yych <= '`') goto yy99;
2342        if (yych <= 'f') goto yy137;
2343        goto yy99;
2344    }
2345yy178:
2346    ++YYCURSOR;
2347    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2348    yych = *YYCURSOR;
2349    if (yych <= '@') {
2350        if (yych <= '/') goto yy99;
2351        if (yych >= ':') goto yy99;
2352    } else {
2353        if (yych <= 'F') goto yy179;
2354        if (yych <= '`') goto yy99;
2355        if (yych >= 'g') goto yy99;
2356    }
2357yy179:
2358    ++YYCURSOR;
2359    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2360    yych = *YYCURSOR;
2361    if (yych <= '@') {
2362        if (yych <= '/') goto yy99;
2363        if (yych >= ':') goto yy99;
2364    } else {
2365        if (yych <= 'F') goto yy180;
2366        if (yych <= '`') goto yy99;
2367        if (yych >= 'g') goto yy99;
2368    }
2369yy180:
2370    ++YYCURSOR;
2371    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2372    yych = *YYCURSOR;
2373    if (yych <= '@') {
2374        if (yych <= '/') goto yy99;
2375        if (yych <= '9') goto yy137;
2376        goto yy99;
2377    } else {
2378        if (yych <= 'F') goto yy137;
2379        if (yych <= '`') goto yy99;
2380        if (yych <= 'f') goto yy137;
2381        goto yy99;
2382    }
2383yy181:
2384    ++YYCURSOR;
2385    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2386    yych = *YYCURSOR;
2387yy182:
2388    if (yybm[0+yych] & 4) {
2389        goto yy181;
2390    }
2391    if (yych <= '&') goto yy99;
2392    if (yych <= '\'') goto yy191;
2393    if (yych >= '\\') goto yy184;
2394yy183:
2395    ++YYCURSOR;
2396    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2397    yych = *YYCURSOR;
2398    if (yybm[0+yych] & 4) {
2399        goto yy181;
2400    }
2401    if (yych <= '&') goto yy99;
2402    if (yych <= '\'') goto yy191;
2403    if (yych <= '[') goto yy196;
2404yy184:
2405    ++YYCURSOR;
2406    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2407    yych = *YYCURSOR;
2408    if (yych <= '`') {
2409        if (yych <= '7') {
2410            if (yych <= '&') {
2411                if (yych == '"') goto yy181;
2412                goto yy99;
2413            } else {
2414                if (yych <= '\'') goto yy181;
2415                if (yych <= '/') goto yy99;
2416                goto yy189;
2417            }
2418        } else {
2419            if (yych <= 'T') {
2420                if (yych == '?') goto yy187;
2421                goto yy99;
2422            } else {
2423                if (yych <= 'U') goto yy186;
2424                if (yych == '\\') goto yy181;
2425                goto yy99;
2426            }
2427        }
2428    } else {
2429        if (yych <= 'r') {
2430            if (yych <= 'f') {
2431                if (yych <= 'b') goto yy181;
2432                if (yych <= 'e') goto yy99;
2433                goto yy181;
2434            } else {
2435                if (yych == 'n') goto yy181;
2436                if (yych <= 'q') goto yy99;
2437                goto yy181;
2438            }
2439        } else {
2440            if (yych <= 'u') {
2441                if (yych <= 's') goto yy99;
2442                if (yych <= 't') goto yy181;
2443            } else {
2444                if (yych <= 'v') goto yy181;
2445                if (yych == 'x') goto yy188;
2446                goto yy99;
2447            }
2448        }
2449    }
2450    ++YYCURSOR;
2451    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2452    yych = *YYCURSOR;
2453    if (yych <= '@') {
2454        if (yych <= '/') goto yy99;
2455        if (yych <= '9') goto yy222;
2456        goto yy99;
2457    } else {
2458        if (yych <= 'F') goto yy222;
2459        if (yych <= '`') goto yy99;
2460        if (yych <= 'f') goto yy222;
2461        goto yy99;
2462    }
2463yy186:
2464    ++YYCURSOR;
2465    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2466    yych = *YYCURSOR;
2467    if (yych <= '@') {
2468        if (yych <= '/') goto yy99;
2469        if (yych <= '9') goto yy215;
2470        goto yy99;
2471    } else {
2472        if (yych <= 'F') goto yy215;
2473        if (yych <= '`') goto yy99;
2474        if (yych <= 'f') goto yy215;
2475        goto yy99;
2476    }
2477yy187:
2478    ++YYCURSOR;
2479    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2480    yych = *YYCURSOR;
2481    if (yybm[0+yych] & 4) {
2482        goto yy181;
2483    }
2484    if (yych <= '&') goto yy99;
2485    if (yych <= '\'') goto yy191;
2486    if (yych <= '[') goto yy195;
2487    goto yy184;
2488yy188:
2489    ++YYCURSOR;
2490    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2491    yych = *YYCURSOR;
2492    if (yych <= '@') {
2493        if (yych <= '/') goto yy99;
2494        if (yych <= '9') goto yy193;
2495        goto yy99;
2496    } else {
2497        if (yych <= 'F') goto yy193;
2498        if (yych <= '`') goto yy99;
2499        if (yych <= 'f') goto yy193;
2500        goto yy99;
2501    }
2502yy189:
2503    ++YYCURSOR;
2504    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2505    yych = *YYCURSOR;
2506    if (yych <= '\'') {
2507        if (yych <= '\n') {
2508            if (yych == '\t') goto yy181;
2509            goto yy99;
2510        } else {
2511            if (yych <= '\f') goto yy181;
2512            if (yych <= 0x1F) goto yy99;
2513            if (yych <= '&') goto yy181;
2514            goto yy191;
2515        }
2516    } else {
2517        if (yych <= '>') {
2518            if (yych <= '/') goto yy181;
2519            if (yych >= '8') goto yy181;
2520        } else {
2521            if (yych <= '?') goto yy183;
2522            if (yych == '\\') goto yy184;
2523            goto yy181;
2524        }
2525    }
2526    ++YYCURSOR;
2527    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2528    yych = *YYCURSOR;
2529    if (yybm[0+yych] & 4) {
2530        goto yy181;
2531    }
2532    if (yych <= '&') goto yy99;
2533    if (yych <= '\'') goto yy191;
2534    if (yych <= '[') goto yy183;
2535    goto yy184;
2536yy191:
2537    ++YYCURSOR;
2538yy192:
2539#line 253 "cpp.re"
2540    { BOOST_WAVE_RET(T_CHARLIT); }
2541#line 2542 "cpp_re.inc"
2542yy193:
2543    ++YYCURSOR;
2544    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2545    yych = *YYCURSOR;
2546    if (yych <= '9') {
2547        if (yych <= '\f') {
2548            if (yych == '\t') goto yy181;
2549            if (yych <= '\n') goto yy99;
2550            goto yy181;
2551        } else {
2552            if (yych <= '&') {
2553                if (yych <= 0x1F) goto yy99;
2554                goto yy181;
2555            } else {
2556                if (yych <= '\'') goto yy191;
2557                if (yych <= '/') goto yy181;
2558                goto yy193;
2559            }
2560        }
2561    } else {
2562        if (yych <= 'F') {
2563            if (yych == '?') goto yy183;
2564            if (yych <= '@') goto yy181;
2565            goto yy193;
2566        } else {
2567            if (yych <= '\\') {
2568                if (yych <= '[') goto yy181;
2569                goto yy184;
2570            } else {
2571                if (yych <= '`') goto yy181;
2572                if (yych <= 'f') goto yy193;
2573                goto yy181;
2574            }
2575        }
2576    }
2577yy195:
2578    ++YYCURSOR;
2579    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2580    yych = *YYCURSOR;
2581    if (yybm[0+yych] & 4) {
2582        goto yy181;
2583    }
2584    if (yych <= '&') goto yy99;
2585    if (yych <= '\'') goto yy191;
2586    if (yych >= '\\') goto yy184;
2587yy196:
2588    ++YYCURSOR;
2589    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2590    yych = *YYCURSOR;
2591    if (yych <= '\'') {
2592        if (yych <= '\n') {
2593            if (yych == '\t') goto yy181;
2594            goto yy99;
2595        } else {
2596            if (yych <= '\f') goto yy181;
2597            if (yych <= 0x1F) goto yy99;
2598            if (yych <= '&') goto yy181;
2599            goto yy191;
2600        }
2601    } else {
2602        if (yych <= '>') {
2603            if (yych != '/') goto yy181;
2604        } else {
2605            if (yych <= '?') goto yy196;
2606            if (yych == '\\') goto yy184;
2607            goto yy181;
2608        }
2609    }
2610yy198:
2611    ++YYCURSOR;
2612    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2613    yych = *YYCURSOR;
2614    if (yych <= '>') {
2615        if (yych <= 0x1F) {
2616            if (yych <= '\t') {
2617                if (yych <= 0x08) goto yy99;
2618                goto yy181;
2619            } else {
2620                if (yych <= '\n') goto yy99;
2621                if (yych <= '\f') goto yy181;
2622                goto yy99;
2623            }
2624        } else {
2625            if (yych <= '\'') {
2626                if (yych <= '&') goto yy181;
2627                goto yy202;
2628            } else {
2629                if (yych <= '/') goto yy181;
2630                if (yych <= '7') goto yy189;
2631                goto yy181;
2632            }
2633        }
2634    } else {
2635        if (yych <= '\\') {
2636            if (yych <= 'T') {
2637                if (yych <= '?') goto yy203;
2638                goto yy181;
2639            } else {
2640                if (yych <= 'U') goto yy201;
2641                if (yych <= '[') goto yy181;
2642                goto yy198;
2643            }
2644        } else {
2645            if (yych <= 'u') {
2646                if (yych <= 't') goto yy181;
2647            } else {
2648                if (yych == 'x') goto yy193;
2649                goto yy181;
2650            }
2651        }
2652    }
2653    ++YYCURSOR;
2654    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2655    yych = *YYCURSOR;
2656    if (yych <= '9') {
2657        if (yych <= '\f') {
2658            if (yych == '\t') goto yy181;
2659            if (yych <= '\n') goto yy99;
2660            goto yy181;
2661        } else {
2662            if (yych <= '&') {
2663                if (yych <= 0x1F) goto yy99;
2664                goto yy181;
2665            } else {
2666                if (yych <= '\'') goto yy191;
2667                if (yych <= '/') goto yy181;
2668                goto yy212;
2669            }
2670        }
2671    } else {
2672        if (yych <= 'F') {
2673            if (yych == '?') goto yy183;
2674            if (yych <= '@') goto yy181;
2675            goto yy212;
2676        } else {
2677            if (yych <= '\\') {
2678                if (yych <= '[') goto yy181;
2679                goto yy184;
2680            } else {
2681                if (yych <= '`') goto yy181;
2682                if (yych <= 'f') goto yy212;
2683                goto yy181;
2684            }
2685        }
2686    }
2687yy201:
2688    ++YYCURSOR;
2689    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2690    yych = *YYCURSOR;
2691    if (yych <= '9') {
2692        if (yych <= '\f') {
2693            if (yych == '\t') goto yy181;
2694            if (yych <= '\n') goto yy99;
2695            goto yy181;
2696        } else {
2697            if (yych <= '&') {
2698                if (yych <= 0x1F) goto yy99;
2699                goto yy181;
2700            } else {
2701                if (yych <= '\'') goto yy191;
2702                if (yych <= '/') goto yy181;
2703                goto yy205;
2704            }
2705        }
2706    } else {
2707        if (yych <= 'F') {
2708            if (yych == '?') goto yy183;
2709            if (yych <= '@') goto yy181;
2710            goto yy205;
2711        } else {
2712            if (yych <= '\\') {
2713                if (yych <= '[') goto yy181;
2714                goto yy184;
2715            } else {
2716                if (yych <= '`') goto yy181;
2717                if (yych <= 'f') goto yy205;
2718                goto yy181;
2719            }
2720        }
2721    }
2722yy202:
2723    yyaccept = 7;
2724    YYMARKER = ++YYCURSOR;
2725    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2726    yych = *YYCURSOR;
2727    if (yybm[0+yych] & 4) {
2728        goto yy181;
2729    }
2730    if (yych <= '&') goto yy192;
2731    if (yych <= '\'') goto yy191;
2732    if (yych <= '[') goto yy183;
2733    goto yy184;
2734yy203:
2735    ++YYCURSOR;
2736    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2737    yych = *YYCURSOR;
2738    if (yybm[0+yych] & 4) {
2739        goto yy181;
2740    }
2741    if (yych <= '&') goto yy99;
2742    if (yych <= '\'') goto yy191;
2743    if (yych >= '\\') goto yy184;
2744    ++YYCURSOR;
2745    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2746    yych = *YYCURSOR;
2747    if (yych <= '\'') {
2748        if (yych <= '\n') {
2749            if (yych == '\t') goto yy181;
2750            goto yy99;
2751        } else {
2752            if (yych <= '\f') goto yy181;
2753            if (yych <= 0x1F) goto yy99;
2754            if (yych <= '&') goto yy181;
2755            goto yy191;
2756        }
2757    } else {
2758        if (yych <= '>') {
2759            if (yych == '/') goto yy198;
2760            goto yy181;
2761        } else {
2762            if (yych <= '?') goto yy196;
2763            if (yych == '\\') goto yy184;
2764            goto yy181;
2765        }
2766    }
2767yy205:
2768    ++YYCURSOR;
2769    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2770    yych = *YYCURSOR;
2771    if (yych <= '9') {
2772        if (yych <= '\f') {
2773            if (yych == '\t') goto yy181;
2774            if (yych <= '\n') goto yy99;
2775            goto yy181;
2776        } else {
2777            if (yych <= '&') {
2778                if (yych <= 0x1F) goto yy99;
2779                goto yy181;
2780            } else {
2781                if (yych <= '\'') goto yy191;
2782                if (yych <= '/') goto yy181;
2783            }
2784        }
2785    } else {
2786        if (yych <= 'F') {
2787            if (yych == '?') goto yy183;
2788            if (yych <= '@') goto yy181;
2789        } else {
2790            if (yych <= '\\') {
2791                if (yych <= '[') goto yy181;
2792                goto yy184;
2793            } else {
2794                if (yych <= '`') goto yy181;
2795                if (yych >= 'g') goto yy181;
2796            }
2797        }
2798    }
2799    ++YYCURSOR;
2800    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2801    yych = *YYCURSOR;
2802    if (yych <= '9') {
2803        if (yych <= '\f') {
2804            if (yych == '\t') goto yy181;
2805            if (yych <= '\n') goto yy99;
2806            goto yy181;
2807        } else {
2808            if (yych <= '&') {
2809                if (yych <= 0x1F) goto yy99;
2810                goto yy181;
2811            } else {
2812                if (yych <= '\'') goto yy191;
2813                if (yych <= '/') goto yy181;
2814            }
2815        }
2816    } else {
2817        if (yych <= 'F') {
2818            if (yych == '?') goto yy183;
2819            if (yych <= '@') goto yy181;
2820        } else {
2821            if (yych <= '\\') {
2822                if (yych <= '[') goto yy181;
2823                goto yy184;
2824            } else {
2825                if (yych <= '`') goto yy181;
2826                if (yych >= 'g') goto yy181;
2827            }
2828        }
2829    }
2830    ++YYCURSOR;
2831    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2832    yych = *YYCURSOR;
2833    if (yych <= '9') {
2834        if (yych <= '\f') {
2835            if (yych == '\t') goto yy181;
2836            if (yych <= '\n') goto yy99;
2837            goto yy181;
2838        } else {
2839            if (yych <= '&') {
2840                if (yych <= 0x1F) goto yy99;
2841                goto yy181;
2842            } else {
2843                if (yych <= '\'') goto yy191;
2844                if (yych <= '/') goto yy181;
2845            }
2846        }
2847    } else {
2848        if (yych <= 'F') {
2849            if (yych == '?') goto yy183;
2850            if (yych <= '@') goto yy181;
2851        } else {
2852            if (yych <= '\\') {
2853                if (yych <= '[') goto yy181;
2854                goto yy184;
2855            } else {
2856                if (yych <= '`') goto yy181;
2857                if (yych >= 'g') goto yy181;
2858            }
2859        }
2860    }
2861    ++YYCURSOR;
2862    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2863    yych = *YYCURSOR;
2864    if (yych <= '9') {
2865        if (yych <= '\f') {
2866            if (yych == '\t') goto yy181;
2867            if (yych <= '\n') goto yy99;
2868            goto yy181;
2869        } else {
2870            if (yych <= '&') {
2871                if (yych <= 0x1F) goto yy99;
2872                goto yy181;
2873            } else {
2874                if (yych <= '\'') goto yy191;
2875                if (yych <= '/') goto yy181;
2876            }
2877        }
2878    } else {
2879        if (yych <= 'F') {
2880            if (yych == '?') goto yy183;
2881            if (yych <= '@') goto yy181;
2882        } else {
2883            if (yych <= '\\') {
2884                if (yych <= '[') goto yy181;
2885                goto yy184;
2886            } else {
2887                if (yych <= '`') goto yy181;
2888                if (yych >= 'g') goto yy181;
2889            }
2890        }
2891    }
2892    ++YYCURSOR;
2893    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2894    yych = *YYCURSOR;
2895    if (yych <= '9') {
2896        if (yych <= '\f') {
2897            if (yych == '\t') goto yy181;
2898            if (yych <= '\n') goto yy99;
2899            goto yy181;
2900        } else {
2901            if (yych <= '&') {
2902                if (yych <= 0x1F) goto yy99;
2903                goto yy181;
2904            } else {
2905                if (yych <= '\'') goto yy191;
2906                if (yych <= '/') goto yy181;
2907            }
2908        }
2909    } else {
2910        if (yych <= 'F') {
2911            if (yych == '?') goto yy183;
2912            if (yych <= '@') goto yy181;
2913        } else {
2914            if (yych <= '\\') {
2915                if (yych <= '[') goto yy181;
2916                goto yy184;
2917            } else {
2918                if (yych <= '`') goto yy181;
2919                if (yych >= 'g') goto yy181;
2920            }
2921        }
2922    }
2923    ++YYCURSOR;
2924    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2925    yych = *YYCURSOR;
2926    if (yych <= '9') {
2927        if (yych <= '\f') {
2928            if (yych == '\t') goto yy181;
2929            if (yych <= '\n') goto yy99;
2930            goto yy181;
2931        } else {
2932            if (yych <= '&') {
2933                if (yych <= 0x1F) goto yy99;
2934                goto yy181;
2935            } else {
2936                if (yych <= '\'') goto yy191;
2937                if (yych <= '/') goto yy181;
2938            }
2939        }
2940    } else {
2941        if (yych <= 'F') {
2942            if (yych == '?') goto yy183;
2943            if (yych <= '@') goto yy181;
2944        } else {
2945            if (yych <= '\\') {
2946                if (yych <= '[') goto yy181;
2947                goto yy184;
2948            } else {
2949                if (yych <= '`') goto yy181;
2950                if (yych >= 'g') goto yy181;
2951            }
2952        }
2953    }
2954    ++YYCURSOR;
2955    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2956    yych = *YYCURSOR;
2957    if (yybm[0+yych] & 4) {
2958        goto yy181;
2959    }
2960    if (yych <= '&') goto yy99;
2961    if (yych <= '\'') goto yy191;
2962    if (yych <= '[') goto yy183;
2963    goto yy184;
2964yy212:
2965    ++YYCURSOR;
2966    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2967    yych = *YYCURSOR;
2968    if (yych <= '9') {
2969        if (yych <= '\f') {
2970            if (yych == '\t') goto yy181;
2971            if (yych <= '\n') goto yy99;
2972            goto yy181;
2973        } else {
2974            if (yych <= '&') {
2975                if (yych <= 0x1F) goto yy99;
2976                goto yy181;
2977            } else {
2978                if (yych <= '\'') goto yy191;
2979                if (yych <= '/') goto yy181;
2980            }
2981        }
2982    } else {
2983        if (yych <= 'F') {
2984            if (yych == '?') goto yy183;
2985            if (yych <= '@') goto yy181;
2986        } else {
2987            if (yych <= '\\') {
2988                if (yych <= '[') goto yy181;
2989                goto yy184;
2990            } else {
2991                if (yych <= '`') goto yy181;
2992                if (yych >= 'g') goto yy181;
2993            }
2994        }
2995    }
2996    ++YYCURSOR;
2997    if (YYLIMIT <= YYCURSOR) YYFILL(1);
2998    yych = *YYCURSOR;
2999    if (yych <= '9') {
3000        if (yych <= '\f') {
3001            if (yych == '\t') goto yy181;
3002            if (yych <= '\n') goto yy99;
3003            goto yy181;
3004        } else {
3005            if (yych <= '&') {
3006                if (yych <= 0x1F) goto yy99;
3007                goto yy181;
3008            } else {
3009                if (yych <= '\'') goto yy191;
3010                if (yych <= '/') goto yy181;
3011            }
3012        }
3013    } else {
3014        if (yych <= 'F') {
3015            if (yych == '?') goto yy183;
3016            if (yych <= '@') goto yy181;
3017        } else {
3018            if (yych <= '\\') {
3019                if (yych <= '[') goto yy181;
3020                goto yy184;
3021            } else {
3022                if (yych <= '`') goto yy181;
3023                if (yych >= 'g') goto yy181;
3024            }
3025        }
3026    }
3027    ++YYCURSOR;
3028    if (YYLIMIT <= YYCURSOR) YYFILL(1);
3029    yych = *YYCURSOR;
3030    if (yybm[0+yych] & 4) {
3031        goto yy181;
3032    }
3033    if (yych <= '&') goto yy99;
3034    if (yych <= '\'') goto yy191;
3035    if (yych <= '[') goto yy183;
3036    goto yy184;
3037yy215:
3038    ++YYCURSOR;
3039    if (YYLIMIT <= YYCURSOR) YYFILL(1);
3040    yych = *YYCURSOR;
3041    if (yych <= '@') {
3042        if (yych <= '/') goto yy99;
3043        if (yych >= ':') goto yy99;
3044    } else {
3045        if (yych <= 'F') goto yy216;
3046        if (yych <= '`') goto yy99;
3047        if (yych >= 'g') goto yy99;
3048    }
3049yy216:
3050    ++YYCURSOR;
3051    if (YYLIMIT <= YYCURSOR) YYFILL(1);
3052    yych = *YYCURSOR;
3053    if (yych <= '@') {
3054        if (yych <= '/') goto yy99;
3055        if (yych >= ':') goto yy99;
3056    } else {
3057        if (yych <= 'F') goto yy217;
3058        if (yych <= '`') goto yy99;
3059        if (yych >= 'g') goto yy99;
3060    }
3061yy217:
3062    ++YYCURSOR;
3063    if (YYLIMIT <= YYCURSOR) YYFILL(1);
3064    yych = *YYCURSOR;
3065    if (yych <= '@') {
3066        if (yych <= '/') goto yy99;
3067        if (yych >= ':') goto yy99;
3068    } else {
3069        if (yych <= 'F') goto yy218;
3070        if (yych <= '`') goto yy99;
3071        if (yych >= 'g') goto yy99;
3072    }
3073yy218:
3074    ++YYCURSOR;
3075    if (YYLIMIT <= YYCURSOR) YYFILL(1);
3076    yych = *YYCURSOR;
3077    if (yych <= '@') {
3078        if (yych <= '/') goto yy99;
3079        if (yych >= ':') goto yy99;
3080    } else {
3081        if (yych <= 'F') goto yy219;
3082        if (yych <= '`') goto yy99;
3083        if (yych >= 'g') goto yy99;
3084    }
3085yy219:
3086    ++YYCURSOR;
3087    if (YYLIMIT <= YYCURSOR) YYFILL(1);
3088    yych = *YYCURSOR;
3089    if (yych <= '@') {
3090        if (yych <= '/') goto yy99;
3091        if (yych >= ':') goto yy99;
3092    } else {
3093        if (yych <= 'F') goto yy220;
3094        if (yych <= '`') goto yy99;
3095        if (yych >= 'g') goto yy99;
3096    }
3097yy220:
3098    ++YYCURSOR;
3099    if (YYLIMIT <= YYCURSOR) YYFILL(1);
3100    yych = *YYCURSOR;
3101    if (yych <= '@') {
3102        if (yych <= '/') goto yy99;
3103        if (yych >= ':') goto yy99;
3104    } else {
3105        if (yych <= 'F') goto yy221;
3106        if (yych <= '`') goto yy99;
3107        if (yych >= 'g') goto yy99;
3108    }
3109yy221:
3110    ++YYCURSOR;
3111    if (YYLIMIT <= YYCURSOR) YYFILL(1);
3112    yych = *YYCURSOR;
3113    if (yych <= '@') {
3114        if (yych <= '/') goto yy99;
3115        if (yych <= '9') goto yy181;
3116        goto yy99;
3117    } else {
3118        if (yych <= 'F') goto yy181;
3119        if (yych <= '`') goto yy99;
3120        if (yych <= 'f') goto yy181;
3121        goto yy99;
3122    }
3123yy222:
3124    ++YYCURSOR;
3125    if (YYLIMIT <= YYCURSOR) YYFILL(1);
3126    yych = *YYCURSOR;
3127    if (yych <= '@') {
3128        if (yych <= '/') goto yy99;
3129        if (yych >= ':') goto yy99;
3130    } else {
3131        if (yych <= 'F') goto yy223;
3132        if (yych <= '`') goto yy99;
3133        if (yych >= 'g') goto yy99;
3134    }
3135yy223:
3136    ++YYCURSOR;
3137    if (YYLIMIT <= YYCURSOR) YYFILL(1);
3138    yych = *YYCURSOR;
3139    if (yych <= '@') {
3140        if (yych <= '/') goto yy99;
3141        if (yych >= ':') goto yy99;
3142    } else {
3143        if (yych <= 'F') goto yy224;
3144        if (yych <= '`') goto yy99;
3145        if (yych >= 'g') goto yy99;
3146    }
3147yy224:
3148    ++YYCURSOR;
3149    if (YYLIMIT <= YYCURSOR) YYFILL(1);
3150    yych = *YYCURSOR;
3151    if (yych <= '@') {
3152        if (yych <= '/') goto yy99;
3153        if (yych <= '9') goto yy181;
3154        goto yy99;
3155    } else {
3156        if (yych <= 'F') goto yy181;
3157        if (yych <= '`') goto yy99;
3158        if (yych <= 'f') goto yy181;
3159        goto yy99;
3160    }
3161yy225:
3162    yyaccept = 1;
3163    yych = *(YYMARKER = ++YYCURSOR);
3164    if (yych == '"') goto yy135;
3165    goto yy109;
3166yy226:
3167    yych = *++YYCURSOR;
3168    if (yych == '\'') goto yy99;
3169    goto yy182;
3170yy227:
3171    ++YYCURSOR;
3172#line 228 "cpp.re"
3173    { BOOST_WAVE_RET(T_GREATEREQUAL); }
3174#line 3175 "cpp_re.inc"
3175yy229:
3176    ++YYCURSOR;
3177    if ((yych = *YYCURSOR) == '=') goto yy231;
3178#line 221 "cpp.re"
3179    { BOOST_WAVE_RET(T_SHIFTRIGHT); }
3180#line 3181 "cpp_re.inc"
3181yy231:
3182    ++YYCURSOR;
3183#line 222 "cpp.re"
3184    { BOOST_WAVE_RET(T_SHIFTRIGHTASSIGN); }
3185#line 3186 "cpp_re.inc"
3186yy233:
3187    ++YYCURSOR;
3188#line 224 "cpp.re"
3189    { BOOST_WAVE_RET(T_EQUAL); }
3190#line 3191 "cpp_re.inc"
3191yy235:
3192    ++YYCURSOR;
3193#line 225 "cpp.re"
3194    { BOOST_WAVE_RET(T_NOTEQUAL); }
3195#line 3196 "cpp_re.inc"
3196yy237:
3197    yych = *++YYCURSOR;
3198    if (yych == '?') goto yy242;
3199    goto yy99;
3200yy238:
3201    ++YYCURSOR;
3202#line 231 "cpp.re"
3203    { BOOST_WAVE_RET(T_OROR); }
3204#line 3205 "cpp_re.inc"
3205yy240:
3206    ++YYCURSOR;
3207#line 217 "cpp.re"
3208    { BOOST_WAVE_RET(T_ORASSIGN); }
3209#line 3210 "cpp_re.inc"
3210yy242:
3211    yych = *++YYCURSOR;
3212    if (yych != '!') goto yy99;
3213    ++YYCURSOR;
3214#line 233 "cpp.re"
3215    { BOOST_WAVE_RET(T_OROR_TRIGRAPH); }
3216#line 3217 "cpp_re.inc"
3217yy245:
3218    ++YYCURSOR;
3219#line 229 "cpp.re"
3220    { BOOST_WAVE_RET(T_ANDAND); }
3221#line 3222 "cpp_re.inc"
3222yy247:
3223    ++YYCURSOR;
3224#line 215 "cpp.re"
3225    { BOOST_WAVE_RET(T_ANDASSIGN); }
3226#line 3227 "cpp_re.inc"
3227yy249:
3228    yyaccept = 1;
3229    yych = *(YYMARKER = ++YYCURSOR);
3230    if (yych != 'r') goto yy109;
3231    yyaccept = 8;
3232    yych = *(YYMARKER = ++YYCURSOR);
3233    if (yych <= '@') {
3234        if (yych <= '/') {
3235            if (yych == '$') goto yy108;
3236        } else {
3237            if (yych <= '9') goto yy108;
3238            if (yych == '?') goto yy111;
3239        }
3240    } else {
3241        if (yych <= '^') {
3242            if (yych <= 'Z') goto yy108;
3243            if (yych == '\\') goto yy110;
3244        } else {
3245            if (yych <= '_') goto yy252;
3246            if (yych <= '`') goto yy251;
3247            if (yych <= 'z') goto yy108;
3248        }
3249    }
3250yy251:
3251#line 193 "cpp.re"
3252    { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_XOR_ALT); }
3253#line 3254 "cpp_re.inc"
3254yy252:
3255    yyaccept = 1;
3256    yych = *(YYMARKER = ++YYCURSOR);
3257    if (yych != 'e') goto yy109;
3258    yyaccept = 1;
3259    yych = *(YYMARKER = ++YYCURSOR);
3260    if (yych != 'q') goto yy109;
3261    yyaccept = 9;
3262    yych = *(YYMARKER = ++YYCURSOR);
3263    if (yybm[256+yych] & 32) {
3264        goto yy108;
3265    }
3266    if (yych == '?') goto yy111;
3267    if (yych == '\\') goto yy110;
3268yy255:
3269#line 213 "cpp.re"
3270    { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_XORASSIGN_ALT); }
3271#line 3272 "cpp_re.inc"
3272yy256:
3273    ++YYCURSOR;
3274#line 212 "cpp.re"
3275    { BOOST_WAVE_RET(T_XORASSIGN); }
3276#line 3277 "cpp_re.inc"
3277yy258:
3278    ++YYCURSOR;
3279#line 209 "cpp.re"
3280    { BOOST_WAVE_RET(T_STARASSIGN); }
3281#line 3282 "cpp_re.inc"
3282yy260:
3283    ++YYCURSOR;
3284    if ((yych = *YYCURSOR) == '*') goto yy266;
3285#line 249 "cpp.re"
3286    { BOOST_WAVE_RET(T_ARROW); }
3287#line 3288 "cpp_re.inc"
3288yy262:
3289    ++YYCURSOR;
3290#line 237 "cpp.re"
3291    { BOOST_WAVE_RET(T_MINUSMINUS); }
3292#line 3293 "cpp_re.inc"
3293yy264:
3294    ++YYCURSOR;
3295#line 208 "cpp.re"
3296    { BOOST_WAVE_RET(T_MINUSASSIGN); }
3297#line 3298 "cpp_re.inc"
3298yy266:
3299    ++YYCURSOR;
3300#line 240 "cpp.re"
3301    {
3302            if (s->act_in_c99_mode) {
3303                --YYCURSOR;
3304                BOOST_WAVE_RET(T_ARROW);
3305            }
3306            else {
3307                BOOST_WAVE_RET(T_ARROWSTAR);
3308            }
3309        }
3310#line 3311 "cpp_re.inc"
3311yy268:
3312    ++YYCURSOR;
3313#line 236 "cpp.re"
3314    { BOOST_WAVE_RET(T_PLUSPLUS); }
3315#line 3316 "cpp_re.inc"
3316yy270:
3317    ++YYCURSOR;
3318#line 207 "cpp.re"
3319    { BOOST_WAVE_RET(T_PLUSASSIGN); }
3320#line 3321 "cpp_re.inc"
3321yy272:
3322    ++YYCURSOR;
3323    if ((YYLIMIT - YYCURSOR) < 12) YYFILL(12);
3324    yych = *YYCURSOR;
3325yy273:
3326    if (yych <= 'h') {
3327        if (yych <= ' ') {
3328            if (yych <= '\n') {
3329                if (yych == '\t') goto yy272;
3330                goto yy99;
3331            } else {
3332                if (yych <= '\f') goto yy272;
3333                if (yych <= 0x1F) goto yy99;
3334                goto yy272;
3335            }
3336        } else {
3337            if (yych <= 'c') {
3338                if (yych != '/') goto yy99;
3339            } else {
3340                if (yych <= 'd') goto yy281;
3341                if (yych <= 'e') goto yy275;
3342                goto yy99;
3343            }
3344        }
3345    } else {
3346        if (yych <= 'q') {
3347            if (yych <= 'l') {
3348                if (yych <= 'i') goto yy282;
3349                if (yych <= 'k') goto yy99;
3350                goto yy279;
3351            } else {
3352                if (yych == 'p') goto yy278;
3353                goto yy99;
3354            }
3355        } else {
3356            if (yych <= 'u') {
3357                if (yych <= 'r') goto yy276;
3358                if (yych <= 't') goto yy99;
3359                goto yy280;
3360            } else {
3361                if (yych == 'w') goto yy277;
3362                goto yy99;
3363            }
3364        }
3365    }
3366    ++YYCURSOR;
3367    if (YYLIMIT <= YYCURSOR) YYFILL(1);
3368    yych = *YYCURSOR;
3369    if (yych == '*') goto yy389;
3370    goto yy99;
3371yy275:
3372    yych = *++YYCURSOR;
3373    if (yych <= 'm') {
3374        if (yych == 'l') goto yy365;
3375        goto yy99;
3376    } else {
3377        if (yych <= 'n') goto yy366;
3378        if (yych == 'r') goto yy367;
3379        goto yy99;
3380    }
3381yy276:
3382    yych = *++YYCURSOR;
3383    if (yych == 'e') goto yy359;
3384    goto yy99;
3385yy277:
3386    yych = *++YYCURSOR;
3387    if (yych == 'a') goto yy352;
3388    goto yy99;
3389yy278:
3390    yych = *++YYCURSOR;
3391    if (yych == 'r') goto yy346;
3392    goto yy99;
3393yy279:
3394    yych = *++YYCURSOR;
3395    if (yych == 'i') goto yy342;
3396    goto yy99;
3397yy280:
3398    yych = *++YYCURSOR;
3399    if (yych == 'n') goto yy337;
3400    goto yy99;
3401yy281:
3402    yych = *++YYCURSOR;
3403    if (yych == 'e') goto yy331;
3404    goto yy99;
3405yy282:
3406    yych = *++YYCURSOR;
3407    if (yych == 'f') goto yy290;
3408    if (yych == 'n') goto yy289;
3409    goto yy99;
3410yy283:
3411    yych = *++YYCURSOR;
3412    if (yych == '?') goto yy286;
3413    goto yy99;
3414yy284:
3415    ++YYCURSOR;
3416#line 154 "cpp.re"
3417    { BOOST_WAVE_RET(T_POUND_POUND); }
3418#line 3419 "cpp_re.inc"
3419yy286:
3420    yych = *++YYCURSOR;
3421    if (yych != '=') goto yy99;
3422    ++YYCURSOR;
3423#line 155 "cpp.re"
3424    { BOOST_WAVE_RET(T_POUND_POUND_TRIGRAPH); }
3425#line 3426 "cpp_re.inc"
3426yy289:
3427    yych = *++YYCURSOR;
3428    if (yych == 'c') goto yy301;
3429    goto yy99;
3430yy290:
3431    yyaccept = 10;
3432    yych = *(YYMARKER = ++YYCURSOR);
3433    if (yych == 'd') goto yy293;
3434    if (yych == 'n') goto yy292;
3435yy291:
3436#line 302 "cpp.re"
3437    { BOOST_WAVE_RET(T_PP_IF); }
3438#line 3439 "cpp_re.inc"
3439yy292:
3440    yych = *++YYCURSOR;
3441    if (yych == 'd') goto yy297;
3442    goto yy99;
3443yy293:
3444    yych = *++YYCURSOR;
3445    if (yych != 'e') goto yy99;
3446    yych = *++YYCURSOR;
3447    if (yych != 'f') goto yy99;
3448    ++YYCURSOR;
3449#line 303 "cpp.re"
3450    { BOOST_WAVE_RET(T_PP_IFDEF); }
3451#line 3452 "cpp_re.inc"
3452yy297:
3453    yych = *++YYCURSOR;
3454    if (yych != 'e') goto yy99;
3455    yych = *++YYCURSOR;
3456    if (yych != 'f') goto yy99;
3457    ++YYCURSOR;
3458#line 304 "cpp.re"
3459    { BOOST_WAVE_RET(T_PP_IFNDEF); }
3460#line 3461 "cpp_re.inc"
3461yy301:
3462    yych = *++YYCURSOR;
3463    if (yych != 'l') goto yy99;
3464    yych = *++YYCURSOR;
3465    if (yych != 'u') goto yy99;
3466    yych = *++YYCURSOR;
3467    if (yych != 'd') goto yy99;
3468    yych = *++YYCURSOR;
3469    if (yych != 'e') goto yy99;
3470    yyaccept = 11;
3471    yych = *(YYMARKER = ++YYCURSOR);
3472    if (yych == '_') goto yy307;
3473    goto yy309;
3474yy306:
3475#line 300 "cpp.re"
3476    { BOOST_WAVE_RET(T_PP_INCLUDE); }
3477#line 3478 "cpp_re.inc"
3478yy307:
3479    yych = *++YYCURSOR;
3480    if (yych == 'n') goto yy328;
3481    goto yy99;
3482yy308:
3483    yyaccept = 11;
3484    YYMARKER = ++YYCURSOR;
3485    if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
3486    yych = *YYCURSOR;
3487yy309:
3488    if (yych <= ' ') {
3489        if (yych <= '\n') {
3490            if (yych == '\t') goto yy308;
3491            goto yy306;
3492        } else {
3493            if (yych <= '\f') goto yy308;
3494            if (yych <= 0x1F) goto yy306;
3495            goto yy308;
3496        }
3497    } else {
3498        if (yych <= '.') {
3499            if (yych == '"') goto yy312;
3500            goto yy306;
3501        } else {
3502            if (yych <= '/') goto yy310;
3503            if (yych == '<') goto yy311;
3504            goto yy306;
3505        }
3506    }
3507yy310:
3508    ++YYCURSOR;
3509    if (YYLIMIT <= YYCURSOR) YYFILL(1);
3510    yych = *YYCURSOR;
3511    if (yych == '*') goto yy321;
3512    goto yy99;
3513yy311:
3514    yych = *++YYCURSOR;
3515    if (yych == '>') goto yy99;
3516    goto yy318;
3517yy312:
3518    yych = *++YYCURSOR;
3519    if (yych == '"') goto yy99;
3520    goto yy314;
3521yy313:
3522    ++YYCURSOR;
3523    if (YYLIMIT <= YYCURSOR) YYFILL(1);
3524    yych = *YYCURSOR;
3525yy314:
3526    if (yybm[0+yych] & 8) {
3527        goto yy313;
3528    }
3529    if (yych <= '!') goto yy99;
3530    ++YYCURSOR;
3531#line 297 "cpp.re"
3532    { BOOST_WAVE_RET(T_PP_QHEADER); }
3533#line 3534 "cpp_re.inc"
3534yy317:
3535    ++YYCURSOR;
3536    if (YYLIMIT <= YYCURSOR) YYFILL(1);
3537    yych = *YYCURSOR;
3538yy318:
3539    if (yybm[0+yych] & 16) {
3540        goto yy317;
3541    }
3542    if (yych <= '=') goto yy99;
3543    ++YYCURSOR;
3544#line 294 "cpp.re"
3545    { BOOST_WAVE_RET(T_PP_HHEADER); }
3546#line 3547 "cpp_re.inc"
3547yy321:
3548    ++YYCURSOR;
3549    if (YYLIMIT <= YYCURSOR) YYFILL(1);
3550    yych = *YYCURSOR;
3551    if (yybm[0+yych] & 32) {
3552        goto yy321;
3553    }
3554    if (yych == '\r') goto yy323;
3555    if (yych <= ')') goto yy99;
3556    goto yy325;
3557yy323:
3558    ++YYCURSOR;
3559    if (YYLIMIT <= YYCURSOR) YYFILL(1);
3560    yych = *YYCURSOR;
3561    if (yybm[0+yych] & 32) {
3562        goto yy321;
3563    }
3564    if (yych == '\r') goto yy323;
3565    if (yych <= ')') goto yy99;
3566yy325:
3567    ++YYCURSOR;
3568    if (YYLIMIT <= YYCURSOR) YYFILL(1);
3569    yych = *YYCURSOR;
3570    if (yybm[0+yych] & 128) {
3571        goto yy325;
3572    }
3573    if (yych <= '\r') {
3574        if (yych <= 0x08) goto yy99;
3575        if (yych <= '\f') goto yy321;
3576    } else {
3577        if (yych <= 0x1F) goto yy99;
3578        if (yych == '/') goto yy308;
3579        goto yy321;
3580    }
3581    ++YYCURSOR;
3582    if (YYLIMIT <= YYCURSOR) YYFILL(1);
3583    yych = *YYCURSOR;
3584    if (yybm[0+yych] & 32) {
3585        goto yy321;
3586    }
3587    if (yych == '\r') goto yy323;
3588    if (yych <= ')') goto yy99;
3589    goto yy325;
3590yy328:
3591    yych = *++YYCURSOR;
3592    if (yych != 'e') goto yy99;
3593    yych = *++YYCURSOR;
3594    if (yych != 'x') goto yy99;
3595    yych = *++YYCURSOR;
3596    if (yych == 't') goto yy308;
3597    goto yy99;
3598yy331:
3599    yych = *++YYCURSOR;
3600    if (yych != 'f') goto yy99;
3601    yych = *++YYCURSOR;
3602    if (yych != 'i') goto yy99;
3603    yych = *++YYCURSOR;
3604    if (yych != 'n') goto yy99;
3605    yych = *++YYCURSOR;
3606    if (yych != 'e') goto yy99;
3607    ++YYCURSOR;
3608#line 308 "cpp.re"
3609    { BOOST_WAVE_RET(T_PP_DEFINE); }
3610#line 3611 "cpp_re.inc"
3611yy337:
3612    yych = *++YYCURSOR;
3613    if (yych != 'd') goto yy99;
3614    yych = *++YYCURSOR;
3615    if (yych != 'e') goto yy99;
3616    yych = *++YYCURSOR;
3617    if (yych != 'f') goto yy99;
3618    ++YYCURSOR;
3619#line 309 "cpp.re"
3620    { BOOST_WAVE_RET(T_PP_UNDEF); }
3621#line 3622 "cpp_re.inc"
3622yy342:
3623    yych = *++YYCURSOR;
3624    if (yych != 'n') goto yy99;
3625    yych = *++YYCURSOR;
3626    if (yych != 'e') goto yy99;
3627    ++YYCURSOR;
3628#line 310 "cpp.re"
3629    { BOOST_WAVE_RET(T_PP_LINE); }
3630#line 3631 "cpp_re.inc"
3631yy346:
3632    yych = *++YYCURSOR;
3633    if (yych != 'a') goto yy99;
3634    yych = *++YYCURSOR;
3635    if (yych != 'g') goto yy99;
3636    yych = *++YYCURSOR;
3637    if (yych != 'm') goto yy99;
3638    yych = *++YYCURSOR;
3639    if (yych != 'a') goto yy99;
3640    ++YYCURSOR;
3641#line 312 "cpp.re"
3642    { BOOST_WAVE_RET(T_PP_PRAGMA); }
3643#line 3644 "cpp_re.inc"
3644yy352:
3645    yych = *++YYCURSOR;
3646    if (yych != 'r') goto yy99;
3647    yych = *++YYCURSOR;
3648    if (yych != 'n') goto yy99;
3649    yych = *++YYCURSOR;
3650    if (yych != 'i') goto yy99;
3651    yych = *++YYCURSOR;
3652    if (yych != 'n') goto yy99;
3653    yych = *++YYCURSOR;
3654    if (yych != 'g') goto yy99;
3655    ++YYCURSOR;
3656#line 314 "cpp.re"
3657    { BOOST_WAVE_RET(T_PP_WARNING); }
3658#line 3659 "cpp_re.inc"
3659yy359:
3660    yych = *++YYCURSOR;
3661    if (yych != 'g') goto yy99;
3662    yych = *++YYCURSOR;
3663    if (yych != 'i') goto yy99;
3664    yych = *++YYCURSOR;
3665    if (yych != 'o') goto yy99;
3666    yych = *++YYCURSOR;
3667    if (yych != 'n') goto yy99;
3668    ++YYCURSOR;
3669#line 316 "cpp.re"
3670    { BOOST_WAVE_RET(T_MSEXT_PP_REGION); }
3671#line 3672 "cpp_re.inc"
3672yy365:
3673    yych = *++YYCURSOR;
3674    if (yych == 'i') goto yy383;
3675    if (yych == 's') goto yy384;
3676    goto yy99;
3677yy366:
3678    yych = *++YYCURSOR;
3679    if (yych == 'd') goto yy372;
3680    goto yy99;
3681yy367:
3682    yych = *++YYCURSOR;
3683    if (yych != 'r') goto yy99;
3684    yych = *++YYCURSOR;
3685    if (yych != 'o') goto yy99;
3686    yych = *++YYCURSOR;
3687    if (yych != 'r') goto yy99;
3688    ++YYCURSOR;
3689#line 311 "cpp.re"
3690    { BOOST_WAVE_RET(T_PP_ERROR); }
3691#line 3692 "cpp_re.inc"
3692yy372:
3693    yych = *++YYCURSOR;
3694    if (yych == 'i') goto yy373;
3695    if (yych == 'r') goto yy374;
3696    goto yy99;
3697yy373:
3698    yych = *++YYCURSOR;
3699    if (yych == 'f') goto yy381;
3700    goto yy99;
3701yy374:
3702    yych = *++YYCURSOR;
3703    if (yych != 'e') goto yy99;
3704    yych = *++YYCURSOR;
3705    if (yych != 'g') goto yy99;
3706    yych = *++YYCURSOR;
3707    if (yych != 'i') goto yy99;
3708    yych = *++YYCURSOR;
3709    if (yych != 'o') goto yy99;
3710    yych = *++YYCURSOR;
3711    if (yych != 'n') goto yy99;
3712    ++YYCURSOR;
3713#line 317 "cpp.re"
3714    { BOOST_WAVE_RET(T_MSEXT_PP_ENDREGION); }
3715#line 3716 "cpp_re.inc"
3716yy381:
3717    ++YYCURSOR;
3718#line 307 "cpp.re"
3719    { BOOST_WAVE_RET(T_PP_ENDIF); }
3720#line 3721 "cpp_re.inc"
3721yy383:
3722    yych = *++YYCURSOR;
3723    if (yych == 'f') goto yy387;
3724    goto yy99;
3725yy384:
3726    yych = *++YYCURSOR;
3727    if (yych != 'e') goto yy99;
3728    ++YYCURSOR;
3729#line 305 "cpp.re"
3730    { BOOST_WAVE_RET(T_PP_ELSE); }
3731#line 3732 "cpp_re.inc"
3732yy387:
3733    ++YYCURSOR;
3734#line 306 "cpp.re"
3735    { BOOST_WAVE_RET(T_PP_ELIF); }
3736#line 3737 "cpp_re.inc"
3737yy389:
3738    ++YYCURSOR;
3739    if (YYLIMIT <= YYCURSOR) YYFILL(1);
3740    yych = *YYCURSOR;
3741    if (yych <= '\r') {
3742        if (yych <= 0x08) goto yy99;
3743        if (yych <= '\f') goto yy389;
3744    } else {
3745        if (yych <= 0x1F) goto yy99;
3746        if (yych == '*') goto yy393;
3747        goto yy389;
3748    }
3749yy391:
3750    ++YYCURSOR;
3751    if (YYLIMIT <= YYCURSOR) YYFILL(1);
3752    yych = *YYCURSOR;
3753    if (yych <= '\r') {
3754        if (yych <= 0x08) goto yy99;
3755        if (yych <= '\f') goto yy389;
3756        goto yy391;
3757    } else {
3758        if (yych <= 0x1F) goto yy99;
3759        if (yych != '*') goto yy389;
3760    }
3761yy393:
3762    ++YYCURSOR;
3763    if (YYLIMIT <= YYCURSOR) YYFILL(1);
3764    yych = *YYCURSOR;
3765    if (yych <= 0x1F) {
3766        if (yych <= 0x08) goto yy99;
3767        if (yych <= '\f') goto yy389;
3768        if (yych >= 0x0E) goto yy99;
3769    } else {
3770        if (yych <= '*') {
3771            if (yych <= ')') goto yy389;
3772            goto yy393;
3773        } else {
3774            if (yych == '/') goto yy272;
3775            goto yy389;
3776        }
3777    }
3778    ++YYCURSOR;
3779    if (YYLIMIT <= YYCURSOR) YYFILL(1);
3780    yych = *YYCURSOR;
3781    if (yych <= '\r') {
3782        if (yych <= 0x08) goto yy99;
3783        if (yych <= '\f') goto yy389;
3784        goto yy391;
3785    } else {
3786        if (yych <= 0x1F) goto yy99;
3787        if (yych == '*') goto yy393;
3788        goto yy389;
3789    }
3790yy396:
3791    ++YYCURSOR;
3792#line 166 "cpp.re"
3793    {
3794            if (s->act_in_c99_mode) {
3795                --YYCURSOR;
3796                BOOST_WAVE_RET(T_COLON);
3797            }
3798            else {
3799                BOOST_WAVE_RET(T_COLON_COLON);
3800            }
3801        }
3802#line 3803 "cpp_re.inc"
3803yy398:
3804    ++YYCURSOR;
3805#line 150 "cpp.re"
3806    { BOOST_WAVE_RET(T_RIGHTBRACKET_ALT); }
3807#line 3808 "cpp_re.inc"
3808yy400:
3809    yyaccept = 12;
3810    yych = *(YYMARKER = ++YYCURSOR);
3811    if (yych <= 'e') {
3812        if (yych <= ' ') {
3813            if (yych <= '\n') {
3814                if (yych == '\t') goto yy273;
3815            } else {
3816                if (yych <= '\f') goto yy273;
3817                if (yych >= ' ') goto yy273;
3818            }
3819        } else {
3820            if (yych <= '.') {
3821                if (yych == '%') goto yy406;
3822            } else {
3823                if (yych <= '/') goto yy273;
3824                if (yych >= 'd') goto yy273;
3825            }
3826        }
3827    } else {
3828        if (yych <= 'p') {
3829            if (yych <= 'k') {
3830                if (yych == 'i') goto yy273;
3831            } else {
3832                if (yych <= 'l') goto yy273;
3833                if (yych >= 'p') goto yy273;
3834            }
3835        } else {
3836            if (yych <= 't') {
3837                if (yych == 'r') goto yy273;
3838            } else {
3839                if (yych == 'v') goto yy401;
3840                if (yych <= 'w') goto yy273;
3841            }
3842        }
3843    }
3844yy401:
3845#line 152 "cpp.re"
3846    { BOOST_WAVE_RET(T_POUND_ALT); }
3847#line 3848 "cpp_re.inc"
3848yy402:
3849    ++YYCURSOR;
3850#line 211 "cpp.re"
3851    { BOOST_WAVE_RET(T_PERCENTASSIGN); }
3852#line 3853 "cpp_re.inc"
3853yy404:
3854    ++YYCURSOR;
3855#line 144 "cpp.re"
3856    { BOOST_WAVE_RET(T_RIGHTBRACE_ALT); }
3857#line 3858 "cpp_re.inc"
3858yy406:
3859    yych = *++YYCURSOR;
3860    if (yych != ':') goto yy99;
3861    ++YYCURSOR;
3862#line 158 "cpp.re"
3863    { BOOST_WAVE_RET(T_POUND_POUND_ALT); }
3864#line 3865 "cpp_re.inc"
3865yy409:
3866    ++YYCURSOR;
3867#line 227 "cpp.re"
3868    { BOOST_WAVE_RET(T_LESSEQUAL); }
3869#line 3870 "cpp_re.inc"
3870yy411:
3871    ++YYCURSOR;
3872    if ((yych = *YYCURSOR) == '=') goto yy417;
3873#line 220 "cpp.re"
3874    { BOOST_WAVE_RET(T_SHIFTLEFT); }
3875#line 3876 "cpp_re.inc"
3876yy413:
3877    ++YYCURSOR;
3878#line 147 "cpp.re"
3879    { BOOST_WAVE_RET(T_LEFTBRACKET_ALT); }
3880#line 3881 "cpp_re.inc"
3881yy415:
3882    ++YYCURSOR;
3883#line 141 "cpp.re"
3884    { BOOST_WAVE_RET(T_LEFTBRACE_ALT); }
3885#line 3886 "cpp_re.inc"
3886yy417:
3887    ++YYCURSOR;
3888#line 223 "cpp.re"
3889    { BOOST_WAVE_RET(T_SHIFTLEFTASSIGN); }
3890#line 3891 "cpp_re.inc"
3891yy419:
3892    yych = *++YYCURSOR;
3893    switch (yych) {
3894    case '!':    goto yy432;
3895    case '\'':    goto yy430;
3896    case '(':    goto yy424;
3897    case ')':    goto yy426;
3898    case '-':    goto yy434;
3899    case '/':    goto yy436;
3900    case '<':    goto yy420;
3901    case '=':    goto yy428;
3902    case '>':    goto yy422;
3903    default:    goto yy99;
3904    }
3905yy420:
3906    ++YYCURSOR;
3907#line 140 "cpp.re"
3908    { BOOST_WAVE_RET(T_LEFTBRACE_TRIGRAPH); }
3909#line 3910 "cpp_re.inc"
3910yy422:
3911    ++YYCURSOR;
3912#line 143 "cpp.re"
3913    { BOOST_WAVE_RET(T_RIGHTBRACE_TRIGRAPH); }
3914#line 3915 "cpp_re.inc"
3915yy424:
3916    ++YYCURSOR;
3917#line 146 "cpp.re"
3918    { BOOST_WAVE_RET(T_LEFTBRACKET_TRIGRAPH); }
3919#line 3920 "cpp_re.inc"
3920yy426:
3921    ++YYCURSOR;
3922#line 149 "cpp.re"
3923    { BOOST_WAVE_RET(T_RIGHTBRACKET_TRIGRAPH); }
3924#line 3925 "cpp_re.inc"
3925yy428:
3926    yyaccept = 13;
3927    yych = *(YYMARKER = ++YYCURSOR);
3928    if (yych <= 'c') {
3929        if (yych <= ' ') {
3930            if (yych <= '\n') {
3931                if (yych == '\t') goto yy273;
3932            } else {
3933                if (yych <= '\f') goto yy273;
3934                if (yych >= ' ') goto yy273;
3935            }
3936        } else {
3937            if (yych <= '.') {
3938                if (yych == '#') goto yy449;
3939            } else {
3940                if (yych <= '/') goto yy273;
3941                if (yych == '?') goto yy448;
3942            }
3943        }
3944    } else {
3945        if (yych <= 'p') {
3946            if (yych <= 'i') {
3947                if (yych <= 'e') goto yy273;
3948                if (yych >= 'i') goto yy273;
3949            } else {
3950                if (yych == 'l') goto yy273;
3951                if (yych >= 'p') goto yy273;
3952            }
3953        } else {
3954            if (yych <= 't') {
3955                if (yych == 'r') goto yy273;
3956            } else {
3957                if (yych == 'v') goto yy429;
3958                if (yych <= 'w') goto yy273;
3959            }
3960        }
3961    }
3962yy429:
3963#line 153 "cpp.re"
3964    { BOOST_WAVE_RET(T_POUND_TRIGRAPH); }
3965#line 3966 "cpp_re.inc"
3966yy430:
3967    ++YYCURSOR;
3968    if ((yych = *YYCURSOR) == '=') goto yy446;
3969#line 192 "cpp.re"
3970    { BOOST_WAVE_RET(T_XOR_TRIGRAPH); }
3971#line 3972 "cpp_re.inc"
3972yy432:
3973    yyaccept = 14;
3974    yych = *(YYMARKER = ++YYCURSOR);
3975    if (yych <= '>') {
3976        if (yych == '=') goto yy441;
3977    } else {
3978        if (yych <= '?') goto yy438;
3979        if (yych == '|') goto yy439;
3980    }
3981yy433:
3982#line 198 "cpp.re"
3983    { BOOST_WAVE_RET(T_OR_TRIGRAPH); }
3984#line 3985 "cpp_re.inc"
3985yy434:
3986    ++YYCURSOR;
3987#line 200 "cpp.re"
3988    { BOOST_WAVE_RET(T_COMPL_TRIGRAPH); }
3989#line 3990 "cpp_re.inc"
3990yy436:
3991    yyaccept = 15;
3992    yych = *(YYMARKER = ++YYCURSOR);
3993    if (yych == 'U') goto yy100;
3994    if (yych == 'u') goto yy98;
3995yy437:
3996#line 250 "cpp.re"
3997    { BOOST_WAVE_RET(T_ANY_TRIGRAPH); }
3998#line 3999 "cpp_re.inc"
3999yy438:
4000    yych = *++YYCURSOR;
4001    if (yych == '?') goto yy443;
4002    goto yy99;
4003yy439:
4004    ++YYCURSOR;
4005#line 232 "cpp.re"
4006    { BOOST_WAVE_RET(T_OROR_TRIGRAPH); }
4007#line 4008 "cpp_re.inc"
4008yy441:
4009    ++YYCURSOR;
4010#line 219 "cpp.re"
4011    { BOOST_WAVE_RET(T_ORASSIGN_TRIGRAPH); }
4012#line 4013 "cpp_re.inc"
4013yy443:
4014    yych = *++YYCURSOR;
4015    if (yych != '!') goto yy99;
4016    ++YYCURSOR;
4017#line 235 "cpp.re"
4018    { BOOST_WAVE_RET(T_OROR_TRIGRAPH); }
4019#line 4020 "cpp_re.inc"
4020yy446:
4021    ++YYCURSOR;
4022#line 214 "cpp.re"
4023    { BOOST_WAVE_RET(T_XORASSIGN_TRIGRAPH); }
4024#line 4025 "cpp_re.inc"
4025yy448:
4026    yych = *++YYCURSOR;
4027    if (yych == '?') goto yy451;
4028    goto yy99;
4029yy449:
4030    ++YYCURSOR;
4031#line 156 "cpp.re"
4032    { BOOST_WAVE_RET(T_POUND_POUND_TRIGRAPH); }
4033#line 4034 "cpp_re.inc"
4034yy451:
4035    yych = *++YYCURSOR;
4036    if (yych != '=') goto yy99;
4037    ++YYCURSOR;
4038#line 157 "cpp.re"
4039    { BOOST_WAVE_RET(T_POUND_POUND_TRIGRAPH); }
4040#line 4041 "cpp_re.inc"
4041yy454:
4042    yyaccept = 1;
4043    yych = *(YYMARKER = ++YYCURSOR);
4044    switch (yych) {
4045    case 'a':    goto yy455;
4046    case 'b':    goto yy456;
4047    case 'c':    goto yy457;
4048    case 'd':    goto yy458;
4049    case 'e':    goto yy507;
4050    case 'f':    goto yy505;
4051    case 'i':    goto yy504;
4052    case 'l':    goto yy508;
4053    case 's':    goto yy461;
4054    case 't':    goto yy506;
4055    default:    goto yy109;
4056    }
4057yy455:
4058    yyaccept = 1;
4059    yych = *(YYMARKER = ++YYCURSOR);
4060    if (yych == 's') goto yy501;
4061    goto yy109;
4062yy456:
4063    yyaccept = 1;
4064    yych = *(YYMARKER = ++YYCURSOR);
4065    if (yych == 'a') goto yy496;
4066    goto yy109;
4067yy457:
4068    yyaccept = 1;
4069    yych = *(YYMARKER = ++YYCURSOR);
4070    if (yych == 'd') goto yy491;
4071    goto yy109;
4072yy458:
4073    yyaccept = 1;
4074    yych = *(YYMARKER = ++YYCURSOR);
4075    if (yych == 'e') goto yy483;
4076    goto yy109;
4077yy459:
4078    yyaccept = 1;
4079    yych = *(YYMARKER = ++YYCURSOR);
4080    if (yych == 'a') goto yy475;
4081    goto yy109;
4082yy460:
4083    yyaccept = 1;
4084    yych = *(YYMARKER = ++YYCURSOR);
4085    if (yych == 'n') goto yy469;
4086    goto yy109;
4087yy461:
4088    yyaccept = 1;
4089    yych = *(YYMARKER = ++YYCURSOR);
4090    if (yych != 't') goto yy109;
4091    yyaccept = 1;
4092    yych = *(YYMARKER = ++YYCURSOR);
4093    if (yych != 'd') goto yy109;
4094    yyaccept = 1;
4095    yych = *(YYMARKER = ++YYCURSOR);
4096    if (yych != 'c') goto yy109;
4097    yyaccept = 1;
4098    yych = *(YYMARKER = ++YYCURSOR);
4099    if (yych != 'a') goto yy109;
4100    yyaccept = 1;
4101    yych = *(YYMARKER = ++YYCURSOR);
4102    if (yych != 'l') goto yy109;
4103    yyaccept = 1;
4104    yych = *(YYMARKER = ++YYCURSOR);
4105    if (yych != 'l') goto yy109;
4106    yyaccept = 16;
4107    yych = *(YYMARKER = ++YYCURSOR);
4108    if (yybm[256+yych] & 32) {
4109        goto yy108;
4110    }
4111    if (yych == '?') goto yy111;
4112    if (yych == '\\') goto yy110;
4113yy468:
4114#line 131 "cpp.re"
4115    { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_STDCALL : T_IDENTIFIER); }
4116#line 4117 "cpp_re.inc"
4117yy469:
4118    yyaccept = 1;
4119    yych = *(YYMARKER = ++YYCURSOR);
4120    if (yych != 'l') goto yy109;
4121yy470:
4122    yyaccept = 1;
4123    yych = *(YYMARKER = ++YYCURSOR);
4124    if (yych != 'i') goto yy109;
4125    yyaccept = 1;
4126    yych = *(YYMARKER = ++YYCURSOR);
4127    if (yych != 'n') goto yy109;
4128    yyaccept = 1;
4129    yych = *(YYMARKER = ++YYCURSOR);
4130    if (yych != 'e') goto yy109;
4131    yyaccept = 17;
4132    yych = *(YYMARKER = ++YYCURSOR);
4133    if (yybm[256+yych] & 32) {
4134        goto yy108;
4135    }
4136    if (yych == '?') goto yy111;
4137    if (yych == '\\') goto yy110;
4138yy474:
4139#line 136 "cpp.re"
4140    { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_INLINE : T_IDENTIFIER); }
4141#line 4142 "cpp_re.inc"
4142yy475:
4143    yyaccept = 1;
4144    yych = *(YYMARKER = ++YYCURSOR);
4145    if (yych != 's') goto yy109;
4146    yyaccept = 1;
4147    yych = *(YYMARKER = ++YYCURSOR);
4148    if (yych != 't') goto yy109;
4149    yyaccept = 1;
4150    yych = *(YYMARKER = ++YYCURSOR);
4151    if (yych != 'c') goto yy109;
4152    yyaccept = 1;
4153    yych = *(YYMARKER = ++YYCURSOR);
4154    if (yych != 'a') goto yy109;
4155    yyaccept = 1;
4156    yych = *(YYMARKER = ++YYCURSOR);
4157    if (yych != 'l') goto yy109;
4158    yyaccept = 1;
4159    yych = *(YYMARKER = ++YYCURSOR);
4160    if (yych != 'l') goto yy109;
4161    yyaccept = 18;
4162    yych = *(YYMARKER = ++YYCURSOR);
4163    if (yybm[256+yych] & 32) {
4164        goto yy108;
4165    }
4166    if (yych == '?') goto yy111;
4167    if (yych == '\\') goto yy110;
4168yy482:
4169#line 130 "cpp.re"
4170    { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_FASTCALL : T_IDENTIFIER); }
4171#line 4172 "cpp_re.inc"
4172yy483:
4173    yyaccept = 1;
4174    yych = *(YYMARKER = ++YYCURSOR);
4175    if (yych != 'c') goto yy109;
4176    yyaccept = 1;
4177    yych = *(YYMARKER = ++YYCURSOR);
4178    if (yych != 'l') goto yy109;
4179    yyaccept = 1;
4180    yych = *(YYMARKER = ++YYCURSOR);
4181    if (yych != 's') goto yy109;
4182    yyaccept = 1;
4183    yych = *(YYMARKER = ++YYCURSOR);
4184    if (yych != 'p') goto yy109;
4185    yyaccept = 1;
4186    yych = *(YYMARKER = ++YYCURSOR);
4187    if (yych != 'e') goto yy109;
4188    yyaccept = 1;
4189    yych = *(YYMARKER = ++YYCURSOR);
4190    if (yych != 'c') goto yy109;
4191    yyaccept = 19;
4192    yych = *(YYMARKER = ++YYCURSOR);
4193    if (yybm[256+yych] & 32) {
4194        goto yy108;
4195    }
4196    if (yych == '?') goto yy111;
4197    if (yych == '\\') goto yy110;
4198yy490:
4199#line 128 "cpp.re"
4200    { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_DECLSPEC : T_IDENTIFIER); }
4201#line 4202 "cpp_re.inc"
4202yy491:
4203    yyaccept = 1;
4204    yych = *(YYMARKER = ++YYCURSOR);
4205    if (yych != 'e') goto yy109;
4206    yyaccept = 1;
4207    yych = *(YYMARKER = ++YYCURSOR);
4208    if (yych != 'c') goto yy109;
4209    yyaccept = 1;
4210    yych = *(YYMARKER = ++YYCURSOR);
4211    if (yych != 'l') goto yy109;
4212    yyaccept = 20;
4213    yych = *(YYMARKER = ++YYCURSOR);
4214    if (yybm[256+yych] & 32) {
4215        goto yy108;
4216    }
4217    if (yych == '?') goto yy111;
4218    if (yych == '\\') goto yy110;
4219yy495:
4220#line 129 "cpp.re"
4221    { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_CDECL : T_IDENTIFIER); }
4222#line 4223 "cpp_re.inc"
4223yy496:
4224    yyaccept = 1;
4225    yych = *(YYMARKER = ++YYCURSOR);
4226    if (yych != 's') goto yy109;
4227    yyaccept = 1;
4228    yych = *(YYMARKER = ++YYCURSOR);
4229    if (yych != 'e') goto yy109;
4230    yyaccept = 1;
4231    yych = *(YYMARKER = ++YYCURSOR);
4232    if (yych != 'd') goto yy109;
4233    yyaccept = 21;
4234    yych = *(YYMARKER = ++YYCURSOR);
4235    if (yybm[256+yych] & 32) {
4236        goto yy108;
4237    }
4238    if (yych == '?') goto yy111;
4239    if (yych == '\\') goto yy110;
4240yy500:
4241#line 127 "cpp.re"
4242    { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_BASED : T_IDENTIFIER); }
4243#line 4244 "cpp_re.inc"
4244yy501:
4245    yyaccept = 1;
4246    yych = *(YYMARKER = ++YYCURSOR);
4247    if (yych != 'm') goto yy109;
4248    yyaccept = 22;
4249    yych = *(YYMARKER = ++YYCURSOR);
4250    if (yybm[256+yych] & 32) {
4251        goto yy108;
4252    }
4253    if (yych == '?') goto yy111;
4254    if (yych == '\\') goto yy110;
4255yy503:
4256#line 137 "cpp.re"
4257    { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_ASM : T_IDENTIFIER); }
4258#line 4259 "cpp_re.inc"
4259yy504:
4260    yyaccept = 1;
4261    yych = *(YYMARKER = ++YYCURSOR);
4262    if (yych == 'n') goto yy530;
4263    goto yy109;
4264yy505:
4265    yyaccept = 1;
4266    yych = *(YYMARKER = ++YYCURSOR);
4267    if (yych == 'a') goto yy475;
4268    if (yych == 'i') goto yy523;
4269    goto yy109;
4270yy506:
4271    yyaccept = 1;
4272    yych = *(YYMARKER = ++YYCURSOR);
4273    if (yych == 'r') goto yy520;
4274    goto yy109;
4275yy507:
4276    yyaccept = 1;
4277    yych = *(YYMARKER = ++YYCURSOR);
4278    if (yych == 'x') goto yy514;
4279    goto yy109;
4280yy508:
4281    yyaccept = 1;
4282    yych = *(YYMARKER = ++YYCURSOR);
4283    if (yych != 'e') goto yy109;
4284    yyaccept = 1;
4285    yych = *(YYMARKER = ++YYCURSOR);
4286    if (yych != 'a') goto yy109;
4287    yyaccept = 1;
4288    yych = *(YYMARKER = ++YYCURSOR);
4289    if (yych != 'v') goto yy109;
4290    yyaccept = 1;
4291    yych = *(YYMARKER = ++YYCURSOR);
4292    if (yych != 'e') goto yy109;
4293    yyaccept = 23;
4294    yych = *(YYMARKER = ++YYCURSOR);
4295    if (yybm[256+yych] & 32) {
4296        goto yy108;
4297    }
4298    if (yych == '?') goto yy111;
4299    if (yych == '\\') goto yy110;
4300yy513:
4301#line 135 "cpp.re"
4302    { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_LEAVE : T_IDENTIFIER); }
4303#line 4304 "cpp_re.inc"
4304yy514:
4305    yyaccept = 1;
4306    yych = *(YYMARKER = ++YYCURSOR);
4307    if (yych != 'c') goto yy109;
4308    yyaccept = 1;
4309    yych = *(YYMARKER = ++YYCURSOR);
4310    if (yych != 'e') goto yy109;
4311    yyaccept = 1;
4312    yych = *(YYMARKER = ++YYCURSOR);
4313    if (yych != 'p') goto yy109;
4314    yyaccept = 1;
4315    yych = *(YYMARKER = ++YYCURSOR);
4316    if (yych != 't') goto yy109;
4317    yyaccept = 24;
4318    yych = *(YYMARKER = ++YYCURSOR);
4319    if (yybm[256+yych] & 32) {
4320        goto yy108;
4321    }
4322    if (yych == '?') goto yy111;
4323    if (yych == '\\') goto yy110;
4324yy519:
4325#line 133 "cpp.re"
4326    { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_EXCEPT : T_IDENTIFIER); }
4327#line 4328 "cpp_re.inc"
4328yy520:
4329    yyaccept = 1;
4330    yych = *(YYMARKER = ++YYCURSOR);
4331    if (yych != 'y') goto yy109;
4332    yyaccept = 25;
4333    yych = *(YYMARKER = ++YYCURSOR);
4334    if (yybm[256+yych] & 32) {
4335        goto yy108;
4336    }
4337    if (yych == '?') goto yy111;
4338    if (yych == '\\') goto yy110;
4339yy522:
4340#line 132 "cpp.re"
4341    { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_TRY : T_IDENTIFIER); }
4342#line 4343 "cpp_re.inc"
4343yy523:
4344    yyaccept = 1;
4345    yych = *(YYMARKER = ++YYCURSOR);
4346    if (yych != 'n') goto yy109;
4347    yyaccept = 1;
4348    yych = *(YYMARKER = ++YYCURSOR);
4349    if (yych != 'a') goto yy109;
4350    yyaccept = 1;
4351    yych = *(YYMARKER = ++YYCURSOR);
4352    if (yych != 'l') goto yy109;
4353    yyaccept = 1;
4354    yych = *(YYMARKER = ++YYCURSOR);
4355    if (yych != 'l') goto yy109;
4356    yyaccept = 1;
4357    yych = *(YYMARKER = ++YYCURSOR);
4358    if (yych != 'y') goto yy109;
4359    yyaccept = 26;
4360    yych = *(YYMARKER = ++YYCURSOR);
4361    if (yybm[256+yych] & 32) {
4362        goto yy108;
4363    }
4364    if (yych == '?') goto yy111;
4365    if (yych == '\\') goto yy110;
4366yy529:
4367#line 134 "cpp.re"
4368    { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_FINALLY : T_IDENTIFIER); }
4369#line 4370 "cpp_re.inc"
4370yy530:
4371    yyaccept = 1;
4372    yych = *(YYMARKER = ++YYCURSOR);
4373    if (yych == 'l') goto yy470;
4374    if (yych != 't') goto yy109;
4375    yyaccept = 1;
4376    yych = *(YYMARKER = ++YYCURSOR);
4377    switch (yych) {
4378    case '1':    goto yy532;
4379    case '3':    goto yy533;
4380    case '6':    goto yy534;
4381    case '8':    goto yy535;
4382    default:    goto yy109;
4383    }
4384yy532:
4385    yyaccept = 1;
4386    yych = *(YYMARKER = ++YYCURSOR);
4387    if (yych == '6') goto yy541;
4388    goto yy109;
4389yy533:
4390    yyaccept = 1;
4391    yych = *(YYMARKER = ++YYCURSOR);
4392    if (yych == '2') goto yy539;
4393    goto yy109;
4394yy534:
4395    yyaccept = 1;
4396    yych = *(YYMARKER = ++YYCURSOR);
4397    if (yych == '4') goto yy537;
4398    goto yy109;
4399yy535:
4400    yyaccept = 27;
4401    yych = *(YYMARKER = ++YYCURSOR);
4402    if (yybm[256+yych] & 32) {
4403        goto yy108;
4404    }
4405    if (yych == '?') goto yy111;
4406    if (yych == '\\') goto yy110;
4407yy536:
4408#line 123 "cpp.re"
4409    { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_INT8 : T_IDENTIFIER); }
4410#line 4411 "cpp_re.inc"
4411yy537:
4412    yyaccept = 28;
4413    yych = *(YYMARKER = ++YYCURSOR);
4414    if (yybm[256+yych] & 32) {
4415        goto yy108;
4416    }
4417    if (yych == '?') goto yy111;
4418    if (yych == '\\') goto yy110;
4419yy538:
4420#line 126 "cpp.re"
4421    { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_INT64 : T_IDENTIFIER); }
4422#line 4423 "cpp_re.inc"
4423yy539:
4424    yyaccept = 29;
4425    yych = *(YYMARKER = ++YYCURSOR);
4426    if (yybm[256+yych] & 32) {
4427        goto yy108;
4428    }
4429    if (yych == '?') goto yy111;
4430    if (yych == '\\') goto yy110;
4431yy540:
4432#line 125 "cpp.re"
4433    { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_INT32 : T_IDENTIFIER); }
4434#line 4435 "cpp_re.inc"
4435yy541:
4436    yyaccept = 30;
4437    yych = *(YYMARKER = ++YYCURSOR);
4438    if (yybm[256+yych] & 32) {
4439        goto yy108;
4440    }
4441    if (yych == '?') goto yy111;
4442    if (yych == '\\') goto yy110;
4443yy542:
4444#line 124 "cpp.re"
4445    { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_INT16 : T_IDENTIFIER); }
4446#line 4447 "cpp_re.inc"
4447yy543:
4448    yyaccept = 1;
4449    yych = *(YYMARKER = ++YYCURSOR);
4450    if (yych == 'h') goto yy549;
4451    goto yy109;
4452yy544:
4453    yyaccept = 1;
4454    yych = *(YYMARKER = ++YYCURSOR);
4455    if (yych != 'i') goto yy109;
4456    yyaccept = 1;
4457    yych = *(YYMARKER = ++YYCURSOR);
4458    if (yych != 'l') goto yy109;
4459    yyaccept = 1;
4460    yych = *(YYMARKER = ++YYCURSOR);
4461    if (yych != 'e') goto yy109;
4462    yyaccept = 31;
4463    yych = *(YYMARKER = ++YYCURSOR);
4464    if (yybm[256+yych] & 32) {
4465        goto yy108;
4466    }
4467    if (yych == '?') goto yy111;
4468    if (yych == '\\') goto yy110;
4469yy548:
4470#line 121 "cpp.re"
4471    { BOOST_WAVE_RET(T_WHILE); }
4472#line 4473 "cpp_re.inc"
4473yy549:
4474    yyaccept = 1;
4475    yych = *(YYMARKER = ++YYCURSOR);
4476    if (yych != 'a') goto yy109;
4477    yyaccept = 1;
4478    yych = *(YYMARKER = ++YYCURSOR);
4479    if (yych != 'r') goto yy109;
4480    yyaccept = 1;
4481    yych = *(YYMARKER = ++YYCURSOR);
4482    if (yych != '_') goto yy109;
4483    yyaccept = 1;
4484    yych = *(YYMARKER = ++YYCURSOR);
4485    if (yych != 't') goto yy109;
4486    yyaccept = 32;
4487    yych = *(YYMARKER = ++YYCURSOR);
4488    if (yybm[256+yych] & 32) {
4489        goto yy108;
4490    }
4491    if (yych == '?') goto yy111;
4492    if (yych == '\\') goto yy110;
4493yy554:
4494#line 120 "cpp.re"
4495    { BOOST_WAVE_RET(T_WCHART); }
4496#line 4497 "cpp_re.inc"
4497yy555:
4498    yyaccept = 1;
4499    yych = *(YYMARKER = ++YYCURSOR);
4500    if (yych == 'r') goto yy567;
4501    goto yy109;
4502yy556:
4503    yyaccept = 1;
4504    yych = *(YYMARKER = ++YYCURSOR);
4505    if (yych == 'i') goto yy557;
4506    if (yych == 'l') goto yy558;
4507    goto yy109;
4508yy557:
4509    yyaccept = 1;
4510    yych = *(YYMARKER = ++YYCURSOR);
4511    if (yych == 'd') goto yy565;
4512    goto yy109;
4513yy558:
4514    yyaccept = 1;
4515    yych = *(YYMARKER = ++YYCURSOR);
4516    if (yych != 'a') goto yy109;
4517    yyaccept = 1;
4518    yych = *(YYMARKER = ++YYCURSOR);
4519    if (yych != 't') goto yy109;
4520    yyaccept = 1;
4521    yych = *(YYMARKER = ++YYCURSOR);
4522    if (yych != 'i') goto yy109;
4523    yyaccept = 1;
4524    yych = *(YYMARKER = ++YYCURSOR);
4525    if (yych != 'l') goto yy109;
4526    yyaccept = 1;
4527    yych = *(YYMARKER = ++YYCURSOR);
4528    if (yych != 'e') goto yy109;
4529    yyaccept = 33;
4530    yych = *(YYMARKER = ++YYCURSOR);
4531    if (yybm[256+yych] & 32) {
4532        goto yy108;
4533    }
4534    if (yych == '?') goto yy111;
4535    if (yych == '\\') goto yy110;
4536yy564:
4537#line 119 "cpp.re"
4538    { BOOST_WAVE_RET(T_VOLATILE); }
4539#line 4540 "cpp_re.inc"
4540yy565:
4541    yyaccept = 34;
4542    yych = *(YYMARKER = ++YYCURSOR);
4543    if (yybm[256+yych] & 32) {
4544        goto yy108;
4545    }
4546    if (yych == '?') goto yy111;
4547    if (yych == '\\') goto yy110;
4548yy566:
4549#line 118 "cpp.re"
4550    { BOOST_WAVE_RET(T_VOID); }
4551#line 4552 "cpp_re.inc"
4552yy567:
4553    yyaccept = 1;
4554    yych = *(YYMARKER = ++YYCURSOR);
4555    if (yych != 't') goto yy109;
4556    yyaccept = 1;
4557    yych = *(YYMARKER = ++YYCURSOR);
4558    if (yych != 'u') goto yy109;
4559    yyaccept = 1;
4560    yych = *(YYMARKER = ++YYCURSOR);
4561    if (yych != 'a') goto yy109;
4562    yyaccept = 1;
4563    yych = *(YYMARKER = ++YYCURSOR);
4564    if (yych != 'l') goto yy109;
4565    yyaccept = 35;
4566    yych = *(YYMARKER = ++YYCURSOR);
4567    if (yybm[256+yych] & 32) {
4568        goto yy108;
4569    }
4570    if (yych == '?') goto yy111;
4571    if (yych == '\\') goto yy110;
4572yy572:
4573#line 117 "cpp.re"
4574    { BOOST_WAVE_RET(T_VIRTUAL); }
4575#line 4576 "cpp_re.inc"
4576yy573:
4577    yyaccept = 1;
4578    yych = *(YYMARKER = ++YYCURSOR);
4579    if (yych == '"') goto yy129;
4580    if (yych == 'R') goto yy128;
4581    goto yy109;
4582yy574:
4583    yyaccept = 1;
4584    yych = *(YYMARKER = ++YYCURSOR);
4585    if (yych == 'i') goto yy580;
4586    if (yych == 's') goto yy581;
4587    goto yy109;
4588yy575:
4589    yyaccept = 1;
4590    yych = *(YYMARKER = ++YYCURSOR);
4591    if (yych != 'i') goto yy109;
4592    yyaccept = 1;
4593    yych = *(YYMARKER = ++YYCURSOR);
4594    if (yych != 'n') goto yy109;
4595    yyaccept = 1;
4596    yych = *(YYMARKER = ++YYCURSOR);
4597    if (yych != 'g') goto yy109;
4598    yyaccept = 36;
4599    yych = *(YYMARKER = ++YYCURSOR);
4600    if (yybm[256+yych] & 32) {
4601        goto yy108;
4602    }
4603    if (yych == '?') goto yy111;
4604    if (yych == '\\') goto yy110;
4605yy579:
4606#line 116 "cpp.re"
4607    { BOOST_WAVE_RET(T_USING); }
4608#line 4609 "cpp_re.inc"
4609yy580:
4610    yyaccept = 1;
4611    yych = *(YYMARKER = ++YYCURSOR);
4612    if (yych == 'o') goto yy588;
4613    goto yy109;
4614yy581:
4615    yyaccept = 1;
4616    yych = *(YYMARKER = ++YYCURSOR);
4617    if (yych != 'i') goto yy109;
4618    yyaccept = 1;
4619    yych = *(YYMARKER = ++YYCURSOR);
4620    if (yych != 'g') goto yy109;
4621    yyaccept = 1;
4622    yych = *(YYMARKER = ++YYCURSOR);
4623    if (yych != 'n') goto yy109;
4624    yyaccept = 1;
4625    yych = *(YYMARKER = ++YYCURSOR);
4626    if (yych != 'e') goto yy109;
4627    yyaccept = 1;
4628    yych = *(YYMARKER = ++YYCURSOR);
4629    if (yych != 'd') goto yy109;
4630    yyaccept = 37;
4631    yych = *(YYMARKER = ++YYCURSOR);
4632    if (yybm[256+yych] & 32) {
4633        goto yy108;
4634    }
4635    if (yych == '?') goto yy111;
4636    if (yych == '\\') goto yy110;
4637yy587:
4638#line 115 "cpp.re"
4639    { BOOST_WAVE_RET(T_UNSIGNED); }
4640#line 4641 "cpp_re.inc"
4641yy588:
4642    yyaccept = 1;
4643    yych = *(YYMARKER = ++YYCURSOR);
4644    if (yych != 'n') goto yy109;
4645    yyaccept = 38;
4646    yych = *(YYMARKER = ++YYCURSOR);
4647    if (yybm[256+yych] & 32) {
4648        goto yy108;
4649    }
4650    if (yych == '?') goto yy111;
4651    if (yych == '\\') goto yy110;
4652yy590:
4653#line 114 "cpp.re"
4654    { BOOST_WAVE_RET(T_UNION); }
4655#line 4656 "cpp_re.inc"
4656yy591:
4657    yyaccept = 1;
4658    yych = *(YYMARKER = ++YYCURSOR);
4659    if (yych == 'm') goto yy631;
4660    goto yy109;
4661yy592:
4662    yyaccept = 1;
4663    yych = *(YYMARKER = ++YYCURSOR);
4664    if (yych == 'i') goto yy614;
4665    if (yych == 'r') goto yy615;
4666    goto yy109;
4667yy593:
4668    yyaccept = 1;
4669    yych = *(YYMARKER = ++YYCURSOR);
4670    if (yych == 'u') goto yy609;
4671    if (yych == 'y') goto yy610;
4672    goto yy109;
4673yy594:
4674    yyaccept = 1;
4675    yych = *(YYMARKER = ++YYCURSOR);
4676    if (yych != 'p') goto yy109;
4677    yyaccept = 1;
4678    yych = *(YYMARKER = ++YYCURSOR);
4679    if (yych != 'e') goto yy109;
4680    yyaccept = 1;
4681    yych = *(YYMARKER = ++YYCURSOR);
4682    if (yych <= 'h') {
4683        if (yych != 'd') goto yy109;
4684    } else {
4685        if (yych <= 'i') goto yy598;
4686        if (yych == 'n') goto yy599;
4687        goto yy109;
4688    }
4689    yyaccept = 1;
4690    yych = *(YYMARKER = ++YYCURSOR);
4691    if (yych == 'e') goto yy606;
4692    goto yy109;
4693yy598:
4694    yyaccept = 1;
4695    yych = *(YYMARKER = ++YYCURSOR);
4696    if (yych == 'd') goto yy604;
4697    goto yy109;
4698yy599:
4699    yyaccept = 1;
4700    yych = *(YYMARKER = ++YYCURSOR);
4701    if (yych != 'a') goto yy109;
4702    yyaccept = 1;
4703    yych = *(YYMARKER = ++YYCURSOR);
4704    if (yych != 'm') goto yy109;
4705    yyaccept = 1;
4706    yych = *(YYMARKER = ++YYCURSOR);
4707    if (yych != 'e') goto yy109;
4708    yyaccept = 39;
4709    yych = *(YYMARKER = ++YYCURSOR);
4710    if (yybm[256+yych] & 32) {
4711        goto yy108;
4712    }
4713    if (yych == '?') goto yy111;
4714    if (yych == '\\') goto yy110;
4715yy603:
4716#line 113 "cpp.re"
4717    { BOOST_WAVE_RET(T_TYPENAME); }
4718#line 4719 "cpp_re.inc"
4719yy604:
4720    yyaccept = 40;
4721    yych = *(YYMARKER = ++YYCURSOR);
4722    if (yybm[256+yych] & 32) {
4723        goto yy108;
4724    }
4725    if (yych == '?') goto yy111;
4726    if (yych == '\\') goto yy110;
4727yy605:
4728#line 112 "cpp.re"
4729    { BOOST_WAVE_RET(T_TYPEID); }
4730#line 4731 "cpp_re.inc"
4731yy606:
4732    yyaccept = 1;
4733    yych = *(YYMARKER = ++YYCURSOR);
4734    if (yych != 'f') goto yy109;
4735    yyaccept = 41;
4736    yych = *(YYMARKER = ++YYCURSOR);
4737    if (yybm[256+yych] & 32) {
4738        goto yy108;
4739    }
4740    if (yych == '?') goto yy111;
4741    if (yych == '\\') goto yy110;
4742yy608:
4743#line 111 "cpp.re"
4744    { BOOST_WAVE_RET(T_TYPEDEF); }
4745#line 4746 "cpp_re.inc"
4746yy609:
4747    yyaccept = 1;
4748    yych = *(YYMARKER = ++YYCURSOR);
4749    if (yych == 'e') goto yy612;
4750    goto yy109;
4751yy610:
4752    yyaccept = 42;
4753    yych = *(YYMARKER = ++YYCURSOR);
4754    if (yybm[256+yych] & 32) {
4755        goto yy108;
4756    }
4757    if (yych == '?') goto yy111;
4758    if (yych == '\\') goto yy110;
4759yy611:
4760#line 110 "cpp.re"
4761    { BOOST_WAVE_RET(T_TRY); }
4762#line 4763 "cpp_re.inc"
4763yy612:
4764    yyaccept = 43;
4765    yych = *(YYMARKER = ++YYCURSOR);
4766    if (yybm[256+yych] & 32) {
4767        goto yy108;
4768    }
4769    if (yych == '?') goto yy111;
4770    if (yych == '\\') goto yy110;
4771yy613:
4772#line 109 "cpp.re"
4773    { BOOST_WAVE_RET(T_TRUE); }
4774#line 4775 "cpp_re.inc"
4775yy614:
4776    yyaccept = 1;
4777    yych = *(YYMARKER = ++YYCURSOR);
4778    if (yych == 's') goto yy629;
4779    goto yy109;
4780yy615:
4781    yyaccept = 1;
4782    yych = *(YYMARKER = ++YYCURSOR);
4783    if (yych == 'e') goto yy616;
4784    if (yych == 'o') goto yy617;
4785    goto yy109;
4786yy616:
4787    yyaccept = 1;
4788    yych = *(YYMARKER = ++YYCURSOR);
4789    if (yych == 'a') goto yy620;
4790    goto yy109;
4791yy617:
4792    yyaccept = 1;
4793    yych = *(YYMARKER = ++YYCURSOR);
4794    if (yych != 'w') goto yy109;
4795    yyaccept = 44;
4796    yych = *(YYMARKER = ++YYCURSOR);
4797    if (yybm[256+yych] & 32) {
4798        goto yy108;
4799    }
4800    if (yych == '?') goto yy111;
4801    if (yych == '\\') goto yy110;
4802yy619:
4803#line 108 "cpp.re"
4804    { BOOST_WAVE_RET(T_THROW); }
4805#line 4806 "cpp_re.inc"
4806yy620:
4807    yyaccept = 1;
4808    yych = *(YYMARKER = ++YYCURSOR);
4809    if (yych != 'd') goto yy109;
4810    yyaccept = 1;
4811    yych = *(YYMARKER = ++YYCURSOR);
4812    if (yych != '_') goto yy109;
4813    yyaccept = 1;
4814    yych = *(YYMARKER = ++YYCURSOR);
4815    if (yych != 'l') goto yy109;
4816    yyaccept = 1;
4817    yych = *(YYMARKER = ++YYCURSOR);
4818    if (yych != 'o') goto yy109;
4819    yyaccept = 1;
4820    yych = *(YYMARKER = ++YYCURSOR);
4821    if (yych != 'c') goto yy109;
4822    yyaccept = 1;
4823    yych = *(YYMARKER = ++YYCURSOR);
4824    if (yych != 'a') goto yy109;
4825    yyaccept = 1;
4826    yych = *(YYMARKER = ++YYCURSOR);
4827    if (yych != 'l') goto yy109;
4828    yyaccept = 45;
4829    yych = *(YYMARKER = ++YYCURSOR);
4830    if (yybm[256+yych] & 32) {
4831        goto yy108;
4832    }
4833    if (yych == '?') goto yy111;
4834    if (yych == '\\') goto yy110;
4835yy628:
4836#line 107 "cpp.re"
4837    { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_THREADLOCAL : T_IDENTIFIER); }
4838#line 4839 "cpp_re.inc"
4839yy629:
4840    yyaccept = 46;
4841    yych = *(YYMARKER = ++YYCURSOR);
4842    if (yybm[256+yych] & 32) {
4843        goto yy108;
4844    }
4845    if (yych == '?') goto yy111;
4846    if (yych == '\\') goto yy110;
4847yy630:
4848#line 106 "cpp.re"
4849    { BOOST_WAVE_RET(T_THIS); }
4850#line 4851 "cpp_re.inc"
4851yy631:
4852    yyaccept = 1;
4853    yych = *(YYMARKER = ++YYCURSOR);
4854    if (yych != 'p') goto yy109;
4855    yyaccept = 1;
4856    yych = *(YYMARKER = ++YYCURSOR);
4857    if (yych != 'l') goto yy109;
4858    yyaccept = 1;
4859    yych = *(YYMARKER = ++YYCURSOR);
4860    if (yych != 'a') goto yy109;
4861    yyaccept = 1;
4862    yych = *(YYMARKER = ++YYCURSOR);
4863    if (yych != 't') goto yy109;
4864    yyaccept = 1;
4865    yych = *(YYMARKER = ++YYCURSOR);
4866    if (yych != 'e') goto yy109;
4867    yyaccept = 47;
4868    yych = *(YYMARKER = ++YYCURSOR);
4869    if (yybm[256+yych] & 32) {
4870        goto yy108;
4871    }
4872    if (yych == '?') goto yy111;
4873    if (yych == '\\') goto yy110;
4874yy637:
4875#line 105 "cpp.re"
4876    { BOOST_WAVE_RET(T_TEMPLATE); }
4877#line 4878 "cpp_re.inc"
4878yy638:
4879    yyaccept = 1;
4880    yych = *(YYMARKER = ++YYCURSOR);
4881    if (yych == 'o') goto yy680;
4882    goto yy109;
4883yy639:
4884    yyaccept = 1;
4885    yych = *(YYMARKER = ++YYCURSOR);
4886    if (yych == 'g') goto yy670;
4887    if (yych == 'z') goto yy671;
4888    goto yy109;
4889yy640:
4890    yyaccept = 1;
4891    yych = *(YYMARKER = ++YYCURSOR);
4892    if (yych == 'a') goto yy647;
4893    if (yych == 'r') goto yy648;
4894    goto yy109;
4895yy641:
4896    yyaccept = 1;
4897    yych = *(YYMARKER = ++YYCURSOR);
4898    if (yych != 'i') goto yy109;
4899    yyaccept = 1;
4900    yych = *(YYMARKER = ++YYCURSOR);
4901    if (yych != 't') goto yy109;
4902    yyaccept = 1;
4903    yych = *(YYMARKER = ++YYCURSOR);
4904    if (yych != 'c') goto yy109;
4905    yyaccept = 1;
4906    yych = *(YYMARKER = ++YYCURSOR);
4907    if (yych != 'h') goto yy109;
4908    yyaccept = 48;
4909    yych = *(YYMARKER = ++YYCURSOR);
4910    if (yybm[256+yych] & 32) {
4911        goto yy108;
4912    }
4913    if (yych == '?') goto yy111;
4914    if (yych == '\\') goto yy110;
4915yy646:
4916#line 104 "cpp.re"
4917    { BOOST_WAVE_RET(T_SWITCH); }
4918#line 4919 "cpp_re.inc"
4919yy647:
4920    yyaccept = 1;
4921    yych = *(YYMARKER = ++YYCURSOR);
4922    if (yych == 't') goto yy653;
4923    goto yy109;
4924yy648:
4925    yyaccept = 1;
4926    yych = *(YYMARKER = ++YYCURSOR);
4927    if (yych != 'u') goto yy109;
4928    yyaccept = 1;
4929    yych = *(YYMARKER = ++YYCURSOR);
4930    if (yych != 'c') goto yy109;
4931    yyaccept = 1;
4932    yych = *(YYMARKER = ++YYCURSOR);
4933    if (yych != 't') goto yy109;
4934    yyaccept = 49;
4935    yych = *(YYMARKER = ++YYCURSOR);
4936    if (yybm[256+yych] & 32) {
4937        goto yy108;
4938    }
4939    if (yych == '?') goto yy111;
4940    if (yych == '\\') goto yy110;
4941yy652:
4942#line 103 "cpp.re"
4943    { BOOST_WAVE_RET(T_STRUCT); }
4944#line 4945 "cpp_re.inc"
4945yy653:
4946    yyaccept = 1;
4947    yych = *(YYMARKER = ++YYCURSOR);
4948    if (yych != 'i') goto yy109;
4949    yyaccept = 1;
4950    yych = *(YYMARKER = ++YYCURSOR);
4951    if (yych != 'c') goto yy109;
4952    yyaccept = 50;
4953    yych = *(YYMARKER = ++YYCURSOR);
4954    if (yych <= '@') {
4955        if (yych <= '/') {
4956            if (yych == '$') goto yy108;
4957        } else {
4958            if (yych <= '9') goto yy108;
4959            if (yych == '?') goto yy111;
4960        }
4961    } else {
4962        if (yych <= '^') {
4963            if (yych <= 'Z') goto yy108;
4964            if (yych == '\\') goto yy110;
4965        } else {
4966            if (yych <= '_') goto yy657;
4967            if (yych <= '`') goto yy656;
4968            if (yych <= 'z') goto yy108;
4969        }
4970    }
4971yy656:
4972#line 100 "cpp.re"
4973    { BOOST_WAVE_RET(T_STATIC); }
4974#line 4975 "cpp_re.inc"
4975yy657:
4976    yyaccept = 1;
4977    yych = *(YYMARKER = ++YYCURSOR);
4978    if (yych == 'a') goto yy658;
4979    if (yych == 'c') goto yy659;
4980    goto yy109;
4981yy658:
4982    yyaccept = 1;
4983    yych = *(YYMARKER = ++YYCURSOR);
4984    if (yych == 's') goto yy664;
4985    goto yy109;
4986yy659:
4987    yyaccept = 1;
4988    yych = *(YYMARKER = ++YYCURSOR);
4989    if (yych != 'a') goto yy109;
4990    yyaccept = 1;
4991    yych = *(YYMARKER = ++YYCURSOR);
4992    if (yych != 's') goto yy109;
4993    yyaccept = 1;
4994    yych = *(YYMARKER = ++YYCURSOR);
4995    if (yych != 't') goto yy109;
4996    yyaccept = 51;
4997    yych = *(YYMARKER = ++YYCURSOR);
4998    if (yybm[256+yych] & 32) {
4999        goto yy108;
5000    }
5001    if (yych == '?') goto yy111;
5002    if (yych == '\\') goto yy110;
5003yy663:
5004#line 101 "cpp.re"
5005    { BOOST_WAVE_RET(T_STATICCAST); }
5006#line 5007 "cpp_re.inc"
5007yy664:
5008    yyaccept = 1;
5009    yych = *(YYMARKER = ++YYCURSOR);
5010    if (yych != 's') goto yy109;
5011    yyaccept = 1;
5012    yych = *(YYMARKER = ++YYCURSOR);
5013    if (yych != 'e') goto yy109;
5014    yyaccept = 1;
5015    yych = *(YYMARKER = ++YYCURSOR);
5016    if (yych != 'r') goto yy109;
5017    yyaccept = 1;
5018    yych = *(YYMARKER = ++YYCURSOR);
5019    if (yych != 't') goto yy109;
5020    yyaccept = 52;
5021    yych = *(YYMARKER = ++YYCURSOR);
5022    if (yybm[256+yych] & 32) {
5023        goto yy108;
5024    }
5025    if (yych == '?') goto yy111;
5026    if (yych == '\\') goto yy110;
5027yy669:
5028#line 102 "cpp.re"
5029    { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_STATICASSERT : T_IDENTIFIER); }
5030#line 5031 "cpp_re.inc"
5031yy670:
5032    yyaccept = 1;
5033    yych = *(YYMARKER = ++YYCURSOR);
5034    if (yych == 'n') goto yy676;
5035    goto yy109;
5036yy671:
5037    yyaccept = 1;
5038    yych = *(YYMARKER = ++YYCURSOR);
5039    if (yych != 'e') goto yy109;
5040    yyaccept = 1;
5041    yych = *(YYMARKER = ++YYCURSOR);
5042    if (yych != 'o') goto yy109;
5043    yyaccept = 1;
5044    yych = *(YYMARKER = ++YYCURSOR);
5045    if (yych != 'f') goto yy109;
5046    yyaccept = 53;
5047    yych = *(YYMARKER = ++YYCURSOR);
5048    if (yybm[256+yych] & 32) {
5049        goto yy108;
5050    }
5051    if (yych == '?') goto yy111;
5052    if (yych == '\\') goto yy110;
5053yy675:
5054#line 99 "cpp.re"
5055    { BOOST_WAVE_RET(T_SIZEOF); }
5056#line 5057 "cpp_re.inc"
5057yy676:
5058    yyaccept = 1;
5059    yych = *(YYMARKER = ++YYCURSOR);
5060    if (yych != 'e') goto yy109;
5061    yyaccept = 1;
5062    yych = *(YYMARKER = ++YYCURSOR);
5063    if (yych != 'd') goto yy109;
5064    yyaccept = 54;
5065    yych = *(YYMARKER = ++YYCURSOR);
5066    if (yybm[256+yych] & 32) {
5067        goto yy108;
5068    }
5069    if (yych == '?') goto yy111;
5070    if (yych == '\\') goto yy110;
5071yy679:
5072#line 98 "cpp.re"
5073    { BOOST_WAVE_RET(T_SIGNED); }
5074#line 5075 "cpp_re.inc"
5075yy680:
5076    yyaccept = 1;
5077    yych = *(YYMARKER = ++YYCURSOR);
5078    if (yych != 'r') goto yy109;
5079    yyaccept = 1;
5080    yych = *(YYMARKER = ++YYCURSOR);
5081    if (yych != 't') goto yy109;
5082    yyaccept = 55;
5083    yych = *(YYMARKER = ++YYCURSOR);
5084    if (yybm[256+yych] & 32) {
5085        goto yy108;
5086    }
5087    if (yych == '?') goto yy111;
5088    if (yych == '\\') goto yy110;
5089yy683:
5090#line 97 "cpp.re"
5091    { BOOST_WAVE_RET(T_SHORT); }
5092#line 5093 "cpp_re.inc"
5093yy684:
5094    yyaccept = 1;
5095    yych = *(YYMARKER = ++YYCURSOR);
5096    if (yych <= 'h') {
5097        if (yych != 'g') goto yy109;
5098    } else {
5099        if (yych <= 'i') goto yy686;
5100        if (yych == 't') goto yy687;
5101        goto yy109;
5102    }
5103    yyaccept = 1;
5104    yych = *(YYMARKER = ++YYCURSOR);
5105    if (yych == 'i') goto yy706;
5106    goto yy109;
5107yy686:
5108    yyaccept = 1;
5109    yych = *(YYMARKER = ++YYCURSOR);
5110    if (yych == 'n') goto yy692;
5111    goto yy109;
5112yy687:
5113    yyaccept = 1;
5114    yych = *(YYMARKER = ++YYCURSOR);
5115    if (yych != 'u') goto yy109;
5116    yyaccept = 1;
5117    yych = *(YYMARKER = ++YYCURSOR);
5118    if (yych != 'r') goto yy109;
5119    yyaccept = 1;
5120    yych = *(YYMARKER = ++YYCURSOR);
5121    if (yych != 'n') goto yy109;
5122    yyaccept = 56;
5123    yych = *(YYMARKER = ++YYCURSOR);
5124    if (yybm[256+yych] & 32) {
5125        goto yy108;
5126    }
5127    if (yych == '?') goto yy111;
5128    if (yych == '\\') goto yy110;
5129yy691:
5130#line 96 "cpp.re"
5131    { BOOST_WAVE_RET(T_RETURN); }
5132#line 5133 "cpp_re.inc"
5133yy692:
5134    yyaccept = 1;
5135    yych = *(YYMARKER = ++YYCURSOR);
5136    if (yych != 't') goto yy109;
5137    yyaccept = 1;
5138    yych = *(YYMARKER = ++YYCURSOR);
5139    if (yych != 'e') goto yy109;
5140    yyaccept = 1;
5141    yych = *(YYMARKER = ++YYCURSOR);
5142    if (yych != 'r') goto yy109;
5143    yyaccept = 1;
5144    yych = *(YYMARKER = ++YYCURSOR);
5145    if (yych != 'p') goto yy109;
5146    yyaccept = 1;
5147    yych = *(YYMARKER = ++YYCURSOR);
5148    if (yych != 'r') goto yy109;
5149    yyaccept = 1;
5150    yych = *(YYMARKER = ++YYCURSOR);
5151    if (yych != 'e') goto yy109;
5152    yyaccept = 1;
5153    yych = *(YYMARKER = ++YYCURSOR);
5154    if (yych != 't') goto yy109;
5155    yyaccept = 1;
5156    yych = *(YYMARKER = ++YYCURSOR);
5157    if (yych != '_') goto yy109;
5158    yyaccept = 1;
5159    yych = *(YYMARKER = ++YYCURSOR);
5160    if (yych != 'c') goto yy109;
5161    yyaccept = 1;
5162    yych = *(YYMARKER = ++YYCURSOR);
5163    if (yych != 'a') goto yy109;
5164    yyaccept = 1;
5165    yych = *(YYMARKER = ++YYCURSOR);
5166    if (yych != 's') goto yy109;
5167    yyaccept = 1;
5168    yych = *(YYMARKER = ++YYCURSOR);
5169    if (yych != 't') goto yy109;
5170    yyaccept = 57;
5171    yych = *(YYMARKER = ++YYCURSOR);
5172    if (yybm[256+yych] & 32) {
5173        goto yy108;
5174    }
5175    if (yych == '?') goto yy111;
5176    if (yych == '\\') goto yy110;
5177yy705:
5178#line 95 "cpp.re"
5179    { BOOST_WAVE_RET(T_REINTERPRETCAST); }
5180#line 5181 "cpp_re.inc"
5181yy706:
5182    yyaccept = 1;
5183    yych = *(YYMARKER = ++YYCURSOR);
5184    if (yych != 's') goto yy109;
5185    yyaccept = 1;
5186    yych = *(YYMARKER = ++YYCURSOR);
5187    if (yych != 't') goto yy109;
5188    yyaccept = 1;
5189    yych = *(YYMARKER = ++YYCURSOR);
5190    if (yych != 'e') goto yy109;
5191    yyaccept = 1;
5192    yych = *(YYMARKER = ++YYCURSOR);
5193    if (yych != 'r') goto yy109;
5194    yyaccept = 58;
5195    yych = *(YYMARKER = ++YYCURSOR);
5196    if (yybm[256+yych] & 32) {
5197        goto yy108;
5198    }
5199    if (yych == '?') goto yy111;
5200    if (yych == '\\') goto yy110;
5201yy711:
5202#line 94 "cpp.re"
5203    { BOOST_WAVE_RET(T_REGISTER); }
5204#line 5205 "cpp_re.inc"
5205yy712:
5206    yyaccept = 1;
5207    yych = *(YYMARKER = ++YYCURSOR);
5208    if (yych == 'i') goto yy719;
5209    if (yych == 'o') goto yy720;
5210    goto yy109;
5211yy713:
5212    yyaccept = 1;
5213    yych = *(YYMARKER = ++YYCURSOR);
5214    if (yych != 'b') goto yy109;
5215    yyaccept = 1;
5216    yych = *(YYMARKER = ++YYCURSOR);
5217    if (yych != 'l') goto yy109;
5218    yyaccept = 1;
5219    yych = *(YYMARKER = ++YYCURSOR);
5220    if (yych != 'i') goto yy109;
5221    yyaccept = 1;
5222    yych = *(YYMARKER = ++YYCURSOR);
5223    if (yych != 'c') goto yy109;
5224    yyaccept = 59;
5225    yych = *(YYMARKER = ++YYCURSOR);
5226    if (yybm[256+yych] & 32) {
5227        goto yy108;
5228    }
5229    if (yych == '?') goto yy111;
5230    if (yych == '\\') goto yy110;
5231yy718:
5232#line 93 "cpp.re"
5233    { BOOST_WAVE_RET(T_PUBLIC); }
5234#line 5235 "cpp_re.inc"
5235yy719:
5236    yyaccept = 1;
5237    yych = *(YYMARKER = ++YYCURSOR);
5238    if (yych == 'v') goto yy728;
5239    goto yy109;
5240yy720:
5241    yyaccept = 1;
5242    yych = *(YYMARKER = ++YYCURSOR);
5243    if (yych != 't') goto yy109;
5244    yyaccept = 1;
5245    yych = *(YYMARKER = ++YYCURSOR);
5246    if (yych != 'e') goto yy109;
5247    yyaccept = 1;
5248    yych = *(YYMARKER = ++YYCURSOR);
5249    if (yych != 'c') goto yy109;
5250    yyaccept = 1;
5251    yych = *(YYMARKER = ++YYCURSOR);
5252    if (yych != 't') goto yy109;
5253    yyaccept = 1;
5254    yych = *(YYMARKER = ++YYCURSOR);
5255    if (yych != 'e') goto yy109;
5256    yyaccept = 1;
5257    yych = *(YYMARKER = ++YYCURSOR);
5258    if (yych != 'd') goto yy109;
5259    yyaccept = 60;
5260    yych = *(YYMARKER = ++YYCURSOR);
5261    if (yybm[256+yych] & 32) {
5262        goto yy108;
5263    }
5264    if (yych == '?') goto yy111;
5265    if (yych == '\\') goto yy110;
5266yy727:
5267#line 92 "cpp.re"
5268    { BOOST_WAVE_RET(T_PROTECTED); }
5269#line 5270 "cpp_re.inc"
5270yy728:
5271    yyaccept = 1;
5272    yych = *(YYMARKER = ++YYCURSOR);
5273    if (yych != 'a') goto yy109;
5274    yyaccept = 1;
5275    yych = *(YYMARKER = ++YYCURSOR);
5276    if (yych != 't') goto yy109;
5277    yyaccept = 1;
5278    yych = *(YYMARKER = ++YYCURSOR);
5279    if (yych != 'e') goto yy109;
5280    yyaccept = 61;
5281    yych = *(YYMARKER = ++YYCURSOR);
5282    if (yybm[256+yych] & 32) {
5283        goto yy108;
5284    }
5285    if (yych == '?') goto yy111;
5286    if (yych == '\\') goto yy110;
5287yy732:
5288#line 91 "cpp.re"
5289    { BOOST_WAVE_RET(T_PRIVATE); }
5290#line 5291 "cpp_re.inc"
5291yy733:
5292    yyaccept = 1;
5293    yych = *(YYMARKER = ++YYCURSOR);
5294    if (yych == 'e') goto yy740;
5295    goto yy109;
5296yy734:
5297    yyaccept = 62;
5298    yych = *(YYMARKER = ++YYCURSOR);
5299    if (yych <= '@') {
5300        if (yych <= '/') {
5301            if (yych == '$') goto yy108;
5302        } else {
5303            if (yych <= '9') goto yy108;
5304            if (yych == '?') goto yy111;
5305        }
5306    } else {
5307        if (yych <= '^') {
5308            if (yych <= 'Z') goto yy108;
5309            if (yych == '\\') goto yy110;
5310        } else {
5311            if (yych <= '_') goto yy736;
5312            if (yych <= '`') goto yy735;
5313            if (yych <= 'z') goto yy108;
5314        }
5315    }
5316yy735:
5317#line 234 "cpp.re"
5318    { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_OROR_ALT); }
5319#line 5320 "cpp_re.inc"
5320yy736:
5321    yyaccept = 1;
5322    yych = *(YYMARKER = ++YYCURSOR);
5323    if (yych != 'e') goto yy109;
5324    yyaccept = 1;
5325    yych = *(YYMARKER = ++YYCURSOR);
5326    if (yych != 'q') goto yy109;
5327    yyaccept = 63;
5328    yych = *(YYMARKER = ++YYCURSOR);
5329    if (yybm[256+yych] & 32) {
5330        goto yy108;
5331    }
5332    if (yych == '?') goto yy111;
5333    if (yych == '\\') goto yy110;
5334yy739:
5335#line 218 "cpp.re"
5336    { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_ORASSIGN_ALT); }
5337#line 5338 "cpp_re.inc"
5338yy740:
5339    yyaccept = 1;
5340    yych = *(YYMARKER = ++YYCURSOR);
5341    if (yych != 'r') goto yy109;
5342    yyaccept = 1;
5343    yych = *(YYMARKER = ++YYCURSOR);
5344    if (yych != 'a') goto yy109;
5345    yyaccept = 1;
5346    yych = *(YYMARKER = ++YYCURSOR);
5347    if (yych != 't') goto yy109;
5348    yyaccept = 1;
5349    yych = *(YYMARKER = ++YYCURSOR);
5350    if (yych != 'o') goto yy109;
5351    yyaccept = 1;
5352    yych = *(YYMARKER = ++YYCURSOR);
5353    if (yych != 'r') goto yy109;
5354    yyaccept = 64;
5355    yych = *(YYMARKER = ++YYCURSOR);
5356    if (yybm[256+yych] & 32) {
5357        goto yy108;
5358    }
5359    if (yych == '?') goto yy111;
5360    if (yych == '\\') goto yy110;
5361yy746:
5362#line 90 "cpp.re"
5363    { BOOST_WAVE_RET(T_OPERATOR); }
5364#line 5365 "cpp_re.inc"
5365yy747:
5366    yyaccept = 1;
5367    yych = *(YYMARKER = ++YYCURSOR);
5368    if (yych == 'm') goto yy772;
5369    goto yy109;
5370yy748:
5371    yyaccept = 1;
5372    yych = *(YYMARKER = ++YYCURSOR);
5373    if (yych == 'w') goto yy770;
5374    goto yy109;
5375yy749:
5376    yyaccept = 1;
5377    yych = *(YYMARKER = ++YYCURSOR);
5378    if (yych == 'e') goto yy757;
5379    if (yych == 't') goto yy758;
5380    goto yy109;
5381yy750:
5382    yyaccept = 1;
5383    yych = *(YYMARKER = ++YYCURSOR);
5384    if (yych != 'l') goto yy109;
5385    yyaccept = 1;
5386    yych = *(YYMARKER = ++YYCURSOR);
5387    if (yych != 'l') goto yy109;
5388    yyaccept = 1;
5389    yych = *(YYMARKER = ++YYCURSOR);
5390    if (yych != 'p') goto yy109;
5391    yyaccept = 1;
5392    yych = *(YYMARKER = ++YYCURSOR);
5393    if (yych != 't') goto yy109;
5394    yyaccept = 1;
5395    yych = *(YYMARKER = ++YYCURSOR);
5396    if (yych != 'r') goto yy109;
5397    yyaccept = 65;
5398    yych = *(YYMARKER = ++YYCURSOR);
5399    if (yybm[256+yych] & 32) {
5400        goto yy108;
5401    }
5402    if (yych == '?') goto yy111;
5403    if (yych == '\\') goto yy110;
5404yy756:
5405#line 89 "cpp.re"
5406    { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_NULLPTR : T_IDENTIFIER); }
5407#line 5408 "cpp_re.inc"
5408yy757:
5409    yyaccept = 1;
5410    yych = *(YYMARKER = ++YYCURSOR);
5411    if (yych == 'x') goto yy764;
5412    goto yy109;
5413yy758:
5414    yyaccept = 66;
5415    yych = *(YYMARKER = ++YYCURSOR);
5416    if (yych <= '@') {
5417        if (yych <= '/') {
5418            if (yych == '$') goto yy108;
5419        } else {
5420            if (yych <= '9') goto yy108;
5421            if (yych == '?') goto yy111;
5422        }
5423    } else {
5424        if (yych <= '^') {
5425            if (yych <= 'Z') goto yy108;
5426            if (yych == '\\') goto yy110;
5427        } else {
5428            if (yych <= '_') goto yy760;
5429            if (yych <= '`') goto yy759;
5430            if (yych <= 'z') goto yy108;
5431        }
5432    }
5433yy759:
5434#line 203 "cpp.re"
5435    { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_NOT_ALT); }
5436#line 5437 "cpp_re.inc"
5437yy760:
5438    yyaccept = 1;
5439    yych = *(YYMARKER = ++YYCURSOR);
5440    if (yych != 'e') goto yy109;
5441    yyaccept = 1;
5442    yych = *(YYMARKER = ++YYCURSOR);
5443    if (yych != 'q') goto yy109;
5444    yyaccept = 67;
5445    yych = *(YYMARKER = ++YYCURSOR);
5446    if (yybm[256+yych] & 32) {
5447        goto yy108;
5448    }
5449    if (yych == '?') goto yy111;
5450    if (yych == '\\') goto yy110;
5451yy763:
5452#line 226 "cpp.re"
5453    { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_NOTEQUAL_ALT); }
5454#line 5455 "cpp_re.inc"
5455yy764:
5456    yyaccept = 1;
5457    yych = *(YYMARKER = ++YYCURSOR);
5458    if (yych != 'c') goto yy109;
5459    yyaccept = 1;
5460    yych = *(YYMARKER = ++YYCURSOR);
5461    if (yych != 'e') goto yy109;
5462    yyaccept = 1;
5463    yych = *(YYMARKER = ++YYCURSOR);
5464    if (yych != 'p') goto yy109;
5465    yyaccept = 1;
5466    yych = *(YYMARKER = ++YYCURSOR);
5467    if (yych != 't') goto yy109;
5468    yyaccept = 68;
5469    yych = *(YYMARKER = ++YYCURSOR);
5470    if (yybm[256+yych] & 32) {
5471        goto yy108;
5472    }
5473    if (yych == '?') goto yy111;
5474    if (yych == '\\') goto yy110;
5475yy769:
5476#line 88 "cpp.re"
5477    { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_NOEXCEPT : T_IDENTIFIER); }
5478#line 5479 "cpp_re.inc"
5479yy770:
5480    yyaccept = 69;
5481    yych = *(YYMARKER = ++YYCURSOR);
5482    if (yybm[256+yych] & 32) {
5483        goto yy108;
5484    }
5485    if (yych == '?') goto yy111;
5486    if (yych == '\\') goto yy110;
5487yy771:
5488#line 87 "cpp.re"
5489    { BOOST_WAVE_RET(T_NEW); }
5490#line 5491 "cpp_re.inc"
5491yy772:
5492    yyaccept = 1;
5493    yych = *(YYMARKER = ++YYCURSOR);
5494    if (yych != 'e') goto yy109;
5495    yyaccept = 1;
5496    yych = *(YYMARKER = ++YYCURSOR);
5497    if (yych != 's') goto yy109;
5498    yyaccept = 1;
5499    yych = *(YYMARKER = ++YYCURSOR);
5500    if (yych != 'p') goto yy109;
5501    yyaccept = 1;
5502    yych = *(YYMARKER = ++YYCURSOR);
5503    if (yych != 'a') goto yy109;
5504    yyaccept = 1;
5505    yych = *(YYMARKER = ++YYCURSOR);
5506    if (yych != 'c') goto yy109;
5507    yyaccept = 1;
5508    yych = *(YYMARKER = ++YYCURSOR);
5509    if (yych != 'e') goto yy109;
5510    yyaccept = 70;
5511    yych = *(YYMARKER = ++YYCURSOR);
5512    if (yybm[256+yych] & 32) {
5513        goto yy108;
5514    }
5515    if (yych == '?') goto yy111;
5516    if (yych == '\\') goto yy110;
5517yy779:
5518#line 86 "cpp.re"
5519    { BOOST_WAVE_RET(T_NAMESPACE); }
5520#line 5521 "cpp_re.inc"
5521yy780:
5522    yyaccept = 1;
5523    yych = *(YYMARKER = ++YYCURSOR);
5524    if (yych != 't') goto yy109;
5525    yyaccept = 1;
5526    yych = *(YYMARKER = ++YYCURSOR);
5527    if (yych != 'a') goto yy109;
5528    yyaccept = 1;
5529    yych = *(YYMARKER = ++YYCURSOR);
5530    if (yych != 'b') goto yy109;
5531    yyaccept = 1;
5532    yych = *(YYMARKER = ++YYCURSOR);
5533    if (yych != 'l') goto yy109;
5534    yyaccept = 1;
5535    yych = *(YYMARKER = ++YYCURSOR);
5536    if (yych != 'e') goto yy109;
5537    yyaccept = 71;
5538    yych = *(YYMARKER = ++YYCURSOR);
5539    if (yybm[256+yych] & 32) {
5540        goto yy108;
5541    }
5542    if (yych == '?') goto yy111;
5543    if (yych == '\\') goto yy110;
5544yy786:
5545#line 85 "cpp.re"
5546    { BOOST_WAVE_RET(T_MUTABLE); }
5547#line 5548 "cpp_re.inc"
5548yy787:
5549    yyaccept = 1;
5550    yych = *(YYMARKER = ++YYCURSOR);
5551    if (yych != 'n') goto yy109;
5552    yyaccept = 1;
5553    yych = *(YYMARKER = ++YYCURSOR);
5554    if (yych != 'g') goto yy109;
5555    yyaccept = 72;
5556    yych = *(YYMARKER = ++YYCURSOR);
5557    if (yybm[256+yych] & 32) {
5558        goto yy108;
5559    }
5560    if (yych == '?') goto yy111;
5561    if (yych == '\\') goto yy110;
5562yy790:
5563#line 84 "cpp.re"
5564    { BOOST_WAVE_RET(T_LONG); }
5565#line 5566 "cpp_re.inc"
5566yy791:
5567    yyaccept = 73;
5568    yych = *(YYMARKER = ++YYCURSOR);
5569    if (yybm[256+yych] & 32) {
5570        goto yy108;
5571    }
5572    if (yych == '?') goto yy111;
5573    if (yych == '\\') goto yy110;
5574yy792:
5575#line 80 "cpp.re"
5576    { BOOST_WAVE_RET(T_IF); }
5577#line 5578 "cpp_re.inc"
5578yy793:
5579    yyaccept = 1;
5580    yych = *(YYMARKER = ++YYCURSOR);
5581    if (yych == 'p') goto yy802;
5582    goto yy109;
5583yy794:
5584    yyaccept = 1;
5585    yych = *(YYMARKER = ++YYCURSOR);
5586    if (yych == 'l') goto yy795;
5587    if (yych == 't') goto yy796;
5588    goto yy109;
5589yy795:
5590    yyaccept = 1;
5591    yych = *(YYMARKER = ++YYCURSOR);
5592    if (yych == 'i') goto yy798;
5593    goto yy109;
5594yy796:
5595    yyaccept = 74;
5596    yych = *(YYMARKER = ++YYCURSOR);
5597    if (yybm[256+yych] & 32) {
5598        goto yy108;
5599    }
5600    if (yych == '?') goto yy111;
5601    if (yych == '\\') goto yy110;
5602yy797:
5603#line 83 "cpp.re"
5604    { BOOST_WAVE_RET(T_INT); }
5605#line 5606 "cpp_re.inc"
5606yy798:
5607    yyaccept = 1;
5608    yych = *(YYMARKER = ++YYCURSOR);
5609    if (yych != 'n') goto yy109;
5610    yyaccept = 1;
5611    yych = *(YYMARKER = ++YYCURSOR);
5612    if (yych != 'e') goto yy109;
5613    yyaccept = 75;
5614    yych = *(YYMARKER = ++YYCURSOR);
5615    if (yybm[256+yych] & 32) {
5616        goto yy108;
5617    }
5618    if (yych == '?') goto yy111;
5619    if (yych == '\\') goto yy110;
5620yy801:
5621#line 82 "cpp.re"
5622    { BOOST_WAVE_RET(T_INLINE); }
5623#line 5624 "cpp_re.inc"
5624yy802:
5625    yyaccept = 1;
5626    yych = *(YYMARKER = ++YYCURSOR);
5627    if (yych != 'o') goto yy109;
5628    yyaccept = 1;
5629    yych = *(YYMARKER = ++YYCURSOR);
5630    if (yych != 'r') goto yy109;
5631    yyaccept = 1;
5632    yych = *(YYMARKER = ++YYCURSOR);
5633    if (yych != 't') goto yy109;
5634    yyaccept = 76;
5635    yych = *(YYMARKER = ++YYCURSOR);
5636    if (yybm[256+yych] & 32) {
5637        goto yy108;
5638    }
5639    if (yych == '?') goto yy111;
5640    if (yych == '\\') goto yy110;
5641yy806:
5642#line 81 "cpp.re"
5643    { BOOST_WAVE_RET(s->enable_import_keyword ? T_IMPORT : T_IDENTIFIER); }
5644#line 5645 "cpp_re.inc"
5645yy807:
5646    yyaccept = 1;
5647    yych = *(YYMARKER = ++YYCURSOR);
5648    if (yych != 't') goto yy109;
5649    yyaccept = 1;
5650    yych = *(YYMARKER = ++YYCURSOR);
5651    if (yych != 'o') goto yy109;
5652    yyaccept = 77;
5653    yych = *(YYMARKER = ++YYCURSOR);
5654    if (yybm[256+yych] & 32) {
5655        goto yy108;
5656    }
5657    if (yych == '?') goto yy111;
5658    if (yych == '\\') goto yy110;
5659yy810:
5660#line 79 "cpp.re"
5661    { BOOST_WAVE_RET(T_GOTO); }
5662#line 5663 "cpp_re.inc"
5663yy811:
5664    yyaccept = 1;
5665    yych = *(YYMARKER = ++YYCURSOR);
5666    if (yych == 'l') goto yy826;
5667    goto yy109;
5668yy812:
5669    yyaccept = 1;
5670    yych = *(YYMARKER = ++YYCURSOR);
5671    if (yych == 'o') goto yy822;
5672    goto yy109;
5673yy813:
5674    yyaccept = 1;
5675    yych = *(YYMARKER = ++YYCURSOR);
5676    if (yych == 'r') goto yy820;
5677    goto yy109;
5678yy814:
5679    yyaccept = 1;
5680    yych = *(YYMARKER = ++YYCURSOR);
5681    if (yych != 'i') goto yy109;
5682    yyaccept = 1;
5683    yych = *(YYMARKER = ++YYCURSOR);
5684    if (yych != 'e') goto yy109;
5685    yyaccept = 1;
5686    yych = *(YYMARKER = ++YYCURSOR);
5687    if (yych != 'n') goto yy109;
5688    yyaccept = 1;
5689    yych = *(YYMARKER = ++YYCURSOR);
5690    if (yych != 'd') goto yy109;
5691    yyaccept = 78;
5692    yych = *(YYMARKER = ++YYCURSOR);
5693    if (yybm[256+yych] & 32) {
5694        goto yy108;
5695    }
5696    if (yych == '?') goto yy111;
5697    if (yych == '\\') goto yy110;
5698yy819:
5699#line 78 "cpp.re"
5700    { BOOST_WAVE_RET(T_FRIEND); }
5701#line 5702 "cpp_re.inc"
5702yy820:
5703    yyaccept = 79;
5704    yych = *(YYMARKER = ++YYCURSOR);
5705    if (yybm[256+yych] & 32) {
5706        goto yy108;
5707    }
5708    if (yych == '?') goto yy111;
5709    if (yych == '\\') goto yy110;
5710yy821:
5711#line 77 "cpp.re"
5712    { BOOST_WAVE_RET(T_FOR); }
5713#line 5714 "cpp_re.inc"
5714yy822:
5715    yyaccept = 1;
5716    yych = *(YYMARKER = ++YYCURSOR);
5717    if (yych != 'a') goto yy109;
5718    yyaccept = 1;
5719    yych = *(YYMARKER = ++YYCURSOR);
5720    if (yych != 't') goto yy109;
5721    yyaccept = 80;
5722    yych = *(YYMARKER = ++YYCURSOR);
5723    if (yybm[256+yych] & 32) {
5724        goto yy108;
5725    }
5726    if (yych == '?') goto yy111;
5727    if (yych == '\\') goto yy110;
5728yy825:
5729#line 76 "cpp.re"
5730    { BOOST_WAVE_RET(T_FLOAT); }
5731#line 5732 "cpp_re.inc"
5732yy826:
5733    yyaccept = 1;
5734    yych = *(YYMARKER = ++YYCURSOR);
5735    if (yych != 's') goto yy109;
5736    yyaccept = 1;
5737    yych = *(YYMARKER = ++YYCURSOR);
5738    if (yych != 'e') goto yy109;
5739    yyaccept = 81;
5740    yych = *(YYMARKER = ++YYCURSOR);
5741    if (yybm[256+yych] & 32) {
5742        goto yy108;
5743    }
5744    if (yych == '?') goto yy111;
5745    if (yych == '\\') goto yy110;
5746yy829:
5747#line 75 "cpp.re"
5748    { BOOST_WAVE_RET(T_FALSE); }
5749#line 5750 "cpp_re.inc"
5750yy830:
5751    yyaccept = 1;
5752    yych = *(YYMARKER = ++YYCURSOR);
5753    if (yych == 's') goto yy852;
5754    goto yy109;
5755yy831:
5756    yyaccept = 1;
5757    yych = *(YYMARKER = ++YYCURSOR);
5758    if (yych == 'u') goto yy849;
5759    goto yy109;
5760yy832:
5761    yyaccept = 1;
5762    yych = *(YYMARKER = ++YYCURSOR);
5763    if (yych == 'p') goto yy833;
5764    if (yych == 't') goto yy834;
5765    goto yy109;
5766yy833:
5767    yyaccept = 1;
5768    yych = *(YYMARKER = ++YYCURSOR);
5769    if (yych == 'l') goto yy839;
5770    if (yych == 'o') goto yy840;
5771    goto yy109;
5772yy834:
5773    yyaccept = 1;
5774    yych = *(YYMARKER = ++YYCURSOR);
5775    if (yych != 'e') goto yy109;
5776    yyaccept = 1;
5777    yych = *(YYMARKER = ++YYCURSOR);
5778    if (yych != 'r') goto yy109;
5779    yyaccept = 1;
5780    yych = *(YYMARKER = ++YYCURSOR);
5781    if (yych != 'n') goto yy109;
5782    yyaccept = 82;
5783    yych = *(YYMARKER = ++YYCURSOR);
5784    if (yybm[256+yych] & 32) {
5785        goto yy108;
5786    }
5787    if (yych == '?') goto yy111;
5788    if (yych == '\\') goto yy110;
5789yy838:
5790#line 74 "cpp.re"
5791    { BOOST_WAVE_RET(T_EXTERN); }
5792#line 5793 "cpp_re.inc"
5793yy839:
5794    yyaccept = 1;
5795    yych = *(YYMARKER = ++YYCURSOR);
5796    if (yych == 'i') goto yy844;
5797    goto yy109;
5798yy840:
5799    yyaccept = 1;
5800    yych = *(YYMARKER = ++YYCURSOR);
5801    if (yych != 'r') goto yy109;
5802    yyaccept = 1;
5803    yych = *(YYMARKER = ++YYCURSOR);
5804    if (yych != 't') goto yy109;
5805    yyaccept = 83;
5806    yych = *(YYMARKER = ++YYCURSOR);
5807    if (yybm[256+yych] & 32) {
5808        goto yy108;
5809    }
5810    if (yych == '?') goto yy111;
5811    if (yych == '\\') goto yy110;
5812yy843:
5813#line 73 "cpp.re"
5814    { BOOST_WAVE_RET(T_EXPORT); }
5815#line 5816 "cpp_re.inc"
5816yy844:
5817    yyaccept = 1;
5818    yych = *(YYMARKER = ++YYCURSOR);
5819    if (yych != 'c') goto yy109;
5820    yyaccept = 1;
5821    yych = *(YYMARKER = ++YYCURSOR);
5822    if (yych != 'i') goto yy109;
5823    yyaccept = 1;
5824    yych = *(YYMARKER = ++YYCURSOR);
5825    if (yych != 't') goto yy109;
5826    yyaccept = 84;
5827    yych = *(YYMARKER = ++YYCURSOR);
5828    if (yybm[256+yych] & 32) {
5829        goto yy108;
5830    }
5831    if (yych == '?') goto yy111;
5832    if (yych == '\\') goto yy110;
5833yy848:
5834#line 72 "cpp.re"
5835    { BOOST_WAVE_RET(T_EXPLICIT); }
5836#line 5837 "cpp_re.inc"
5837yy849:
5838    yyaccept = 1;
5839    yych = *(YYMARKER = ++YYCURSOR);
5840    if (yych != 'm') goto yy109;
5841    yyaccept = 85;
5842    yych = *(YYMARKER = ++YYCURSOR);
5843    if (yybm[256+yych] & 32) {
5844        goto yy108;
5845    }
5846    if (yych == '?') goto yy111;
5847    if (yych == '\\') goto yy110;
5848yy851:
5849#line 71 "cpp.re"
5850    { BOOST_WAVE_RET(T_ENUM); }
5851#line 5852 "cpp_re.inc"
5852yy852:
5853    yyaccept = 1;
5854    yych = *(YYMARKER = ++YYCURSOR);
5855    if (yych != 'e') goto yy109;
5856    yyaccept = 86;
5857    yych = *(YYMARKER = ++YYCURSOR);
5858    if (yybm[256+yych] & 32) {
5859        goto yy108;
5860    }
5861    if (yych == '?') goto yy111;
5862    if (yych == '\\') goto yy110;
5863yy854:
5864#line 70 "cpp.re"
5865    { BOOST_WAVE_RET(T_ELSE); }
5866#line 5867 "cpp_re.inc"
5867yy855:
5868    yyaccept = 1;
5869    yych = *(YYMARKER = ++YYCURSOR);
5870    if (yych <= 'e') {
5871        if (yych == 'c') goto yy875;
5872        goto yy109;
5873    } else {
5874        if (yych <= 'f') goto yy876;
5875        if (yych == 'l') goto yy877;
5876        goto yy109;
5877    }
5878yy856:
5879    yyaccept = 87;
5880    yych = *(YYMARKER = ++YYCURSOR);
5881    if (yych <= 'Z') {
5882        if (yych <= '9') {
5883            if (yych == '$') goto yy108;
5884            if (yych >= '0') goto yy108;
5885        } else {
5886            if (yych == '?') goto yy111;
5887            if (yych >= 'A') goto yy108;
5888        }
5889    } else {
5890        if (yych <= '_') {
5891            if (yych == '\\') goto yy110;
5892            if (yych >= '_') goto yy108;
5893        } else {
5894            if (yych <= 't') {
5895                if (yych >= 'a') goto yy108;
5896            } else {
5897                if (yych <= 'u') goto yy870;
5898                if (yych <= 'z') goto yy108;
5899            }
5900        }
5901    }
5902yy857:
5903#line 67 "cpp.re"
5904    { BOOST_WAVE_RET(T_DO); }
5905#line 5906 "cpp_re.inc"
5906yy858:
5907    yyaccept = 1;
5908    yych = *(YYMARKER = ++YYCURSOR);
5909    if (yych != 'n') goto yy109;
5910    yyaccept = 1;
5911    yych = *(YYMARKER = ++YYCURSOR);
5912    if (yych != 'a') goto yy109;
5913    yyaccept = 1;
5914    yych = *(YYMARKER = ++YYCURSOR);
5915    if (yych != 'm') goto yy109;
5916    yyaccept = 1;
5917    yych = *(YYMARKER = ++YYCURSOR);
5918    if (yych != 'i') goto yy109;
5919    yyaccept = 1;
5920    yych = *(YYMARKER = ++YYCURSOR);
5921    if (yych != 'c') goto yy109;
5922    yyaccept = 1;
5923    yych = *(YYMARKER = ++YYCURSOR);
5924    if (yych != '_') goto yy109;
5925    yyaccept = 1;
5926    yych = *(YYMARKER = ++YYCURSOR);
5927    if (yych != 'c') goto yy109;
5928    yyaccept = 1;
5929    yych = *(YYMARKER = ++YYCURSOR);
5930    if (yych != 'a') goto yy109;
5931    yyaccept = 1;
5932    yych = *(YYMARKER = ++YYCURSOR);
5933    if (yych != 's') goto yy109;
5934    yyaccept = 1;
5935    yych = *(YYMARKER = ++YYCURSOR);
5936    if (yych != 't') goto yy109;
5937    yyaccept = 88;
5938    yych = *(YYMARKER = ++YYCURSOR);
5939    if (yybm[256+yych] & 32) {
5940        goto yy108;
5941    }
5942    if (yych == '?') goto yy111;
5943    if (yych == '\\') goto yy110;
5944yy869:
5945#line 69 "cpp.re"
5946    { BOOST_WAVE_RET(T_DYNAMICCAST); }
5947#line 5948 "cpp_re.inc"
5948yy870:
5949    yyaccept = 1;
5950    yych = *(YYMARKER = ++YYCURSOR);
5951    if (yych != 'b') goto yy109;
5952    yyaccept = 1;
5953    yych = *(YYMARKER = ++YYCURSOR);
5954    if (yych != 'l') goto yy109;
5955    yyaccept = 1;
5956    yych = *(YYMARKER = ++YYCURSOR);
5957    if (yych != 'e') goto yy109;
5958    yyaccept = 89;
5959    yych = *(YYMARKER = ++YYCURSOR);
5960    if (yybm[256+yych] & 32) {
5961        goto yy108;
5962    }
5963    if (yych == '?') goto yy111;
5964    if (yych == '\\') goto yy110;
5965yy874:
5966#line 68 "cpp.re"
5967    { BOOST_WAVE_RET(T_DOUBLE); }
5968#line 5969 "cpp_re.inc"
5969yy875:
5970    yyaccept = 1;
5971    yych = *(YYMARKER = ++YYCURSOR);
5972    if (yych == 'l') goto yy887;
5973    goto yy109;
5974yy876:
5975    yyaccept = 1;
5976    yych = *(YYMARKER = ++YYCURSOR);
5977    if (yych == 'a') goto yy882;
5978    goto yy109;
5979yy877:
5980    yyaccept = 1;
5981    yych = *(YYMARKER = ++YYCURSOR);
5982    if (yych != 'e') goto yy109;
5983    yyaccept = 1;
5984    yych = *(YYMARKER = ++YYCURSOR);
5985    if (yych != 't') goto yy109;
5986    yyaccept = 1;
5987    yych = *(YYMARKER = ++YYCURSOR);
5988    if (yych != 'e') goto yy109;
5989    yyaccept = 90;
5990    yych = *(YYMARKER = ++YYCURSOR);
5991    if (yybm[256+yych] & 32) {
5992        goto yy108;
5993    }
5994    if (yych == '?') goto yy111;
5995    if (yych == '\\') goto yy110;
5996yy881:
5997#line 66 "cpp.re"
5998    { BOOST_WAVE_RET(T_DELETE); }
5999#line 6000 "cpp_re.inc"
6000yy882:
6001    yyaccept = 1;
6002    yych = *(YYMARKER = ++YYCURSOR);
6003    if (yych != 'u') goto yy109;
6004    yyaccept = 1;
6005    yych = *(YYMARKER = ++YYCURSOR);
6006    if (yych != 'l') goto yy109;
6007    yyaccept = 1;
6008    yych = *(YYMARKER = ++YYCURSOR);
6009    if (yych != 't') goto yy109;
6010    yyaccept = 91;
6011    yych = *(YYMARKER = ++YYCURSOR);
6012    if (yybm[256+yych] & 32) {
6013        goto yy108;
6014    }
6015    if (yych == '?') goto yy111;
6016    if (yych == '\\') goto yy110;
6017yy886:
6018#line 65 "cpp.re"
6019    { BOOST_WAVE_RET(T_DEFAULT); }
6020#line 6021 "cpp_re.inc"
6021yy887:
6022    yyaccept = 1;
6023    yych = *(YYMARKER = ++YYCURSOR);
6024    if (yych != 't') goto yy109;
6025    yyaccept = 1;
6026    yych = *(YYMARKER = ++YYCURSOR);
6027    if (yych != 'y') goto yy109;
6028    yyaccept = 1;
6029    yych = *(YYMARKER = ++YYCURSOR);
6030    if (yych != 'p') goto yy109;
6031    yyaccept = 1;
6032    yych = *(YYMARKER = ++YYCURSOR);
6033    if (yych != 'e') goto yy109;
6034    yyaccept = 92;
6035    yych = *(YYMARKER = ++YYCURSOR);
6036    if (yybm[256+yych] & 32) {
6037        goto yy108;
6038    }
6039    if (yych == '?') goto yy111;
6040    if (yych == '\\') goto yy110;
6041yy892:
6042#line 64 "cpp.re"
6043    { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_DECLTYPE : T_IDENTIFIER); }
6044#line 6045 "cpp_re.inc"
6045yy893:
6046    yyaccept = 1;
6047    yych = *(YYMARKER = ++YYCURSOR);
6048    if (yych <= 'r') goto yy109;
6049    if (yych <= 's') goto yy939;
6050    if (yych <= 't') goto yy940;
6051    goto yy109;
6052yy894:
6053    yyaccept = 1;
6054    yych = *(YYMARKER = ++YYCURSOR);
6055    if (yych == 'a') goto yy926;
6056    goto yy109;
6057yy895:
6058    yyaccept = 1;
6059    yych = *(YYMARKER = ++YYCURSOR);
6060    if (yych == 'a') goto yy922;
6061    goto yy109;
6062yy896:
6063    yyaccept = 1;
6064    yych = *(YYMARKER = ++YYCURSOR);
6065    if (yych <= 'l') goto yy109;
6066    if (yych <= 'm') goto yy898;
6067    if (yych >= 'o') goto yy109;
6068    yyaccept = 1;
6069    yych = *(YYMARKER = ++YYCURSOR);
6070    if (yych <= 'r') goto yy109;
6071    if (yych <= 's') goto yy902;
6072    if (yych <= 't') goto yy903;
6073    goto yy109;
6074yy898:
6075    yyaccept = 1;
6076    yych = *(YYMARKER = ++YYCURSOR);
6077    if (yych != 'p') goto yy109;
6078    yyaccept = 1;
6079    yych = *(YYMARKER = ++YYCURSOR);
6080    if (yych != 'l') goto yy109;
6081    yyaccept = 93;
6082    yych = *(YYMARKER = ++YYCURSOR);
6083    if (yybm[256+yych] & 32) {
6084        goto yy108;
6085    }
6086    if (yych == '?') goto yy111;
6087    if (yych == '\\') goto yy110;
6088yy901:
6089#line 201 "cpp.re"
6090    { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_COMPL_ALT); }
6091#line 6092 "cpp_re.inc"
6092yy902:
6093    yyaccept = 1;
6094    yych = *(YYMARKER = ++YYCURSOR);
6095    if (yych == 't') goto yy909;
6096    goto yy109;
6097yy903:
6098    yyaccept = 1;
6099    yych = *(YYMARKER = ++YYCURSOR);
6100    if (yych != 'i') goto yy109;
6101    yyaccept = 1;
6102    yych = *(YYMARKER = ++YYCURSOR);
6103    if (yych != 'n') goto yy109;
6104    yyaccept = 1;
6105    yych = *(YYMARKER = ++YYCURSOR);
6106    if (yych != 'u') goto yy109;
6107    yyaccept = 1;
6108    yych = *(YYMARKER = ++YYCURSOR);
6109    if (yych != 'e') goto yy109;
6110    yyaccept = 94;
6111    yych = *(YYMARKER = ++YYCURSOR);
6112    if (yybm[256+yych] & 32) {
6113        goto yy108;
6114    }
6115    if (yych == '?') goto yy111;
6116    if (yych == '\\') goto yy110;
6117yy908:
6118#line 63 "cpp.re"
6119    { BOOST_WAVE_RET(T_CONTINUE); }
6120#line 6121 "cpp_re.inc"
6121yy909:
6122    yyaccept = 95;
6123    yych = *(YYMARKER = ++YYCURSOR);
6124    if (yych <= 'Z') {
6125        if (yych <= '9') {
6126            if (yych == '$') goto yy108;
6127            if (yych >= '0') goto yy108;
6128        } else {
6129            if (yych == '?') goto yy111;
6130            if (yych >= 'A') goto yy108;
6131        }
6132    } else {
6133        if (yych <= '_') {
6134            if (yych == '\\') goto yy110;
6135            if (yych >= '_') goto yy911;
6136        } else {
6137            if (yych <= 'd') {
6138                if (yych >= 'a') goto yy108;
6139            } else {
6140                if (yych <= 'e') goto yy912;
6141                if (yych <= 'z') goto yy108;
6142            }
6143        }
6144    }
6145yy910:
6146#line 60 "cpp.re"
6147    { BOOST_WAVE_RET(T_CONST); }
6148#line 6149 "cpp_re.inc"
6149yy911:
6150    yyaccept = 1;
6151    yych = *(YYMARKER = ++YYCURSOR);
6152    if (yych == 'c') goto yy917;
6153    goto yy109;
6154yy912:
6155    yyaccept = 1;
6156    yych = *(YYMARKER = ++YYCURSOR);
6157    if (yych != 'x') goto yy109;
6158    yyaccept = 1;
6159    yych = *(YYMARKER = ++YYCURSOR);
6160    if (yych != 'p') goto yy109;
6161    yyaccept = 1;
6162    yych = *(YYMARKER = ++YYCURSOR);
6163    if (yych != 'r') goto yy109;
6164    yyaccept = 96;
6165    yych = *(YYMARKER = ++YYCURSOR);
6166    if (yybm[256+yych] & 32) {
6167        goto yy108;
6168    }
6169    if (yych == '?') goto yy111;
6170    if (yych == '\\') goto yy110;
6171yy916:
6172#line 61 "cpp.re"
6173    { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_CONSTEXPR : T_IDENTIFIER); }
6174#line 6175 "cpp_re.inc"
6175yy917:
6176    yyaccept = 1;
6177    yych = *(YYMARKER = ++YYCURSOR);
6178    if (yych != 'a') goto yy109;
6179    yyaccept = 1;
6180    yych = *(YYMARKER = ++YYCURSOR);
6181    if (yych != 's') goto yy109;
6182    yyaccept = 1;
6183    yych = *(YYMARKER = ++YYCURSOR);
6184    if (yych != 't') goto yy109;
6185    yyaccept = 97;
6186    yych = *(YYMARKER = ++YYCURSOR);
6187    if (yybm[256+yych] & 32) {
6188        goto yy108;
6189    }
6190    if (yych == '?') goto yy111;
6191    if (yych == '\\') goto yy110;
6192yy921:
6193#line 62 "cpp.re"
6194    { BOOST_WAVE_RET(T_CONSTCAST); }
6195#line 6196 "cpp_re.inc"
6196yy922:
6197    yyaccept = 1;
6198    yych = *(YYMARKER = ++YYCURSOR);
6199    if (yych != 's') goto yy109;
6200    yyaccept = 1;
6201    yych = *(YYMARKER = ++YYCURSOR);
6202    if (yych != 's') goto yy109;
6203    yyaccept = 98;
6204    yych = *(YYMARKER = ++YYCURSOR);
6205    if (yybm[256+yych] & 32) {
6206        goto yy108;
6207    }
6208    if (yych == '?') goto yy111;
6209    if (yych == '\\') goto yy110;
6210yy925:
6211#line 59 "cpp.re"
6212    { BOOST_WAVE_RET(T_CLASS); }
6213#line 6214 "cpp_re.inc"
6214yy926:
6215    yyaccept = 1;
6216    yych = *(YYMARKER = ++YYCURSOR);
6217    if (yych != 'r') goto yy109;
6218    yyaccept = 99;
6219    yych = *(YYMARKER = ++YYCURSOR);
6220    if (yych <= '>') {
6221        if (yych <= '0') {
6222            if (yych == '$') goto yy108;
6223            if (yych >= '0') goto yy108;
6224        } else {
6225            if (yych <= '2') {
6226                if (yych <= '1') goto yy929;
6227                goto yy108;
6228            } else {
6229                if (yych <= '3') goto yy930;
6230                if (yych <= '9') goto yy108;
6231            }
6232        }
6233    } else {
6234        if (yych <= '\\') {
6235            if (yych <= '@') {
6236                if (yych <= '?') goto yy111;
6237            } else {
6238                if (yych <= 'Z') goto yy108;
6239                if (yych >= '\\') goto yy110;
6240            }
6241        } else {
6242            if (yych <= '_') {
6243                if (yych >= '_') goto yy108;
6244            } else {
6245                if (yych <= '`') goto yy928;
6246                if (yych <= 'z') goto yy108;
6247            }
6248        }
6249    }
6250yy928:
6251#line 56 "cpp.re"
6252    { BOOST_WAVE_RET(T_CHAR); }
6253#line 6254 "cpp_re.inc"
6254yy929:
6255    yyaccept = 1;
6256    yych = *(YYMARKER = ++YYCURSOR);
6257    if (yych == '6') goto yy935;
6258    goto yy109;
6259yy930:
6260    yyaccept = 1;
6261    yych = *(YYMARKER = ++YYCURSOR);
6262    if (yych != '2') goto yy109;
6263    yyaccept = 1;
6264    yych = *(YYMARKER = ++YYCURSOR);
6265    if (yych != '_') goto yy109;
6266    yyaccept = 1;
6267    yych = *(YYMARKER = ++YYCURSOR);
6268    if (yych != 't') goto yy109;
6269    yyaccept = 100;
6270    yych = *(YYMARKER = ++YYCURSOR);
6271    if (yybm[256+yych] & 32) {
6272        goto yy108;
6273    }
6274    if (yych == '?') goto yy111;
6275    if (yych == '\\') goto yy110;
6276yy934:
6277#line 58 "cpp.re"
6278    { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_CHAR32_T : T_IDENTIFIER); }
6279#line 6280 "cpp_re.inc"
6280yy935:
6281    yyaccept = 1;
6282    yych = *(YYMARKER = ++YYCURSOR);
6283    if (yych != '_') goto yy109;
6284    yyaccept = 1;
6285    yych = *(YYMARKER = ++YYCURSOR);
6286    if (yych != 't') goto yy109;
6287    yyaccept = 101;
6288    yych = *(YYMARKER = ++YYCURSOR);
6289    if (yybm[256+yych] & 32) {
6290        goto yy108;
6291    }
6292    if (yych == '?') goto yy111;
6293    if (yych == '\\') goto yy110;
6294yy938:
6295#line 57 "cpp.re"
6296    { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_CHAR16_T : T_IDENTIFIER); }
6297#line 6298 "cpp_re.inc"
6298yy939:
6299    yyaccept = 1;
6300    yych = *(YYMARKER = ++YYCURSOR);
6301    if (yych == 'e') goto yy944;
6302    goto yy109;
6303yy940:
6304    yyaccept = 1;
6305    yych = *(YYMARKER = ++YYCURSOR);
6306    if (yych != 'c') goto yy109;
6307    yyaccept = 1;
6308    yych = *(YYMARKER = ++YYCURSOR);
6309    if (yych != 'h') goto yy109;
6310    yyaccept = 102;
6311    yych = *(YYMARKER = ++YYCURSOR);
6312    if (yybm[256+yych] & 32) {
6313        goto yy108;
6314    }
6315    if (yych == '?') goto yy111;
6316    if (yych == '\\') goto yy110;
6317yy943:
6318#line 55 "cpp.re"
6319    { BOOST_WAVE_RET(T_CATCH); }
6320#line 6321 "cpp_re.inc"
6321yy944:
6322    yyaccept = 103;
6323    yych = *(YYMARKER = ++YYCURSOR);
6324    if (yybm[256+yych] & 32) {
6325        goto yy108;
6326    }
6327    if (yych == '?') goto yy111;
6328    if (yych == '\\') goto yy110;
6329yy945:
6330#line 54 "cpp.re"
6331    { BOOST_WAVE_RET(T_CASE); }
6332#line 6333 "cpp_re.inc"
6333yy946:
6334    yyaccept = 1;
6335    yych = *(YYMARKER = ++YYCURSOR);
6336    if (yych == 't') goto yy956;
6337    goto yy109;
6338yy947:
6339    yyaccept = 1;
6340    yych = *(YYMARKER = ++YYCURSOR);
6341    if (yych == 'o') goto yy953;
6342    goto yy109;
6343yy948:
6344    yyaccept = 1;
6345    yych = *(YYMARKER = ++YYCURSOR);
6346    if (yych != 'e') goto yy109;
6347    yyaccept = 1;
6348    yych = *(YYMARKER = ++YYCURSOR);
6349    if (yych != 'a') goto yy109;
6350    yyaccept = 1;
6351    yych = *(YYMARKER = ++YYCURSOR);
6352    if (yych != 'k') goto yy109;
6353    yyaccept = 104;
6354    yych = *(YYMARKER = ++YYCURSOR);
6355    if (yybm[256+yych] & 32) {
6356        goto yy108;
6357    }
6358    if (yych == '?') goto yy111;
6359    if (yych == '\\') goto yy110;
6360yy952:
6361#line 53 "cpp.re"
6362    { BOOST_WAVE_RET(T_BREAK); }
6363#line 6364 "cpp_re.inc"
6364yy953:
6365    yyaccept = 1;
6366    yych = *(YYMARKER = ++YYCURSOR);
6367    if (yych != 'l') goto yy109;
6368    yyaccept = 105;
6369    yych = *(YYMARKER = ++YYCURSOR);
6370    if (yybm[256+yych] & 32) {
6371        goto yy108;
6372    }
6373    if (yych == '?') goto yy111;
6374    if (yych == '\\') goto yy110;
6375yy955:
6376#line 52 "cpp.re"
6377    { BOOST_WAVE_RET(T_BOOL); }
6378#line 6379 "cpp_re.inc"
6379yy956:
6380    yyaccept = 1;
6381    yych = *(YYMARKER = ++YYCURSOR);
6382    if (yych == 'a') goto yy957;
6383    if (yych == 'o') goto yy958;
6384    goto yy109;
6385yy957:
6386    yyaccept = 1;
6387    yych = *(YYMARKER = ++YYCURSOR);
6388    if (yych == 'n') goto yy961;
6389    goto yy109;
6390yy958:
6391    yyaccept = 1;
6392    yych = *(YYMARKER = ++YYCURSOR);
6393    if (yych != 'r') goto yy109;
6394    yyaccept = 106;
6395    yych = *(YYMARKER = ++YYCURSOR);
6396    if (yybm[256+yych] & 32) {
6397        goto yy108;
6398    }
6399    if (yych == '?') goto yy111;
6400    if (yych == '\\') goto yy110;
6401yy960:
6402#line 197 "cpp.re"
6403    { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_OR_ALT); }
6404#line 6405 "cpp_re.inc"
6405yy961:
6406    yyaccept = 1;
6407    yych = *(YYMARKER = ++YYCURSOR);
6408    if (yych != 'd') goto yy109;
6409    yyaccept = 107;
6410    yych = *(YYMARKER = ++YYCURSOR);
6411    if (yybm[256+yych] & 32) {
6412        goto yy108;
6413    }
6414    if (yych == '?') goto yy111;
6415    if (yych == '\\') goto yy110;
6416yy963:
6417#line 195 "cpp.re"
6418    { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_AND_ALT); }
6419#line 6420 "cpp_re.inc"
6420yy964:
6421    yyaccept = 1;
6422    yych = *(YYMARKER = ++YYCURSOR);
6423    if (yych == 'i') goto yy979;
6424    goto yy109;
6425yy965:
6426    yyaccept = 1;
6427    yych = *(YYMARKER = ++YYCURSOR);
6428    if (yych == 'd') goto yy973;
6429    goto yy109;
6430yy966:
6431    yyaccept = 1;
6432    yych = *(YYMARKER = ++YYCURSOR);
6433    if (yych == 'm') goto yy971;
6434    goto yy109;
6435yy967:
6436    yyaccept = 1;
6437    yych = *(YYMARKER = ++YYCURSOR);
6438    if (yych != 't') goto yy109;
6439    yyaccept = 1;
6440    yych = *(YYMARKER = ++YYCURSOR);
6441    if (yych != 'o') goto yy109;
6442    yyaccept = 108;
6443    yych = *(YYMARKER = ++YYCURSOR);
6444    if (yybm[256+yych] & 32) {
6445        goto yy108;
6446    }
6447    if (yych == '?') goto yy111;
6448    if (yych == '\\') goto yy110;
6449yy970:
6450#line 51 "cpp.re"
6451    { BOOST_WAVE_RET(T_AUTO); }
6452#line 6453 "cpp_re.inc"
6453yy971:
6454    yyaccept = 109;
6455    yych = *(YYMARKER = ++YYCURSOR);
6456    if (yybm[256+yych] & 32) {
6457        goto yy108;
6458    }
6459    if (yych == '?') goto yy111;
6460    if (yych == '\\') goto yy110;
6461yy972:
6462#line 50 "cpp.re"
6463    { BOOST_WAVE_RET(T_ASM); }
6464#line 6465 "cpp_re.inc"
6465yy973:
6466    yyaccept = 110;
6467    yych = *(YYMARKER = ++YYCURSOR);
6468    if (yych <= '@') {
6469        if (yych <= '/') {
6470            if (yych == '$') goto yy108;
6471        } else {
6472            if (yych <= '9') goto yy108;
6473            if (yych == '?') goto yy111;
6474        }
6475    } else {
6476        if (yych <= '^') {
6477            if (yych <= 'Z') goto yy108;
6478            if (yych == '\\') goto yy110;
6479        } else {
6480            if (yych <= '_') goto yy975;
6481            if (yych <= '`') goto yy974;
6482            if (yych <= 'z') goto yy108;
6483        }
6484    }
6485yy974:
6486#line 230 "cpp.re"
6487    { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_ANDAND_ALT); }
6488#line 6489 "cpp_re.inc"
6489yy975:
6490    yyaccept = 1;
6491    yych = *(YYMARKER = ++YYCURSOR);
6492    if (yych != 'e') goto yy109;
6493    yyaccept = 1;
6494    yych = *(YYMARKER = ++YYCURSOR);
6495    if (yych != 'q') goto yy109;
6496    yyaccept = 111;
6497    yych = *(YYMARKER = ++YYCURSOR);
6498    if (yybm[256+yych] & 32) {
6499        goto yy108;
6500    }
6501    if (yych == '?') goto yy111;
6502    if (yych == '\\') goto yy110;
6503yy978:
6504#line 216 "cpp.re"
6505    { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_ANDASSIGN_ALT); }
6506#line 6507 "cpp_re.inc"
6507yy979:
6508    yyaccept = 1;
6509    yych = *(YYMARKER = ++YYCURSOR);
6510    if (yych != 'g') goto yy109;
6511    yyaccept = 1;
6512    yych = *(YYMARKER = ++YYCURSOR);
6513    if (yych != 'n') goto yy109;
6514    yyaccept = 1;
6515    yych = *(YYMARKER = ++YYCURSOR);
6516    if (yych == 'a') goto yy982;
6517    if (yych == 'o') goto yy983;
6518    goto yy109;
6519yy982:
6520    yyaccept = 1;
6521    yych = *(YYMARKER = ++YYCURSOR);
6522    if (yych == 's') goto yy986;
6523    goto yy109;
6524yy983:
6525    yyaccept = 1;
6526    yych = *(YYMARKER = ++YYCURSOR);
6527    if (yych != 'f') goto yy109;
6528    yyaccept = 112;
6529    yych = *(YYMARKER = ++YYCURSOR);
6530    if (yybm[256+yych] & 32) {
6531        goto yy108;
6532    }
6533    if (yych == '?') goto yy111;
6534    if (yych == '\\') goto yy110;
6535yy985:
6536#line 49 "cpp.re"
6537    { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_ALIGNOF : T_IDENTIFIER); }
6538#line 6539 "cpp_re.inc"
6539yy986:
6540    yyaccept = 113;
6541    yych = *(YYMARKER = ++YYCURSOR);
6542    if (yybm[256+yych] & 32) {
6543        goto yy108;
6544    }
6545    if (yych == '?') goto yy111;
6546    if (yych == '\\') goto yy110;
6547yy987:
6548#line 48 "cpp.re"
6549    { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_ALIGNAS : T_IDENTIFIER); }
6550#line 6551 "cpp_re.inc"
6551yy988:
6552    ++YYCURSOR;
6553#line 177 "cpp.re"
6554    {
6555            if (s->act_in_c99_mode) {
6556                --YYCURSOR;
6557                BOOST_WAVE_RET(T_DOT);
6558            }
6559            else {
6560                BOOST_WAVE_RET(T_DOTSTAR);
6561            }
6562        }
6563#line 6564 "cpp_re.inc"
6564yy990:
6565    yych = *++YYCURSOR;
6566    if (yych == '.') goto yy992;
6567    goto yy99;
6568yy991:
6569    yych = *++YYCURSOR;
6570    goto yy7;
6571yy992:
6572    ++YYCURSOR;
6573#line 163 "cpp.re"
6574    { BOOST_WAVE_RET(T_ELLIPSIS); }
6575#line 6576 "cpp_re.inc"
6576yy994:
6577    ++YYCURSOR;
6578#line 210 "cpp.re"
6579    { BOOST_WAVE_RET(T_DIVIDEASSIGN); }
6580#line 6581 "cpp_re.inc"
6581yy996:
6582    ++YYCURSOR;
6583#line 45 "cpp.re"
6584    { goto cppcomment; }
6585#line 6586 "cpp_re.inc"
6586yy998:
6587    ++YYCURSOR;
6588#line 44 "cpp.re"
6589    { goto ccomment; }
6590#line 6591 "cpp_re.inc"
6591}
6592#line 349 "cpp.re"
6593
6594
6595ccomment:
6596
6597#line 6598 "cpp_re.inc"
6598{
6599    YYCTYPE yych;
6600    if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
6601    yych = *YYCURSOR;
6602    if (yych <= '\f') {
6603        if (yych <= 0x08) {
6604            if (yych <= 0x00) goto yy1009;
6605            goto yy1011;
6606        } else {
6607            if (yych == '\n') goto yy1004;
6608            goto yy1007;
6609        }
6610    } else {
6611        if (yych <= 0x1F) {
6612            if (yych <= '\r') goto yy1006;
6613            goto yy1011;
6614        } else {
6615            if (yych != '*') goto yy1008;
6616        }
6617    }
6618    ++YYCURSOR;
6619    if ((yych = *YYCURSOR) == '/') goto yy1014;
6620yy1003:
6621#line 364 "cpp.re"
6622    { goto ccomment; }
6623#line 6624 "cpp_re.inc"
6624yy1004:
6625    ++YYCURSOR;
6626yy1005:
6627#line 356 "cpp.re"
6628    {
6629        /*if(cursor == s->eof) BOOST_WAVE_RET(T_EOF);*/
6630        /*s->tok = cursor; */
6631        s->line += count_backslash_newlines(s, cursor) +1;
6632        cursor.column = 1;
6633        goto ccomment;
6634    }
6635#line 6636 "cpp_re.inc"
6636yy1006:
6637    yych = *++YYCURSOR;
6638    if (yych == '\n') goto yy1013;
6639    goto yy1005;
6640yy1007:
6641    yych = *++YYCURSOR;
6642    goto yy1003;
6643yy1008:
6644    yych = *++YYCURSOR;
6645    goto yy1003;
6646yy1009:
6647    ++YYCURSOR;
6648#line 367 "cpp.re"
6649    {
6650        if(cursor == s->eof)
6651        {
6652            BOOST_WAVE_UPDATE_CURSOR();   // adjust the input cursor
6653            (*s->error_proc)(s, lexing_exception::generic_lexing_warning,
6654                "Unterminated 'C' style comment");
6655        }
6656        else
6657        {
6658            --YYCURSOR;                   // next call returns T_EOF
6659            BOOST_WAVE_UPDATE_CURSOR();   // adjust the input cursor
6660            (*s->error_proc)(s, lexing_exception::generic_lexing_error,
6661                "invalid character: '\\000' in input stream");
6662        }
6663    }
6664#line 6665 "cpp_re.inc"
6665yy1011:
6666    ++YYCURSOR;
6667#line 384 "cpp.re"
6668    {
6669        // flag the error
6670        BOOST_WAVE_UPDATE_CURSOR();     // adjust the input cursor
6671        (*s->error_proc)(s, lexing_exception::generic_lexing_error,
6672            "invalid character '\\%03o' in input stream", *--YYCURSOR);
6673    }
6674#line 6675 "cpp_re.inc"
6675yy1013:
6676    yych = *++YYCURSOR;
6677    goto yy1005;
6678yy1014:
6679    ++YYCURSOR;
6680#line 353 "cpp.re"
6681    { BOOST_WAVE_RET(T_CCOMMENT); }
6682#line 6683 "cpp_re.inc"
6683}
6684#line 390 "cpp.re"
6685
6686
6687cppcomment:
6688
6689#line 6690 "cpp_re.inc"
6690{
6691    YYCTYPE yych;
6692    if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
6693    yych = *YYCURSOR;
6694    if (yych <= '\n') {
6695        if (yych <= 0x00) goto yy1024;
6696        if (yych <= 0x08) goto yy1026;
6697        if (yych <= '\t') goto yy1021;
6698    } else {
6699        if (yych <= '\f') goto yy1021;
6700        if (yych <= '\r') goto yy1020;
6701        if (yych <= 0x1F) goto yy1026;
6702        goto yy1023;
6703    }
6704    ++YYCURSOR;
6705yy1019:
6706#line 395 "cpp.re"
6707    {
6708        /*if(cursor == s->eof) BOOST_WAVE_RET(T_EOF); */
6709        /*s->tok = cursor; */
6710        s->line++;
6711        cursor.column = 1;
6712        BOOST_WAVE_RET(T_CPPCOMMENT);
6713    }
6714#line 6715 "cpp_re.inc"
6715yy1020:
6716    yych = *++YYCURSOR;
6717    if (yych == '\n') goto yy1028;
6718    goto yy1019;
6719yy1021:
6720    ++YYCURSOR;
6721yy1022:
6722#line 403 "cpp.re"
6723    { goto cppcomment; }
6724#line 6725 "cpp_re.inc"
6725yy1023:
6726    yych = *++YYCURSOR;
6727    goto yy1022;
6728yy1024:
6729    ++YYCURSOR;
6730#line 406 "cpp.re"
6731    {
6732        if (s->eof && cursor != s->eof)
6733        {
6734            --YYCURSOR;                     // next call returns T_EOF
6735            BOOST_WAVE_UPDATE_CURSOR();     // adjust the input cursor
6736            (*s->error_proc)(s, lexing_exception::generic_lexing_error,
6737                "invalid character '\\000' in input stream");
6738        }
6739
6740        --YYCURSOR;                         // next call returns T_EOF
6741        if (!s->single_line_only)
6742        {
6743            BOOST_WAVE_UPDATE_CURSOR();     // adjust the input cursor
6744            (*s->error_proc)(s, lexing_exception::generic_lexing_warning,
6745                "Unterminated 'C++' style comment");
6746        }
6747        BOOST_WAVE_RET(T_CPPCOMMENT);
6748    }
6749#line 6750 "cpp_re.inc"
6750yy1026:
6751    ++YYCURSOR;
6752#line 426 "cpp.re"
6753    {
6754        // flag the error
6755        BOOST_WAVE_UPDATE_CURSOR();     // adjust the input cursor
6756        (*s->error_proc)(s, lexing_exception::generic_lexing_error,
6757            "invalid character '\\%03o' in input stream", *--YYCURSOR);
6758    }
6759#line 6760 "cpp_re.inc"
6760yy1028:
6761    ++YYCURSOR;
6762    yych = *YYCURSOR;
6763    goto yy1019;
6764}
6765#line 432 "cpp.re"
6766
6767
6768/* this subscanner is called whenever a pp_number has been started */
6769pp_number:
6770{
6771    cursor = uchar_wrapper(s->tok = s->cur, s->column = s->curr_column);
6772    marker = uchar_wrapper(s->ptr);
6773    limit = uchar_wrapper(s->lim);
6774
6775    if (s->detect_pp_numbers) {
6776
6777#line 6778 "cpp_re.inc"
6778{
6779    YYCTYPE yych;
6780    static const unsigned char yybm[] = {
6781          0,   0,   0,   0,   0,   0,   0,   0,
6782          0,   0,   0,   0,   0,   0,   0,   0,
6783          0,   0,   0,   0,   0,   0,   0,   0,
6784          0,   0,   0,   0,   0,   0,   0,   0,
6785          0,   0,   0,   0,  64,   0,   0,   0,
6786          0,   0,   0,   0,   0,   0,  64,   0,
6787         64,  64,  64,  64,  64,  64,  64,  64,
6788         64,  64,   0,   0,   0,   0,   0,   0,
6789          0,  64,  64,  64,  64, 128,  64,  64,
6790         64,  64,  64,  64,  64,  64,  64,  64,
6791         64,  64,  64,  64,  64,  64,  64,  64,
6792         64,  64,  64,   0,   0,   0,   0,  64,
6793          0,  64,  64,  64,  64, 128,  64,  64,
6794         64,  64,  64,  64,  64,  64,  64,  64,
6795         64,  64,  64,  64,  64,  64,  64,  64,
6796         64,  64,  64,   0,   0,   0,   0,   0,
6797          0,   0,   0,   0,   0,   0,   0,   0,
6798          0,   0,   0,   0,   0,   0,   0,   0,
6799          0,   0,   0,   0,   0,   0,   0,   0,
6800          0,   0,   0,   0,   0,   0,   0,   0,
6801          0,   0,   0,   0,   0,   0,   0,   0,
6802          0,   0,   0,   0,   0,   0,   0,   0,
6803          0,   0,   0,   0,   0,   0,   0,   0,
6804          0,   0,   0,   0,   0,   0,   0,   0,
6805          0,   0,   0,   0,   0,   0,   0,   0,
6806          0,   0,   0,   0,   0,   0,   0,   0,
6807          0,   0,   0,   0,   0,   0,   0,   0,
6808          0,   0,   0,   0,   0,   0,   0,   0,
6809          0,   0,   0,   0,   0,   0,   0,   0,
6810          0,   0,   0,   0,   0,   0,   0,   0,
6811          0,   0,   0,   0,   0,   0,   0,   0,
6812          0,   0,   0,   0,   0,   0,   0,   0,
6813    };
6814    if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
6815    yych = *YYCURSOR;
6816    if (yych == '.') goto yy1032;
6817    if (yych <= '/') goto yy1031;
6818    if (yych <= '9') goto yy1033;
6819yy1031:
6820    YYCURSOR = YYMARKER;
6821    goto yy1035;
6822yy1032:
6823    yych = *++YYCURSOR;
6824    if (yych <= '/') goto yy1031;
6825    if (yych >= ':') goto yy1031;
6826yy1033:
6827    YYMARKER = ++YYCURSOR;
6828    if (YYLIMIT <= YYCURSOR) YYFILL(1);
6829    yych = *YYCURSOR;
6830    if (yybm[0+yych] & 64) {
6831        goto yy1033;
6832    }
6833    if (yych <= 'Z') {
6834        if (yych == '?') goto yy1039;
6835        if (yych >= 'A') goto yy1036;
6836    } else {
6837        if (yych <= '\\') {
6838            if (yych >= '\\') goto yy1038;
6839        } else {
6840            if (yych == 'e') goto yy1036;
6841        }
6842    }
6843yy1035:
6844#line 444 "cpp.re"
6845    { BOOST_WAVE_RET(T_PP_NUMBER); }
6846#line 6847 "cpp_re.inc"
6847yy1036:
6848    YYMARKER = ++YYCURSOR;
6849    if (YYLIMIT <= YYCURSOR) YYFILL(1);
6850    yych = *YYCURSOR;
6851    if (yybm[0+yych] & 128) {
6852        goto yy1036;
6853    }
6854    if (yych <= '>') {
6855        if (yych <= '+') {
6856            if (yych == '$') goto yy1033;
6857            if (yych <= '*') goto yy1035;
6858            goto yy1033;
6859        } else {
6860            if (yych <= '.') {
6861                if (yych <= ',') goto yy1035;
6862                goto yy1033;
6863            } else {
6864                if (yych <= '/') goto yy1035;
6865                if (yych <= '9') goto yy1033;
6866                goto yy1035;
6867            }
6868        }
6869    } else {
6870        if (yych <= '\\') {
6871            if (yych <= '@') {
6872                if (yych <= '?') goto yy1039;
6873                goto yy1035;
6874            } else {
6875                if (yych <= 'Z') goto yy1033;
6876                if (yych <= '[') goto yy1035;
6877            }
6878        } else {
6879            if (yych <= '_') {
6880                if (yych <= '^') goto yy1035;
6881                goto yy1033;
6882            } else {
6883                if (yych <= '`') goto yy1035;
6884                if (yych <= 'z') goto yy1033;
6885                goto yy1035;
6886            }
6887        }
6888    }
6889yy1038:
6890    ++YYCURSOR;
6891    if (YYLIMIT <= YYCURSOR) YYFILL(1);
6892    yych = *YYCURSOR;
6893    if (yych == 'U') goto yy1042;
6894    if (yych == 'u') goto yy1041;
6895    goto yy1031;
6896yy1039:
6897    ++YYCURSOR;
6898    if (YYLIMIT <= YYCURSOR) YYFILL(1);
6899    yych = *YYCURSOR;
6900    if (yych != '?') goto yy1031;
6901    ++YYCURSOR;
6902    if (YYLIMIT <= YYCURSOR) YYFILL(1);
6903    yych = *YYCURSOR;
6904    if (yych == '/') goto yy1038;
6905    goto yy1031;
6906yy1041:
6907    ++YYCURSOR;
6908    if (YYLIMIT <= YYCURSOR) YYFILL(1);
6909    yych = *YYCURSOR;
6910    if (yych <= '@') {
6911        if (yych <= '/') goto yy1031;
6912        if (yych <= '9') goto yy1050;
6913        goto yy1031;
6914    } else {
6915        if (yych <= 'F') goto yy1050;
6916        if (yych <= '`') goto yy1031;
6917        if (yych <= 'f') goto yy1050;
6918        goto yy1031;
6919    }
6920yy1042:
6921    ++YYCURSOR;
6922    if (YYLIMIT <= YYCURSOR) YYFILL(1);
6923    yych = *YYCURSOR;
6924    if (yych <= '@') {
6925        if (yych <= '/') goto yy1031;
6926        if (yych >= ':') goto yy1031;
6927    } else {
6928        if (yych <= 'F') goto yy1043;
6929        if (yych <= '`') goto yy1031;
6930        if (yych >= 'g') goto yy1031;
6931    }
6932yy1043:
6933    ++YYCURSOR;
6934    if (YYLIMIT <= YYCURSOR) YYFILL(1);
6935    yych = *YYCURSOR;
6936    if (yych <= '@') {
6937        if (yych <= '/') goto yy1031;
6938        if (yych >= ':') goto yy1031;
6939    } else {
6940        if (yych <= 'F') goto yy1044;
6941        if (yych <= '`') goto yy1031;
6942        if (yych >= 'g') goto yy1031;
6943    }
6944yy1044:
6945    ++YYCURSOR;
6946    if (YYLIMIT <= YYCURSOR) YYFILL(1);
6947    yych = *YYCURSOR;
6948    if (yych <= '@') {
6949        if (yych <= '/') goto yy1031;
6950        if (yych >= ':') goto yy1031;
6951    } else {
6952        if (yych <= 'F') goto yy1045;
6953        if (yych <= '`') goto yy1031;
6954        if (yych >= 'g') goto yy1031;
6955    }
6956yy1045:
6957    ++YYCURSOR;
6958    if (YYLIMIT <= YYCURSOR) YYFILL(1);
6959    yych = *YYCURSOR;
6960    if (yych <= '@') {
6961        if (yych <= '/') goto yy1031;
6962        if (yych >= ':') goto yy1031;
6963    } else {
6964        if (yych <= 'F') goto yy1046;
6965        if (yych <= '`') goto yy1031;
6966        if (yych >= 'g') goto yy1031;
6967    }
6968yy1046:
6969    ++YYCURSOR;
6970    if (YYLIMIT <= YYCURSOR) YYFILL(1);
6971    yych = *YYCURSOR;
6972    if (yych <= '@') {
6973        if (yych <= '/') goto yy1031;
6974        if (yych >= ':') goto yy1031;
6975    } else {
6976        if (yych <= 'F') goto yy1047;
6977        if (yych <= '`') goto yy1031;
6978        if (yych >= 'g') goto yy1031;
6979    }
6980yy1047:
6981    ++YYCURSOR;
6982    if (YYLIMIT <= YYCURSOR) YYFILL(1);
6983    yych = *YYCURSOR;
6984    if (yych <= '@') {
6985        if (yych <= '/') goto yy1031;
6986        if (yych >= ':') goto yy1031;
6987    } else {
6988        if (yych <= 'F') goto yy1048;
6989        if (yych <= '`') goto yy1031;
6990        if (yych >= 'g') goto yy1031;
6991    }
6992yy1048:
6993    ++YYCURSOR;
6994    if (YYLIMIT <= YYCURSOR) YYFILL(1);
6995    yych = *YYCURSOR;
6996    if (yych <= '@') {
6997        if (yych <= '/') goto yy1031;
6998        if (yych >= ':') goto yy1031;
6999    } else {
7000        if (yych <= 'F') goto yy1049;
7001        if (yych <= '`') goto yy1031;
7002        if (yych >= 'g') goto yy1031;
7003    }
7004yy1049:
7005    ++YYCURSOR;
7006    if (YYLIMIT <= YYCURSOR) YYFILL(1);
7007    yych = *YYCURSOR;
7008    if (yych <= '@') {
7009        if (yych <= '/') goto yy1031;
7010        if (yych <= '9') goto yy1033;
7011        goto yy1031;
7012    } else {
7013        if (yych <= 'F') goto yy1033;
7014        if (yych <= '`') goto yy1031;
7015        if (yych <= 'f') goto yy1033;
7016        goto yy1031;
7017    }
7018yy1050:
7019    ++YYCURSOR;
7020    if (YYLIMIT <= YYCURSOR) YYFILL(1);
7021    yych = *YYCURSOR;
7022    if (yych <= '@') {
7023        if (yych <= '/') goto yy1031;
7024        if (yych >= ':') goto yy1031;
7025    } else {
7026        if (yych <= 'F') goto yy1051;
7027        if (yych <= '`') goto yy1031;
7028        if (yych >= 'g') goto yy1031;
7029    }
7030yy1051:
7031    ++YYCURSOR;
7032    if (YYLIMIT <= YYCURSOR) YYFILL(1);
7033    yych = *YYCURSOR;
7034    if (yych <= '@') {
7035        if (yych <= '/') goto yy1031;
7036        if (yych >= ':') goto yy1031;
7037    } else {
7038        if (yych <= 'F') goto yy1052;
7039        if (yych <= '`') goto yy1031;
7040        if (yych >= 'g') goto yy1031;
7041    }
7042yy1052:
7043    ++YYCURSOR;
7044    if (YYLIMIT <= YYCURSOR) YYFILL(1);
7045    yych = *YYCURSOR;
7046    if (yych <= '@') {
7047        if (yych <= '/') goto yy1031;
7048        if (yych <= '9') goto yy1033;
7049        goto yy1031;
7050    } else {
7051        if (yych <= 'F') goto yy1033;
7052        if (yych <= '`') goto yy1031;
7053        if (yych <= 'f') goto yy1033;
7054        goto yy1031;
7055    }
7056}
7057#line 445 "cpp.re"
7058
7059    }
7060    else {
7061
7062#line 7063 "cpp_re.inc"
7063{
7064    YYCTYPE yych;
7065    unsigned int yyaccept = 0;
7066    static const unsigned char yybm[] = {
7067          0,   0,   0,   0,   0,   0,   0,   0,
7068          0,   0,   0,   0,   0,   0,   0,   0,
7069          0,   0,   0,   0,   0,   0,   0,   0,
7070          0,   0,   0,   0,   0,   0,   0,   0,
7071          0,   0,   0,   0,   0,   0,   0,   0,
7072          0,   0,   0,   0,   0,   0,   0,   0,
7073        224, 224, 224, 224, 224, 224, 224, 224,
7074        160, 160,   0,   0,   0,   0,   0,   0,
7075          0, 128, 128, 128, 128, 128, 128,   0,
7076          0,   0,   0,   0,   0,   0,   0,   0,
7077          0,   0,   0,   0,   0,   0,   0,   0,
7078          0,   0,   0,   0,   0,   0,   0,   0,
7079          0, 128, 128, 128, 128, 128, 128,   0,
7080          0,   0,   0,   0,   0,   0,   0,   0,
7081          0,   0,   0,   0,   0,   0,   0,   0,
7082          0,   0,   0,   0,   0,   0,   0,   0,
7083          0,   0,   0,   0,   0,   0,   0,   0,
7084          0,   0,   0,   0,   0,   0,   0,   0,
7085          0,   0,   0,   0,   0,   0,   0,   0,
7086          0,   0,   0,   0,   0,   0,   0,   0,
7087          0,   0,   0,   0,   0,   0,   0,   0,
7088          0,   0,   0,   0,   0,   0,   0,   0,
7089          0,   0,   0,   0,   0,   0,   0,   0,
7090          0,   0,   0,   0,   0,   0,   0,   0,
7091          0,   0,   0,   0,   0,   0,   0,   0,
7092          0,   0,   0,   0,   0,   0,   0,   0,
7093          0,   0,   0,   0,   0,   0,   0,   0,
7094          0,   0,   0,   0,   0,   0,   0,   0,
7095          0,   0,   0,   0,   0,   0,   0,   0,
7096          0,   0,   0,   0,   0,   0,   0,   0,
7097          0,   0,   0,   0,   0,   0,   0,   0,
7098          0,   0,   0,   0,   0,   0,   0,   0,
7099    };
7100    if ((YYLIMIT - YYCURSOR) < 4) YYFILL(4);
7101    yych = *YYCURSOR;
7102    if (yych <= '/') {
7103        if (yych == '.') goto yy1060;
7104    } else {
7105        if (yych <= '0') goto yy1056;
7106        if (yych <= '9') goto yy1058;
7107    }
7108yy1055:
7109    YYCURSOR = YYMARKER;
7110    if (yyaccept <= 0) {
7111        goto yy1057;
7112    } else {
7113        goto yy1063;
7114    }
7115yy1056:
7116    yyaccept = 0;
7117    yych = *(YYMARKER = ++YYCURSOR);
7118    if (yybm[0+yych] & 64) {
7119        goto yy1075;
7120    }
7121    if (yych <= 'E') {
7122        if (yych <= '/') {
7123            if (yych == '.') goto yy1061;
7124        } else {
7125            if (yych <= '9') goto yy1078;
7126            if (yych >= 'E') goto yy1071;
7127        }
7128    } else {
7129        if (yych <= 'd') {
7130            if (yych == 'X') goto yy1077;
7131        } else {
7132            if (yych <= 'e') goto yy1071;
7133            if (yych == 'x') goto yy1077;
7134        }
7135    }
7136yy1057:
7137#line 452 "cpp.re"
7138    { goto integer_suffix; }
7139#line 7140 "cpp_re.inc"
7140yy1058:
7141    yyaccept = 0;
7142    YYMARKER = ++YYCURSOR;
7143    if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3);
7144    yych = *YYCURSOR;
7145    if (yybm[0+yych] & 32) {
7146        goto yy1058;
7147    }
7148    if (yych <= 'D') {
7149        if (yych == '.') goto yy1061;
7150        goto yy1057;
7151    } else {
7152        if (yych <= 'E') goto yy1071;
7153        if (yych == 'e') goto yy1071;
7154        goto yy1057;
7155    }
7156yy1060:
7157    yych = *++YYCURSOR;
7158    if (yych <= '/') goto yy1055;
7159    if (yych >= ':') goto yy1055;
7160yy1061:
7161    yyaccept = 1;
7162    YYMARKER = ++YYCURSOR;
7163    if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3);
7164    yych = *YYCURSOR;
7165    if (yych <= 'K') {
7166        if (yych <= 'D') {
7167            if (yych <= '/') goto yy1063;
7168            if (yych <= '9') goto yy1061;
7169        } else {
7170            if (yych <= 'E') goto yy1064;
7171            if (yych <= 'F') goto yy1065;
7172        }
7173    } else {
7174        if (yych <= 'e') {
7175            if (yych <= 'L') goto yy1066;
7176            if (yych >= 'e') goto yy1064;
7177        } else {
7178            if (yych <= 'f') goto yy1065;
7179            if (yych == 'l') goto yy1066;
7180        }
7181    }
7182yy1063:
7183#line 450 "cpp.re"
7184    { BOOST_WAVE_RET(T_FLOATLIT); }
7185#line 7186 "cpp_re.inc"
7186yy1064:
7187    yych = *++YYCURSOR;
7188    if (yych <= ',') {
7189        if (yych == '+') goto yy1068;
7190        goto yy1055;
7191    } else {
7192        if (yych <= '-') goto yy1068;
7193        if (yych <= '/') goto yy1055;
7194        if (yych <= '9') goto yy1069;
7195        goto yy1055;
7196    }
7197yy1065:
7198    yych = *++YYCURSOR;
7199    if (yych == 'L') goto yy1067;
7200    if (yych == 'l') goto yy1067;
7201    goto yy1063;
7202yy1066:
7203    yych = *++YYCURSOR;
7204    if (yych == 'F') goto yy1067;
7205    if (yych != 'f') goto yy1063;
7206yy1067:
7207    yych = *++YYCURSOR;
7208    goto yy1063;
7209yy1068:
7210    yych = *++YYCURSOR;
7211    if (yych <= '/') goto yy1055;
7212    if (yych >= ':') goto yy1055;
7213yy1069:
7214    ++YYCURSOR;
7215    if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
7216    yych = *YYCURSOR;
7217    if (yych <= 'K') {
7218        if (yych <= '9') {
7219            if (yych <= '/') goto yy1063;
7220            goto yy1069;
7221        } else {
7222            if (yych == 'F') goto yy1065;
7223            goto yy1063;
7224        }
7225    } else {
7226        if (yych <= 'f') {
7227            if (yych <= 'L') goto yy1066;
7228            if (yych <= 'e') goto yy1063;
7229            goto yy1065;
7230        } else {
7231            if (yych == 'l') goto yy1066;
7232            goto yy1063;
7233        }
7234    }
7235yy1071:
7236    yych = *++YYCURSOR;
7237    if (yych <= ',') {
7238        if (yych != '+') goto yy1055;
7239    } else {
7240        if (yych <= '-') goto yy1072;
7241        if (yych <= '/') goto yy1055;
7242        if (yych <= '9') goto yy1073;
7243        goto yy1055;
7244    }
7245yy1072:
7246    yych = *++YYCURSOR;
7247    if (yych <= '/') goto yy1055;
7248    if (yych >= ':') goto yy1055;
7249yy1073:
7250    ++YYCURSOR;
7251    if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
7252    yych = *YYCURSOR;
7253    if (yych <= 'K') {
7254        if (yych <= '9') {
7255            if (yych <= '/') goto yy1063;
7256            goto yy1073;
7257        } else {
7258            if (yych == 'F') goto yy1065;
7259            goto yy1063;
7260        }
7261    } else {
7262        if (yych <= 'f') {
7263            if (yych <= 'L') goto yy1066;
7264            if (yych <= 'e') goto yy1063;
7265            goto yy1065;
7266        } else {
7267            if (yych == 'l') goto yy1066;
7268            goto yy1063;
7269        }
7270    }
7271yy1075:
7272    yyaccept = 0;
7273    YYMARKER = ++YYCURSOR;
7274    if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3);
7275    yych = *YYCURSOR;
7276    if (yybm[0+yych] & 64) {
7277        goto yy1075;
7278    }
7279    if (yych <= '9') {
7280        if (yych == '.') goto yy1061;
7281        if (yych <= '/') goto yy1057;
7282        goto yy1078;
7283    } else {
7284        if (yych <= 'E') {
7285            if (yych <= 'D') goto yy1057;
7286            goto yy1071;
7287        } else {
7288            if (yych == 'e') goto yy1071;
7289            goto yy1057;
7290        }
7291    }
7292yy1077:
7293    yych = *++YYCURSOR;
7294    if (yybm[0+yych] & 128) {
7295        goto yy1080;
7296    }
7297    goto yy1055;
7298yy1078:
7299    ++YYCURSOR;
7300    if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3);
7301    yych = *YYCURSOR;
7302    if (yych <= '9') {
7303        if (yych == '.') goto yy1061;
7304        if (yych <= '/') goto yy1055;
7305        goto yy1078;
7306    } else {
7307        if (yych <= 'E') {
7308            if (yych <= 'D') goto yy1055;
7309            goto yy1071;
7310        } else {
7311            if (yych == 'e') goto yy1071;
7312            goto yy1055;
7313        }
7314    }
7315yy1080:
7316    ++YYCURSOR;
7317    if (YYLIMIT <= YYCURSOR) YYFILL(1);
7318    yych = *YYCURSOR;
7319    if (yybm[0+yych] & 128) {
7320        goto yy1080;
7321    }
7322    goto yy1057;
7323}
7324#line 453 "cpp.re"
7325
7326    }
7327}
7328
7329/* this subscanner is called, whenever an Integer was recognized */
7330integer_suffix:
7331{
7332    if (s->enable_ms_extensions) {
7333
7334#line 7335 "cpp_re.inc"
7335{
7336    YYCTYPE yych;
7337    if ((YYLIMIT - YYCURSOR) < 4) YYFILL(4);
7338    yych = *(YYMARKER = YYCURSOR);
7339    if (yych <= 'h') {
7340        if (yych <= 'L') {
7341            if (yych >= 'L') goto yy1087;
7342        } else {
7343            if (yych == 'U') goto yy1085;
7344        }
7345    } else {
7346        if (yych <= 'l') {
7347            if (yych <= 'i') goto yy1088;
7348            if (yych >= 'l') goto yy1087;
7349        } else {
7350            if (yych == 'u') goto yy1086;
7351        }
7352    }
7353yy1084:
7354#line 466 "cpp.re"
7355    { BOOST_WAVE_RET(T_INTLIT); }
7356#line 7357 "cpp_re.inc"
7357yy1085:
7358    yych = *++YYCURSOR;
7359    if (yych == 'L') goto yy1095;
7360    if (yych == 'l') goto yy1095;
7361    goto yy1084;
7362yy1086:
7363    yych = *(YYMARKER = ++YYCURSOR);
7364    if (yych <= 'h') {
7365        if (yych == 'L') goto yy1095;
7366        goto yy1084;
7367    } else {
7368        if (yych <= 'i') goto yy1088;
7369        if (yych == 'l') goto yy1095;
7370        goto yy1084;
7371    }
7372yy1087:
7373    yych = *++YYCURSOR;
7374    if (yych <= 'U') {
7375        if (yych == 'L') goto yy1094;
7376        if (yych <= 'T') goto yy1084;
7377        goto yy1093;
7378    } else {
7379        if (yych <= 'l') {
7380            if (yych <= 'k') goto yy1084;
7381            goto yy1094;
7382        } else {
7383            if (yych == 'u') goto yy1093;
7384            goto yy1084;
7385        }
7386    }
7387yy1088:
7388    yych = *++YYCURSOR;
7389    if (yych == '6') goto yy1090;
7390yy1089:
7391    YYCURSOR = YYMARKER;
7392    goto yy1084;
7393yy1090:
7394    yych = *++YYCURSOR;
7395    if (yych != '4') goto yy1089;
7396yy1091:
7397    ++YYCURSOR;
7398yy1092:
7399#line 463 "cpp.re"
7400    { BOOST_WAVE_RET(T_LONGINTLIT); }
7401#line 7402 "cpp_re.inc"
7402yy1093:
7403    yych = *++YYCURSOR;
7404    goto yy1084;
7405yy1094:
7406    yych = *++YYCURSOR;
7407    if (yych == 'U') goto yy1091;
7408    if (yych == 'u') goto yy1091;
7409    goto yy1092;
7410yy1095:
7411    ++YYCURSOR;
7412    if ((yych = *YYCURSOR) == 'L') goto yy1091;
7413    if (yych == 'l') goto yy1091;
7414    goto yy1084;
7415}
7416#line 467 "cpp.re"
7417
7418    }
7419    else {
7420
7421#line 7422 "cpp_re.inc"
7422{
7423    YYCTYPE yych;
7424    if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3);
7425    yych = *YYCURSOR;
7426    if (yych <= 'U') {
7427        if (yych == 'L') goto yy1100;
7428        if (yych >= 'U') goto yy1099;
7429    } else {
7430        if (yych <= 'l') {
7431            if (yych >= 'l') goto yy1100;
7432        } else {
7433            if (yych == 'u') goto yy1099;
7434        }
7435    }
7436yy1098:
7437#line 475 "cpp.re"
7438    { BOOST_WAVE_RET(T_INTLIT); }
7439#line 7440 "cpp_re.inc"
7440yy1099:
7441    yych = *++YYCURSOR;
7442    if (yych == 'L') goto yy1105;
7443    if (yych == 'l') goto yy1105;
7444    goto yy1098;
7445yy1100:
7446    yych = *++YYCURSOR;
7447    if (yych <= 'U') {
7448        if (yych == 'L') goto yy1102;
7449        if (yych <= 'T') goto yy1098;
7450    } else {
7451        if (yych <= 'l') {
7452            if (yych <= 'k') goto yy1098;
7453            goto yy1102;
7454        } else {
7455            if (yych != 'u') goto yy1098;
7456        }
7457    }
7458    yych = *++YYCURSOR;
7459    goto yy1098;
7460yy1102:
7461    ++YYCURSOR;
7462    if ((yych = *YYCURSOR) == 'U') goto yy1104;
7463    if (yych == 'u') goto yy1104;
7464yy1103:
7465#line 472 "cpp.re"
7466    { BOOST_WAVE_RET(T_LONGINTLIT); }
7467#line 7468 "cpp_re.inc"
7468yy1104:
7469    yych = *++YYCURSOR;
7470    goto yy1103;
7471yy1105:
7472    ++YYCURSOR;
7473    if ((yych = *YYCURSOR) == 'L') goto yy1104;
7474    if (yych == 'l') goto yy1104;
7475    goto yy1098;
7476}
7477#line 476 "cpp.re"
7478
7479    }
7480}
7481
7482/* this subscanner is invoked for C++0x extended character literals */
7483extcharlit:
7484{
7485
7486#line 7487 "cpp_re.inc"
7487{
7488    YYCTYPE yych;
7489    static const unsigned char yybm[] = {
7490          0,   0,   0,   0,   0,   0,   0,   0,
7491          0,   0,   0,   0,   0,   0,   0,   0,
7492          0,   0,   0,   0,   0,   0,   0,   0,
7493          0,   0,   0,   0,   0,   0,   0,   0,
7494          0,   0,   0,   0,   0,   0,   0,   0,
7495          0,   0,   0,   0,   0,   0,   0,   0,
7496        128, 128, 128, 128, 128, 128, 128, 128,
7497        128, 128,   0,   0,   0,   0,   0,   0,
7498          0, 128, 128, 128, 128, 128, 128,   0,
7499          0,   0,   0,   0,   0,   0,   0,   0,
7500          0,   0,   0,   0,   0,   0,   0,   0,
7501          0,   0,   0,   0,   0,   0,   0,   0,
7502          0, 128, 128, 128, 128, 128, 128,   0,
7503          0,   0,   0,   0,   0,   0,   0,   0,
7504          0,   0,   0,   0,   0,   0,   0,   0,
7505          0,   0,   0,   0,   0,   0,   0,   0,
7506          0,   0,   0,   0,   0,   0,   0,   0,
7507          0,   0,   0,   0,   0,   0,   0,   0,
7508          0,   0,   0,   0,   0,   0,   0,   0,
7509          0,   0,   0,   0,   0,   0,   0,   0,
7510          0,   0,   0,   0,   0,   0,   0,   0,
7511          0,   0,   0,   0,   0,   0,   0,   0,
7512          0,   0,   0,   0,   0,   0,   0,   0,
7513          0,   0,   0,   0,   0,   0,   0,   0,
7514          0,   0,   0,   0,   0,   0,   0,   0,
7515          0,   0,   0,   0,   0,   0,   0,   0,
7516          0,   0,   0,   0,   0,   0,   0,   0,
7517          0,   0,   0,   0,   0,   0,   0,   0,
7518          0,   0,   0,   0,   0,   0,   0,   0,
7519          0,   0,   0,   0,   0,   0,   0,   0,
7520          0,   0,   0,   0,   0,   0,   0,   0,
7521          0,   0,   0,   0,   0,   0,   0,   0,
7522    };
7523    if ((YYLIMIT - YYCURSOR) < 13) YYFILL(13);
7524    yych = *YYCURSOR;
7525    if (yych <= 0x1F) {
7526        if (yych <= '\n') {
7527            if (yych <= 0x08) goto yy1108;
7528            if (yych <= '\t') goto yy1109;
7529            goto yy1113;
7530        } else {
7531            if (yych <= '\f') goto yy1109;
7532            if (yych <= '\r') goto yy1113;
7533        }
7534    } else {
7535        if (yych <= '>') {
7536            if (yych == '\'') goto yy1113;
7537            goto yy1109;
7538        } else {
7539            if (yych <= '?') goto yy1111;
7540            if (yych == '\\') goto yy1112;
7541            goto yy1109;
7542        }
7543    }
7544yy1108:
7545    YYCURSOR = YYMARKER;
7546    goto yy1110;
7547yy1109:
7548    ++YYCURSOR;
7549    if ((yych = *YYCURSOR) == '\'') goto yy1121;
7550yy1110:
7551#line 488 "cpp.re"
7552    { BOOST_WAVE_RET(TOKEN_FROM_ID(*s->tok, UnknownTokenType)); }
7553#line 7554 "cpp_re.inc"
7554yy1111:
7555    yych = *(YYMARKER = ++YYCURSOR);
7556    if (yych == '\'') goto yy1121;
7557    if (yych == '?') goto yy1136;
7558    goto yy1110;
7559yy1112:
7560    yych = *(YYMARKER = ++YYCURSOR);
7561    if (yych <= '`') {
7562        if (yych <= '7') {
7563            if (yych <= '&') {
7564                if (yych == '"') goto yy1116;
7565                goto yy1110;
7566            } else {
7567                if (yych <= '\'') goto yy1116;
7568                if (yych <= '/') goto yy1110;
7569                goto yy1119;
7570            }
7571        } else {
7572            if (yych <= 'T') {
7573                if (yych == '?') goto yy1117;
7574                goto yy1110;
7575            } else {
7576                if (yych <= 'U') goto yy1115;
7577                if (yych == '\\') goto yy1116;
7578                goto yy1110;
7579            }
7580        }
7581    } else {
7582        if (yych <= 'r') {
7583            if (yych <= 'f') {
7584                if (yych <= 'b') goto yy1116;
7585                if (yych <= 'e') goto yy1110;
7586                goto yy1116;
7587            } else {
7588                if (yych == 'n') goto yy1116;
7589                if (yych <= 'q') goto yy1110;
7590                goto yy1116;
7591            }
7592        } else {
7593            if (yych <= 'u') {
7594                if (yych <= 's') goto yy1110;
7595                if (yych <= 't') goto yy1116;
7596                goto yy1114;
7597            } else {
7598                if (yych <= 'v') goto yy1116;
7599                if (yych == 'x') goto yy1118;
7600                goto yy1110;
7601            }
7602        }
7603    }
7604yy1113:
7605    yych = *++YYCURSOR;
7606    goto yy1110;
7607yy1114:
7608    yych = *++YYCURSOR;
7609    if (yych <= '@') {
7610        if (yych <= '/') goto yy1108;
7611        if (yych <= '9') goto yy1133;
7612        goto yy1108;
7613    } else {
7614        if (yych <= 'F') goto yy1133;
7615        if (yych <= '`') goto yy1108;
7616        if (yych <= 'f') goto yy1133;
7617        goto yy1108;
7618    }
7619yy1115:
7620    yych = *++YYCURSOR;
7621    if (yych <= '@') {
7622        if (yych <= '/') goto yy1108;
7623        if (yych <= '9') goto yy1126;
7624        goto yy1108;
7625    } else {
7626        if (yych <= 'F') goto yy1126;
7627        if (yych <= '`') goto yy1108;
7628        if (yych <= 'f') goto yy1126;
7629        goto yy1108;
7630    }
7631yy1116:
7632    yych = *++YYCURSOR;
7633    if (yych == '\'') goto yy1121;
7634    goto yy1108;
7635yy1117:
7636    yych = *++YYCURSOR;
7637    if (yych == '\'') goto yy1121;
7638    if (yych == '?') goto yy1125;
7639    goto yy1108;
7640yy1118:
7641    yych = *++YYCURSOR;
7642    if (yych == '\'') goto yy1108;
7643    goto yy1124;
7644yy1119:
7645    yych = *++YYCURSOR;
7646    if (yych == '\'') goto yy1121;
7647    if (yych <= '/') goto yy1108;
7648    if (yych >= '8') goto yy1108;
7649    yych = *++YYCURSOR;
7650    if (yych == '\'') goto yy1121;
7651    if (yych <= '/') goto yy1108;
7652    if (yych <= '7') goto yy1116;
7653    goto yy1108;
7654yy1121:
7655    ++YYCURSOR;
7656#line 485 "cpp.re"
7657    { BOOST_WAVE_RET(T_CHARLIT); }
7658#line 7659 "cpp_re.inc"
7659yy1123:
7660    ++YYCURSOR;
7661    if (YYLIMIT <= YYCURSOR) YYFILL(1);
7662    yych = *YYCURSOR;
7663yy1124:
7664    if (yybm[0+yych] & 128) {
7665        goto yy1123;
7666    }
7667    if (yych == '\'') goto yy1121;
7668    goto yy1108;
7669yy1125:
7670    yych = *++YYCURSOR;
7671    if (yych == '/') goto yy1116;
7672    goto yy1108;
7673yy1126:
7674    yych = *++YYCURSOR;
7675    if (yych <= '@') {
7676        if (yych <= '/') goto yy1108;
7677        if (yych >= ':') goto yy1108;
7678    } else {
7679        if (yych <= 'F') goto yy1127;
7680        if (yych <= '`') goto yy1108;
7681        if (yych >= 'g') goto yy1108;
7682    }
7683yy1127:
7684    yych = *++YYCURSOR;
7685    if (yych <= '@') {
7686        if (yych <= '/') goto yy1108;
7687        if (yych >= ':') goto yy1108;
7688    } else {
7689        if (yych <= 'F') goto yy1128;
7690        if (yych <= '`') goto yy1108;
7691        if (yych >= 'g') goto yy1108;
7692    }
7693yy1128:
7694    yych = *++YYCURSOR;
7695    if (yych <= '@') {
7696        if (yych <= '/') goto yy1108;
7697        if (yych >= ':') goto yy1108;
7698    } else {
7699        if (yych <= 'F') goto yy1129;
7700        if (yych <= '`') goto yy1108;
7701        if (yych >= 'g') goto yy1108;
7702    }
7703yy1129:
7704    yych = *++YYCURSOR;
7705    if (yych <= '@') {
7706        if (yych <= '/') goto yy1108;
7707        if (yych >= ':') goto yy1108;
7708    } else {
7709        if (yych <= 'F') goto yy1130;
7710        if (yych <= '`') goto yy1108;
7711        if (yych >= 'g') goto yy1108;
7712    }
7713yy1130:
7714    yych = *++YYCURSOR;
7715    if (yych <= '@') {
7716        if (yych <= '/') goto yy1108;
7717        if (yych >= ':') goto yy1108;
7718    } else {
7719        if (yych <= 'F') goto yy1131;
7720        if (yych <= '`') goto yy1108;
7721        if (yych >= 'g') goto yy1108;
7722    }
7723yy1131:
7724    yych = *++YYCURSOR;
7725    if (yych <= '@') {
7726        if (yych <= '/') goto yy1108;
7727        if (yych >= ':') goto yy1108;
7728    } else {
7729        if (yych <= 'F') goto yy1132;
7730        if (yych <= '`') goto yy1108;
7731        if (yych >= 'g') goto yy1108;
7732    }
7733yy1132:
7734    yych = *++YYCURSOR;
7735    if (yych <= '@') {
7736        if (yych <= '/') goto yy1108;
7737        if (yych <= '9') goto yy1116;
7738        goto yy1108;
7739    } else {
7740        if (yych <= 'F') goto yy1116;
7741        if (yych <= '`') goto yy1108;
7742        if (yych <= 'f') goto yy1116;
7743        goto yy1108;
7744    }
7745yy1133:
7746    yych = *++YYCURSOR;
7747    if (yych <= '@') {
7748        if (yych <= '/') goto yy1108;
7749        if (yych >= ':') goto yy1108;
7750    } else {
7751        if (yych <= 'F') goto yy1134;
7752        if (yych <= '`') goto yy1108;
7753        if (yych >= 'g') goto yy1108;
7754    }
7755yy1134:
7756    yych = *++YYCURSOR;
7757    if (yych <= '@') {
7758        if (yych <= '/') goto yy1108;
7759        if (yych >= ':') goto yy1108;
7760    } else {
7761        if (yych <= 'F') goto yy1135;
7762        if (yych <= '`') goto yy1108;
7763        if (yych >= 'g') goto yy1108;
7764    }
7765yy1135:
7766    yych = *++YYCURSOR;
7767    if (yych <= '@') {
7768        if (yych <= '/') goto yy1108;
7769        if (yych <= '9') goto yy1116;
7770        goto yy1108;
7771    } else {
7772        if (yych <= 'F') goto yy1116;
7773        if (yych <= '`') goto yy1108;
7774        if (yych <= 'f') goto yy1116;
7775        goto yy1108;
7776    }
7777yy1136:
7778    yych = *++YYCURSOR;
7779    if (yych != '/') goto yy1108;
7780    ++YYCURSOR;
7781    if ((yych = *YYCURSOR) <= '`') {
7782        if (yych <= '7') {
7783            if (yych <= '&') {
7784                if (yych == '"') goto yy1116;
7785                goto yy1108;
7786            } else {
7787                if (yych <= '\'') goto yy1116;
7788                if (yych <= '/') goto yy1108;
7789                goto yy1119;
7790            }
7791        } else {
7792            if (yych <= 'T') {
7793                if (yych == '?') goto yy1117;
7794                goto yy1108;
7795            } else {
7796                if (yych <= 'U') goto yy1115;
7797                if (yych == '\\') goto yy1116;
7798                goto yy1108;
7799            }
7800        }
7801    } else {
7802        if (yych <= 'r') {
7803            if (yych <= 'f') {
7804                if (yych <= 'b') goto yy1116;
7805                if (yych <= 'e') goto yy1108;
7806                goto yy1116;
7807            } else {
7808                if (yych == 'n') goto yy1116;
7809                if (yych <= 'q') goto yy1108;
7810                goto yy1116;
7811            }
7812        } else {
7813            if (yych <= 'u') {
7814                if (yych <= 's') goto yy1108;
7815                if (yych <= 't') goto yy1116;
7816                goto yy1114;
7817            } else {
7818                if (yych <= 'v') goto yy1116;
7819                if (yych == 'x') goto yy1118;
7820                goto yy1108;
7821            }
7822        }
7823    }
7824}
7825#line 489 "cpp.re"
7826
7827}
7828
7829/* this subscanner is invoked for C++0x extended character string literals */
7830extstringlit:
7831{
7832
7833#line 7834 "cpp_re.inc"
7834{
7835    YYCTYPE yych;
7836    unsigned int yyaccept = 0;
7837    static const unsigned char yybm[] = {
7838          0,   0,   0,   0,   0,   0,   0,   0,
7839          0,  16,   0,  16,  16,   0,   0,   0,
7840          0,   0,   0,   0,   0,   0,   0,   0,
7841          0,   0,   0,   0,   0,   0,   0,   0,
7842         16,  16,   0,  16,  16,  16,  16,  16,
7843         16,  16,  16,  16,  16,  16,  16,  16,
7844        144, 144, 144, 144, 144, 144, 144, 144,
7845        144, 144,  16,  16,  16,  16,  16,  32,
7846         16, 144, 144, 144, 144, 144, 144,  16,
7847         16,  16,  16,  16,  16,  16,  16,  16,
7848         16,  16,  16,  16,  16,  16,  16,  16,
7849         16,  16,  16,  16,  64,  16,  16,  16,
7850         16, 144, 144, 144, 144, 144, 144,  16,
7851         16,  16,  16,  16,  16,  16,  16,  16,
7852         16,  16,  16,  16,  16,  16,  16,  16,
7853         16,  16,  16,  16,  16,  16,  16,  16,
7854         16,  16,  16,  16,  16,  16,  16,  16,
7855         16,  16,  16,  16,  16,  16,  16,  16,
7856         16,  16,  16,  16,  16,  16,  16,  16,
7857         16,  16,  16,  16,  16,  16,  16,  16,
7858         16,  16,  16,  16,  16,  16,  16,  16,
7859         16,  16,  16,  16,  16,  16,  16,  16,
7860         16,  16,  16,  16,  16,  16,  16,  16,
7861         16,  16,  16,  16,  16,  16,  16,  16,
7862         16,  16,  16,  16,  16,  16,  16,  16,
7863         16,  16,  16,  16,  16,  16,  16,  16,
7864         16,  16,  16,  16,  16,  16,  16,  16,
7865         16,  16,  16,  16,  16,  16,  16,  16,
7866         16,  16,  16,  16,  16,  16,  16,  16,
7867         16,  16,  16,  16,  16,  16,  16,  16,
7868         16,  16,  16,  16,  16,  16,  16,  16,
7869         16,  16,  16,  16,  16,  16,  16,  16,
7870    };
7871    if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
7872    yych = *YYCURSOR;
7873    if (yych <= 0x1F) {
7874        if (yych <= '\n') {
7875            if (yych <= 0x08) goto yy1140;
7876            if (yych <= '\t') goto yy1141;
7877            goto yy1147;
7878        } else {
7879            if (yych <= '\f') goto yy1141;
7880            if (yych <= '\r') goto yy1147;
7881        }
7882    } else {
7883        if (yych <= '>') {
7884            if (yych == '"') goto yy1145;
7885            goto yy1141;
7886        } else {
7887            if (yych <= '?') goto yy1143;
7888            if (yych == '\\') goto yy1144;
7889            goto yy1141;
7890        }
7891    }
7892yy1140:
7893    YYCURSOR = YYMARKER;
7894    if (yyaccept <= 0) {
7895        goto yy1142;
7896    } else {
7897        goto yy1146;
7898    }
7899yy1141:
7900    yyaccept = 0;
7901    yych = *(YYMARKER = ++YYCURSOR);
7902    if (yych <= '\n') {
7903        if (yych == '\t') goto yy1151;
7904    } else {
7905        if (yych <= '\f') goto yy1151;
7906        if (yych >= ' ') goto yy1151;
7907    }
7908yy1142:
7909#line 500 "cpp.re"
7910    { BOOST_WAVE_RET(TOKEN_FROM_ID(*s->tok, UnknownTokenType)); }
7911#line 7912 "cpp_re.inc"
7912yy1143:
7913    yyaccept = 0;
7914    yych = *(YYMARKER = ++YYCURSOR);
7915    if (yybm[0+yych] & 32) {
7916        goto yy1159;
7917    }
7918    if (yych <= '\n') {
7919        if (yych == '\t') goto yy1151;
7920        goto yy1142;
7921    } else {
7922        if (yych <= '\f') goto yy1151;
7923        if (yych <= 0x1F) goto yy1142;
7924        goto yy1151;
7925    }
7926yy1144:
7927    yyaccept = 0;
7928    yych = *(YYMARKER = ++YYCURSOR);
7929    if (yych <= '`') {
7930        if (yych <= '7') {
7931            if (yych <= '&') {
7932                if (yych == '"') goto yy1150;
7933                goto yy1142;
7934            } else {
7935                if (yych <= '\'') goto yy1150;
7936                if (yych <= '/') goto yy1142;
7937                goto yy1154;
7938            }
7939        } else {
7940            if (yych <= 'T') {
7941                if (yych == '?') goto yy1152;
7942                goto yy1142;
7943            } else {
7944                if (yych <= 'U') goto yy1149;
7945                if (yych == '\\') goto yy1150;
7946                goto yy1142;
7947            }
7948        }
7949    } else {
7950        if (yych <= 'r') {
7951            if (yych <= 'f') {
7952                if (yych <= 'b') goto yy1150;
7953                if (yych <= 'e') goto yy1142;
7954                goto yy1150;
7955            } else {
7956                if (yych == 'n') goto yy1150;
7957                if (yych <= 'q') goto yy1142;
7958                goto yy1150;
7959            }
7960        } else {
7961            if (yych <= 'u') {
7962                if (yych <= 's') goto yy1142;
7963                if (yych <= 't') goto yy1150;
7964                goto yy1148;
7965            } else {
7966                if (yych <= 'v') goto yy1150;
7967                if (yych == 'x') goto yy1153;
7968                goto yy1142;
7969            }
7970        }
7971    }
7972yy1145:
7973    ++YYCURSOR;
7974yy1146:
7975#line 497 "cpp.re"
7976    { BOOST_WAVE_RET(T_STRINGLIT); }
7977#line 7978 "cpp_re.inc"
7978yy1147:
7979    yych = *++YYCURSOR;
7980    goto yy1142;
7981yy1148:
7982    ++YYCURSOR;
7983    if (YYLIMIT <= YYCURSOR) YYFILL(1);
7984    yych = *YYCURSOR;
7985    if (yych <= '@') {
7986        if (yych <= '/') goto yy1140;
7987        if (yych <= '9') goto yy1188;
7988        goto yy1140;
7989    } else {
7990        if (yych <= 'F') goto yy1188;
7991        if (yych <= '`') goto yy1140;
7992        if (yych <= 'f') goto yy1188;
7993        goto yy1140;
7994    }
7995yy1149:
7996    ++YYCURSOR;
7997    if (YYLIMIT <= YYCURSOR) YYFILL(1);
7998    yych = *YYCURSOR;
7999    if (yych <= '@') {
8000        if (yych <= '/') goto yy1140;
8001        if (yych <= '9') goto yy1181;
8002        goto yy1140;
8003    } else {
8004        if (yych <= 'F') goto yy1181;
8005        if (yych <= '`') goto yy1140;
8006        if (yych <= 'f') goto yy1181;
8007        goto yy1140;
8008    }
8009yy1150:
8010    ++YYCURSOR;
8011    if (YYLIMIT <= YYCURSOR) YYFILL(1);
8012    yych = *YYCURSOR;
8013yy1151:
8014    if (yybm[0+yych] & 16) {
8015        goto yy1150;
8016    }
8017    if (yych <= '!') goto yy1140;
8018    if (yych <= '"') goto yy1156;
8019    if (yych <= '[') goto yy1157;
8020    goto yy1158;
8021yy1152:
8022    ++YYCURSOR;
8023    if (YYLIMIT <= YYCURSOR) YYFILL(1);
8024    yych = *YYCURSOR;
8025    if (yybm[0+yych] & 16) {
8026        goto yy1150;
8027    }
8028    if (yych <= '!') goto yy1140;
8029    if (yych <= '"') goto yy1156;
8030    if (yych <= '[') goto yy1180;
8031    goto yy1158;
8032yy1153:
8033    ++YYCURSOR;
8034    if (YYLIMIT <= YYCURSOR) YYFILL(1);
8035    yych = *YYCURSOR;
8036    if (yybm[0+yych] & 128) {
8037        goto yy1167;
8038    }
8039    goto yy1140;
8040yy1154:
8041    ++YYCURSOR;
8042    if (YYLIMIT <= YYCURSOR) YYFILL(1);
8043    yych = *YYCURSOR;
8044    if (yych <= '"') {
8045        if (yych <= '\n') {
8046            if (yych == '\t') goto yy1150;
8047            goto yy1140;
8048        } else {
8049            if (yych <= '\f') goto yy1150;
8050            if (yych <= 0x1F) goto yy1140;
8051            if (yych <= '!') goto yy1150;
8052            goto yy1156;
8053        }
8054    } else {
8055        if (yych <= '>') {
8056            if (yych <= '/') goto yy1150;
8057            if (yych >= '8') goto yy1150;
8058        } else {
8059            if (yych <= '?') goto yy1157;
8060            if (yych == '\\') goto yy1158;
8061            goto yy1150;
8062        }
8063    }
8064    ++YYCURSOR;
8065    if (YYLIMIT <= YYCURSOR) YYFILL(1);
8066    yych = *YYCURSOR;
8067    if (yybm[0+yych] & 16) {
8068        goto yy1150;
8069    }
8070    if (yych <= '!') goto yy1140;
8071    if (yych <= '"') goto yy1156;
8072    if (yych <= '[') goto yy1157;
8073    goto yy1158;
8074yy1156:
8075    yych = *++YYCURSOR;
8076    goto yy1146;
8077yy1157:
8078    ++YYCURSOR;
8079    if (YYLIMIT <= YYCURSOR) YYFILL(1);
8080    yych = *YYCURSOR;
8081    if (yybm[0+yych] & 16) {
8082        goto yy1150;
8083    }
8084    if (yych <= '!') goto yy1140;
8085    if (yych <= '"') goto yy1156;
8086    if (yych <= '[') goto yy1159;
8087yy1158:
8088    ++YYCURSOR;
8089    if (YYLIMIT <= YYCURSOR) YYFILL(1);
8090    yych = *YYCURSOR;
8091    if (yych <= '`') {
8092        if (yych <= '7') {
8093            if (yych <= '&') {
8094                if (yych == '"') goto yy1150;
8095                goto yy1140;
8096            } else {
8097                if (yych <= '\'') goto yy1150;
8098                if (yych <= '/') goto yy1140;
8099                goto yy1154;
8100            }
8101        } else {
8102            if (yych <= 'T') {
8103                if (yych == '?') goto yy1152;
8104                goto yy1140;
8105            } else {
8106                if (yych <= 'U') goto yy1149;
8107                if (yych == '\\') goto yy1150;
8108                goto yy1140;
8109            }
8110        }
8111    } else {
8112        if (yych <= 'r') {
8113            if (yych <= 'f') {
8114                if (yych <= 'b') goto yy1150;
8115                if (yych <= 'e') goto yy1140;
8116                goto yy1150;
8117            } else {
8118                if (yych == 'n') goto yy1150;
8119                if (yych <= 'q') goto yy1140;
8120                goto yy1150;
8121            }
8122        } else {
8123            if (yych <= 'u') {
8124                if (yych <= 's') goto yy1140;
8125                if (yych <= 't') goto yy1150;
8126                goto yy1148;
8127            } else {
8128                if (yych <= 'v') goto yy1150;
8129                if (yych == 'x') goto yy1153;
8130                goto yy1140;
8131            }
8132        }
8133    }
8134yy1159:
8135    ++YYCURSOR;
8136    if (YYLIMIT <= YYCURSOR) YYFILL(1);
8137    yych = *YYCURSOR;
8138    if (yybm[0+yych] & 32) {
8139        goto yy1159;
8140    }
8141    if (yych <= '!') {
8142        if (yych <= '\n') {
8143            if (yych == '\t') goto yy1150;
8144            goto yy1140;
8145        } else {
8146            if (yych <= '\f') goto yy1150;
8147            if (yych <= 0x1F) goto yy1140;
8148            goto yy1150;
8149        }
8150    } else {
8151        if (yych <= '/') {
8152            if (yych <= '"') goto yy1156;
8153            if (yych <= '.') goto yy1150;
8154        } else {
8155            if (yych == '\\') goto yy1158;
8156            goto yy1150;
8157        }
8158    }
8159yy1161:
8160    ++YYCURSOR;
8161    if (YYLIMIT <= YYCURSOR) YYFILL(1);
8162    yych = *YYCURSOR;
8163    if (yybm[0+yych] & 64) {
8164        goto yy1161;
8165    }
8166    if (yych <= '7') {
8167        if (yych <= '\f') {
8168            if (yych == '\t') goto yy1150;
8169            if (yych <= '\n') goto yy1140;
8170            goto yy1150;
8171        } else {
8172            if (yych <= '!') {
8173                if (yych <= 0x1F) goto yy1140;
8174                goto yy1150;
8175            } else {
8176                if (yych <= '"') goto yy1165;
8177                if (yych <= '/') goto yy1150;
8178                goto yy1154;
8179            }
8180        }
8181    } else {
8182        if (yych <= 'U') {
8183            if (yych == '?') goto yy1166;
8184            if (yych <= 'T') goto yy1150;
8185            goto yy1164;
8186        } else {
8187            if (yych <= 'u') {
8188                if (yych <= 't') goto yy1150;
8189            } else {
8190                if (yych == 'x') goto yy1167;
8191                goto yy1150;
8192            }
8193        }
8194    }
8195    ++YYCURSOR;
8196    if (YYLIMIT <= YYCURSOR) YYFILL(1);
8197    yych = *YYCURSOR;
8198    if (yych <= '9') {
8199        if (yych <= '\f') {
8200            if (yych == '\t') goto yy1150;
8201            if (yych <= '\n') goto yy1140;
8202            goto yy1150;
8203        } else {
8204            if (yych <= '!') {
8205                if (yych <= 0x1F) goto yy1140;
8206                goto yy1150;
8207            } else {
8208                if (yych <= '"') goto yy1156;
8209                if (yych <= '/') goto yy1150;
8210                goto yy1177;
8211            }
8212        }
8213    } else {
8214        if (yych <= 'F') {
8215            if (yych == '?') goto yy1157;
8216            if (yych <= '@') goto yy1150;
8217            goto yy1177;
8218        } else {
8219            if (yych <= '\\') {
8220                if (yych <= '[') goto yy1150;
8221                goto yy1158;
8222            } else {
8223                if (yych <= '`') goto yy1150;
8224                if (yych <= 'f') goto yy1177;
8225                goto yy1150;
8226            }
8227        }
8228    }
8229yy1164:
8230    ++YYCURSOR;
8231    if (YYLIMIT <= YYCURSOR) YYFILL(1);
8232    yych = *YYCURSOR;
8233    if (yych <= '9') {
8234        if (yych <= '\f') {
8235            if (yych == '\t') goto yy1150;
8236            if (yych <= '\n') goto yy1140;
8237            goto yy1150;
8238        } else {
8239            if (yych <= '!') {
8240                if (yych <= 0x1F) goto yy1140;
8241                goto yy1150;
8242            } else {
8243                if (yych <= '"') goto yy1156;
8244                if (yych <= '/') goto yy1150;
8245                goto yy1170;
8246            }
8247        }
8248    } else {
8249        if (yych <= 'F') {
8250            if (yych == '?') goto yy1157;
8251            if (yych <= '@') goto yy1150;
8252            goto yy1170;
8253        } else {
8254            if (yych <= '\\') {
8255                if (yych <= '[') goto yy1150;
8256                goto yy1158;
8257            } else {
8258                if (yych <= '`') goto yy1150;
8259                if (yych <= 'f') goto yy1170;
8260                goto yy1150;
8261            }
8262        }
8263    }
8264yy1165:
8265    yyaccept = 1;
8266    YYMARKER = ++YYCURSOR;
8267    if (YYLIMIT <= YYCURSOR) YYFILL(1);
8268    yych = *YYCURSOR;
8269    if (yybm[0+yych] & 16) {
8270        goto yy1150;
8271    }
8272    if (yych <= '!') goto yy1146;
8273    if (yych <= '"') goto yy1156;
8274    if (yych <= '[') goto yy1157;
8275    goto yy1158;
8276yy1166:
8277    ++YYCURSOR;
8278    if (YYLIMIT <= YYCURSOR) YYFILL(1);
8279    yych = *YYCURSOR;
8280    if (yybm[0+yych] & 16) {
8281        goto yy1150;
8282    }
8283    if (yych <= '!') goto yy1140;
8284    if (yych <= '"') goto yy1156;
8285    if (yych <= '[') goto yy1169;
8286    goto yy1158;
8287yy1167:
8288    ++YYCURSOR;
8289    if (YYLIMIT <= YYCURSOR) YYFILL(1);
8290    yych = *YYCURSOR;
8291    if (yybm[0+yych] & 128) {
8292        goto yy1167;
8293    }
8294    if (yych <= '!') {
8295        if (yych <= '\n') {
8296            if (yych == '\t') goto yy1150;
8297            goto yy1140;
8298        } else {
8299            if (yych <= '\f') goto yy1150;
8300            if (yych <= 0x1F) goto yy1140;
8301            goto yy1150;
8302        }
8303    } else {
8304        if (yych <= '?') {
8305            if (yych <= '"') goto yy1156;
8306            if (yych <= '>') goto yy1150;
8307            goto yy1157;
8308        } else {
8309            if (yych == '\\') goto yy1158;
8310            goto yy1150;
8311        }
8312    }
8313yy1169:
8314    ++YYCURSOR;
8315    if (YYLIMIT <= YYCURSOR) YYFILL(1);
8316    yych = *YYCURSOR;
8317    if (yybm[0+yych] & 32) {
8318        goto yy1159;
8319    }
8320    if (yych <= '!') {
8321        if (yych <= '\n') {
8322            if (yych == '\t') goto yy1150;
8323            goto yy1140;
8324        } else {
8325            if (yych <= '\f') goto yy1150;
8326            if (yych <= 0x1F) goto yy1140;
8327            goto yy1150;
8328        }
8329    } else {
8330        if (yych <= '/') {
8331            if (yych <= '"') goto yy1156;
8332            if (yych <= '.') goto yy1150;
8333            goto yy1161;
8334        } else {
8335            if (yych == '\\') goto yy1158;
8336            goto yy1150;
8337        }
8338    }
8339yy1170:
8340    ++YYCURSOR;
8341    if (YYLIMIT <= YYCURSOR) YYFILL(1);
8342    yych = *YYCURSOR;
8343    if (yych <= '9') {
8344        if (yych <= '\f') {
8345            if (yych == '\t') goto yy1150;
8346            if (yych <= '\n') goto yy1140;
8347            goto yy1150;
8348        } else {
8349            if (yych <= '!') {
8350                if (yych <= 0x1F) goto yy1140;
8351                goto yy1150;
8352            } else {
8353                if (yych <= '"') goto yy1156;
8354                if (yych <= '/') goto yy1150;
8355            }
8356        }
8357    } else {
8358        if (yych <= 'F') {
8359            if (yych == '?') goto yy1157;
8360            if (yych <= '@') goto yy1150;
8361        } else {
8362            if (yych <= '\\') {
8363                if (yych <= '[') goto yy1150;
8364                goto yy1158;
8365            } else {
8366                if (yych <= '`') goto yy1150;
8367                if (yych >= 'g') goto yy1150;
8368            }
8369        }
8370    }
8371    ++YYCURSOR;
8372    if (YYLIMIT <= YYCURSOR) YYFILL(1);
8373    yych = *YYCURSOR;
8374    if (yych <= '9') {
8375        if (yych <= '\f') {
8376            if (yych == '\t') goto yy1150;
8377            if (yych <= '\n') goto yy1140;
8378            goto yy1150;
8379        } else {
8380            if (yych <= '!') {
8381                if (yych <= 0x1F) goto yy1140;
8382                goto yy1150;
8383            } else {
8384                if (yych <= '"') goto yy1156;
8385                if (yych <= '/') goto yy1150;
8386            }
8387        }
8388    } else {
8389        if (yych <= 'F') {
8390            if (yych == '?') goto yy1157;
8391            if (yych <= '@') goto yy1150;
8392        } else {
8393            if (yych <= '\\') {
8394                if (yych <= '[') goto yy1150;
8395                goto yy1158;
8396            } else {
8397                if (yych <= '`') goto yy1150;
8398                if (yych >= 'g') goto yy1150;
8399            }
8400        }
8401    }
8402    ++YYCURSOR;
8403    if (YYLIMIT <= YYCURSOR) YYFILL(1);
8404    yych = *YYCURSOR;
8405    if (yych <= '9') {
8406        if (yych <= '\f') {
8407            if (yych == '\t') goto yy1150;
8408            if (yych <= '\n') goto yy1140;
8409            goto yy1150;
8410        } else {
8411            if (yych <= '!') {
8412                if (yych <= 0x1F) goto yy1140;
8413                goto yy1150;
8414            } else {
8415                if (yych <= '"') goto yy1156;
8416                if (yych <= '/') goto yy1150;
8417            }
8418        }
8419    } else {
8420        if (yych <= 'F') {
8421            if (yych == '?') goto yy1157;
8422            if (yych <= '@') goto yy1150;
8423        } else {
8424            if (yych <= '\\') {
8425                if (yych <= '[') goto yy1150;
8426                goto yy1158;
8427            } else {
8428                if (yych <= '`') goto yy1150;
8429                if (yych >= 'g') goto yy1150;
8430            }
8431        }
8432    }
8433    ++YYCURSOR;
8434    if (YYLIMIT <= YYCURSOR) YYFILL(1);
8435    yych = *YYCURSOR;
8436    if (yych <= '9') {
8437        if (yych <= '\f') {
8438            if (yych == '\t') goto yy1150;
8439            if (yych <= '\n') goto yy1140;
8440            goto yy1150;
8441        } else {
8442            if (yych <= '!') {
8443                if (yych <= 0x1F) goto yy1140;
8444                goto yy1150;
8445            } else {
8446                if (yych <= '"') goto yy1156;
8447                if (yych <= '/') goto yy1150;
8448            }
8449        }
8450    } else {
8451        if (yych <= 'F') {
8452            if (yych == '?') goto yy1157;
8453            if (yych <= '@') goto yy1150;
8454        } else {
8455            if (yych <= '\\') {
8456                if (yych <= '[') goto yy1150;
8457                goto yy1158;
8458            } else {
8459                if (yych <= '`') goto yy1150;
8460                if (yych >= 'g') goto yy1150;
8461            }
8462        }
8463    }
8464    ++YYCURSOR;
8465    if (YYLIMIT <= YYCURSOR) YYFILL(1);
8466    yych = *YYCURSOR;
8467    if (yych <= '9') {
8468        if (yych <= '\f') {
8469            if (yych == '\t') goto yy1150;
8470            if (yych <= '\n') goto yy1140;
8471            goto yy1150;
8472        } else {
8473            if (yych <= '!') {
8474                if (yych <= 0x1F) goto yy1140;
8475                goto yy1150;
8476            } else {
8477                if (yych <= '"') goto yy1156;
8478                if (yych <= '/') goto yy1150;
8479            }
8480        }
8481    } else {
8482        if (yych <= 'F') {
8483            if (yych == '?') goto yy1157;
8484            if (yych <= '@') goto yy1150;
8485        } else {
8486            if (yych <= '\\') {
8487                if (yych <= '[') goto yy1150;
8488                goto yy1158;
8489            } else {
8490                if (yych <= '`') goto yy1150;
8491                if (yych >= 'g') goto yy1150;
8492            }
8493        }
8494    }
8495    ++YYCURSOR;
8496    if (YYLIMIT <= YYCURSOR) YYFILL(1);
8497    yych = *YYCURSOR;
8498    if (yych <= '9') {
8499        if (yych <= '\f') {
8500            if (yych == '\t') goto yy1150;
8501            if (yych <= '\n') goto yy1140;
8502            goto yy1150;
8503        } else {
8504            if (yych <= '!') {
8505                if (yych <= 0x1F) goto yy1140;
8506                goto yy1150;
8507            } else {
8508                if (yych <= '"') goto yy1156;
8509                if (yych <= '/') goto yy1150;
8510            }
8511        }
8512    } else {
8513        if (yych <= 'F') {
8514            if (yych == '?') goto yy1157;
8515            if (yych <= '@') goto yy1150;
8516        } else {
8517            if (yych <= '\\') {
8518                if (yych <= '[') goto yy1150;
8519                goto yy1158;
8520            } else {
8521                if (yych <= '`') goto yy1150;
8522                if (yych >= 'g') goto yy1150;
8523            }
8524        }
8525    }
8526    ++YYCURSOR;
8527    if (YYLIMIT <= YYCURSOR) YYFILL(1);
8528    yych = *YYCURSOR;
8529    if (yybm[0+yych] & 16) {
8530        goto yy1150;
8531    }
8532    if (yych <= '!') goto yy1140;
8533    if (yych <= '"') goto yy1156;
8534    if (yych <= '[') goto yy1157;
8535    goto yy1158;
8536yy1177:
8537    ++YYCURSOR;
8538    if (YYLIMIT <= YYCURSOR) YYFILL(1);
8539    yych = *YYCURSOR;
8540    if (yych <= '9') {
8541        if (yych <= '\f') {
8542            if (yych == '\t') goto yy1150;
8543            if (yych <= '\n') goto yy1140;
8544            goto yy1150;
8545        } else {
8546            if (yych <= '!') {
8547                if (yych <= 0x1F) goto yy1140;
8548                goto yy1150;
8549            } else {
8550                if (yych <= '"') goto yy1156;
8551                if (yych <= '/') goto yy1150;
8552            }
8553        }
8554    } else {
8555        if (yych <= 'F') {
8556            if (yych == '?') goto yy1157;
8557            if (yych <= '@') goto yy1150;
8558        } else {
8559            if (yych <= '\\') {
8560                if (yych <= '[') goto yy1150;
8561                goto yy1158;
8562            } else {
8563                if (yych <= '`') goto yy1150;
8564                if (yych >= 'g') goto yy1150;
8565            }
8566        }
8567    }
8568    ++YYCURSOR;
8569    if (YYLIMIT <= YYCURSOR) YYFILL(1);
8570    yych = *YYCURSOR;
8571    if (yych <= '9') {
8572        if (yych <= '\f') {
8573            if (yych == '\t') goto yy1150;
8574            if (yych <= '\n') goto yy1140;
8575            goto yy1150;
8576        } else {
8577            if (yych <= '!') {
8578                if (yych <= 0x1F) goto yy1140;
8579                goto yy1150;
8580            } else {
8581                if (yych <= '"') goto yy1156;
8582                if (yych <= '/') goto yy1150;
8583            }
8584        }
8585    } else {
8586        if (yych <= 'F') {
8587            if (yych == '?') goto yy1157;
8588            if (yych <= '@') goto yy1150;
8589        } else {
8590            if (yych <= '\\') {
8591                if (yych <= '[') goto yy1150;
8592                goto yy1158;
8593            } else {
8594                if (yych <= '`') goto yy1150;
8595                if (yych >= 'g') goto yy1150;
8596            }
8597        }
8598    }
8599    ++YYCURSOR;
8600    if (YYLIMIT <= YYCURSOR) YYFILL(1);
8601    yych = *YYCURSOR;
8602    if (yybm[0+yych] & 16) {
8603        goto yy1150;
8604    }
8605    if (yych <= '!') goto yy1140;
8606    if (yych <= '"') goto yy1156;
8607    if (yych <= '[') goto yy1157;
8608    goto yy1158;
8609yy1180:
8610    ++YYCURSOR;
8611    if (YYLIMIT <= YYCURSOR) YYFILL(1);
8612    yych = *YYCURSOR;
8613    if (yybm[0+yych] & 16) {
8614        goto yy1150;
8615    }
8616    if (yych <= '!') goto yy1140;
8617    if (yych <= '"') goto yy1156;
8618    if (yych <= '[') goto yy1159;
8619    goto yy1158;
8620yy1181:
8621    ++YYCURSOR;
8622    if (YYLIMIT <= YYCURSOR) YYFILL(1);
8623    yych = *YYCURSOR;
8624    if (yych <= '@') {
8625        if (yych <= '/') goto yy1140;
8626        if (yych >= ':') goto yy1140;
8627    } else {
8628        if (yych <= 'F') goto yy1182;
8629        if (yych <= '`') goto yy1140;
8630        if (yych >= 'g') goto yy1140;
8631    }
8632yy1182:
8633    ++YYCURSOR;
8634    if (YYLIMIT <= YYCURSOR) YYFILL(1);
8635    yych = *YYCURSOR;
8636    if (yych <= '@') {
8637        if (yych <= '/') goto yy1140;
8638        if (yych >= ':') goto yy1140;
8639    } else {
8640        if (yych <= 'F') goto yy1183;
8641        if (yych <= '`') goto yy1140;
8642        if (yych >= 'g') goto yy1140;
8643    }
8644yy1183:
8645    ++YYCURSOR;
8646    if (YYLIMIT <= YYCURSOR) YYFILL(1);
8647    yych = *YYCURSOR;
8648    if (yych <= '@') {
8649        if (yych <= '/') goto yy1140;
8650        if (yych >= ':') goto yy1140;
8651    } else {
8652        if (yych <= 'F') goto yy1184;
8653        if (yych <= '`') goto yy1140;
8654        if (yych >= 'g') goto yy1140;
8655    }
8656yy1184:
8657    ++YYCURSOR;
8658    if (YYLIMIT <= YYCURSOR) YYFILL(1);
8659    yych = *YYCURSOR;
8660    if (yych <= '@') {
8661        if (yych <= '/') goto yy1140;
8662        if (yych >= ':') goto yy1140;
8663    } else {
8664        if (yych <= 'F') goto yy1185;
8665        if (yych <= '`') goto yy1140;
8666        if (yych >= 'g') goto yy1140;
8667    }
8668yy1185:
8669    ++YYCURSOR;
8670    if (YYLIMIT <= YYCURSOR) YYFILL(1);
8671    yych = *YYCURSOR;
8672    if (yych <= '@') {
8673        if (yych <= '/') goto yy1140;
8674        if (yych >= ':') goto yy1140;
8675    } else {
8676        if (yych <= 'F') goto yy1186;
8677        if (yych <= '`') goto yy1140;
8678        if (yych >= 'g') goto yy1140;
8679    }
8680yy1186:
8681    ++YYCURSOR;
8682    if (YYLIMIT <= YYCURSOR) YYFILL(1);
8683    yych = *YYCURSOR;
8684    if (yych <= '@') {
8685        if (yych <= '/') goto yy1140;
8686        if (yych >= ':') goto yy1140;
8687    } else {
8688        if (yych <= 'F') goto yy1187;
8689        if (yych <= '`') goto yy1140;
8690        if (yych >= 'g') goto yy1140;
8691    }
8692yy1187:
8693    ++YYCURSOR;
8694    if (YYLIMIT <= YYCURSOR) YYFILL(1);
8695    yych = *YYCURSOR;
8696    if (yych <= '@') {
8697        if (yych <= '/') goto yy1140;
8698        if (yych <= '9') goto yy1150;
8699        goto yy1140;
8700    } else {
8701        if (yych <= 'F') goto yy1150;
8702        if (yych <= '`') goto yy1140;
8703        if (yych <= 'f') goto yy1150;
8704        goto yy1140;
8705    }
8706yy1188:
8707    ++YYCURSOR;
8708    if (YYLIMIT <= YYCURSOR) YYFILL(1);
8709    yych = *YYCURSOR;
8710    if (yych <= '@') {
8711        if (yych <= '/') goto yy1140;
8712        if (yych >= ':') goto yy1140;
8713    } else {
8714        if (yych <= 'F') goto yy1189;
8715        if (yych <= '`') goto yy1140;
8716        if (yych >= 'g') goto yy1140;
8717    }
8718yy1189:
8719    ++YYCURSOR;
8720    if (YYLIMIT <= YYCURSOR) YYFILL(1);
8721    yych = *YYCURSOR;
8722    if (yych <= '@') {
8723        if (yych <= '/') goto yy1140;
8724        if (yych >= ':') goto yy1140;
8725    } else {
8726        if (yych <= 'F') goto yy1190;
8727        if (yych <= '`') goto yy1140;
8728        if (yych >= 'g') goto yy1140;
8729    }
8730yy1190:
8731    ++YYCURSOR;
8732    if (YYLIMIT <= YYCURSOR) YYFILL(1);
8733    yych = *YYCURSOR;
8734    if (yych <= '@') {
8735        if (yych <= '/') goto yy1140;
8736        if (yych <= '9') goto yy1150;
8737        goto yy1140;
8738    } else {
8739        if (yych <= 'F') goto yy1150;
8740        if (yych <= '`') goto yy1140;
8741        if (yych <= 'f') goto yy1150;
8742        goto yy1140;
8743    }
8744}
8745#line 501 "cpp.re"
8746
8747}
8748
8749extrawstringlit:
8750{
8751
8752#line 8753 "cpp_re.inc"
8753{
8754    YYCTYPE yych;
8755    static const unsigned char yybm[] = {
8756          0,   0,   0,   0,   0,   0,   0,   0,
8757          0,   0,   0,   0,   0,   0,   0,   0,
8758          0,   0,   0,   0,   0,   0,   0,   0,
8759          0,   0,   0,   0,   0,   0,   0,   0,
8760          0,   0,   0,   0,   0,   0,   0,   0,
8761          0,   0,   0,   0,   0,   0,   0,   0,
8762        128, 128, 128, 128, 128, 128, 128, 128,
8763        128, 128,   0,   0,   0,   0,   0,   0,
8764          0, 128, 128, 128, 128, 128, 128,   0,
8765          0,   0,   0,   0,   0,   0,   0,   0,
8766          0,   0,   0,   0,   0,   0,   0,   0,
8767          0,   0,   0,   0,   0,   0,   0,   0,
8768          0, 128, 128, 128, 128, 128, 128,   0,
8769          0,   0,   0,   0,   0,   0,   0,   0,
8770          0,   0,   0,   0,   0,   0,   0,   0,
8771          0,   0,   0,   0,   0,   0,   0,   0,
8772          0,   0,   0,   0,   0,   0,   0,   0,
8773          0,   0,   0,   0,   0,   0,   0,   0,
8774          0,   0,   0,   0,   0,   0,   0,   0,
8775          0,   0,   0,   0,   0,   0,   0,   0,
8776          0,   0,   0,   0,   0,   0,   0,   0,
8777          0,   0,   0,   0,   0,   0,   0,   0,
8778          0,   0,   0,   0,   0,   0,   0,   0,
8779          0,   0,   0,   0,   0,   0,   0,   0,
8780          0,   0,   0,   0,   0,   0,   0,   0,
8781          0,   0,   0,   0,   0,   0,   0,   0,
8782          0,   0,   0,   0,   0,   0,   0,   0,
8783          0,   0,   0,   0,   0,   0,   0,   0,
8784          0,   0,   0,   0,   0,   0,   0,   0,
8785          0,   0,   0,   0,   0,   0,   0,   0,
8786          0,   0,   0,   0,   0,   0,   0,   0,
8787          0,   0,   0,   0,   0,   0,   0,   0,
8788    };
8789    if ((YYLIMIT - YYCURSOR) < 12) YYFILL(12);
8790    yych = *YYCURSOR;
8791    if (yych <= 0x1F) {
8792        if (yych <= '\n') {
8793            if (yych <= 0x08) goto yy1193;
8794            if (yych <= '\t') goto yy1194;
8795            goto yy1198;
8796        } else {
8797            if (yych <= '\f') goto yy1194;
8798            if (yych <= '\r') goto yy1200;
8799        }
8800    } else {
8801        if (yych <= '>') {
8802            if (yych == '"') goto yy1201;
8803            goto yy1194;
8804        } else {
8805            if (yych <= '?') goto yy1196;
8806            if (yych == '\\') goto yy1197;
8807            goto yy1194;
8808        }
8809    }
8810yy1193:
8811    YYCURSOR = YYMARKER;
8812    goto yy1195;
8813yy1194:
8814    ++YYCURSOR;
8815yy1195:
8816#line 508 "cpp.re"
8817    {
8818            goto extrawstringlit;
8819        }
8820#line 8821 "cpp_re.inc"
8821yy1196:
8822    yych = *(YYMARKER = ++YYCURSOR);
8823    if (yych == '?') goto yy1222;
8824    goto yy1195;
8825yy1197:
8826    yych = *++YYCURSOR;
8827    if (yych <= '`') {
8828        if (yych <= '7') {
8829            if (yych <= '&') {
8830                if (yych == '"') goto yy1194;
8831                goto yy1193;
8832            } else {
8833                if (yych <= '\'') goto yy1194;
8834                if (yych <= '/') goto yy1193;
8835                goto yy1207;
8836            }
8837        } else {
8838            if (yych <= 'T') {
8839                if (yych == '?') goto yy1205;
8840                goto yy1193;
8841            } else {
8842                if (yych <= 'U') goto yy1204;
8843                if (yych == '\\') goto yy1194;
8844                goto yy1193;
8845            }
8846        }
8847    } else {
8848        if (yych <= 'r') {
8849            if (yych <= 'f') {
8850                if (yych <= 'b') goto yy1194;
8851                if (yych <= 'e') goto yy1193;
8852                goto yy1194;
8853            } else {
8854                if (yych == 'n') goto yy1194;
8855                if (yych <= 'q') goto yy1193;
8856                goto yy1194;
8857            }
8858        } else {
8859            if (yych <= 'u') {
8860                if (yych <= 's') goto yy1193;
8861                if (yych <= 't') goto yy1194;
8862                goto yy1203;
8863            } else {
8864                if (yych <= 'v') goto yy1194;
8865                if (yych == 'x') goto yy1206;
8866                goto yy1193;
8867            }
8868        }
8869    }
8870yy1198:
8871    ++YYCURSOR;
8872yy1199:
8873#line 513 "cpp.re"
8874    {
8875            s->line += count_backslash_newlines(s, cursor) +1;
8876            cursor.column = 1;
8877            goto extrawstringlit;
8878        }
8879#line 8880 "cpp_re.inc"
8880yy1200:
8881    yych = *++YYCURSOR;
8882    if (yych == '\n') goto yy1198;
8883    goto yy1199;
8884yy1201:
8885    ++YYCURSOR;
8886#line 519 "cpp.re"
8887    { BOOST_WAVE_RET(T_RAWSTRINGLIT); }
8888#line 8889 "cpp_re.inc"
8889yy1203:
8890    yych = *++YYCURSOR;
8891    if (yych <= '@') {
8892        if (yych <= '/') goto yy1193;
8893        if (yych <= '9') goto yy1219;
8894        goto yy1193;
8895    } else {
8896        if (yych <= 'F') goto yy1219;
8897        if (yych <= '`') goto yy1193;
8898        if (yych <= 'f') goto yy1219;
8899        goto yy1193;
8900    }
8901yy1204:
8902    yych = *++YYCURSOR;
8903    if (yych <= '@') {
8904        if (yych <= '/') goto yy1193;
8905        if (yych <= '9') goto yy1212;
8906        goto yy1193;
8907    } else {
8908        if (yych <= 'F') goto yy1212;
8909        if (yych <= '`') goto yy1193;
8910        if (yych <= 'f') goto yy1212;
8911        goto yy1193;
8912    }
8913yy1205:
8914    yych = *(YYMARKER = ++YYCURSOR);
8915    if (yych == '?') goto yy1211;
8916    goto yy1195;
8917yy1206:
8918    yych = *++YYCURSOR;
8919    if (yybm[0+yych] & 128) {
8920        goto yy1209;
8921    }
8922    goto yy1193;
8923yy1207:
8924    yych = *++YYCURSOR;
8925    if (yych <= '/') goto yy1195;
8926    if (yych >= '8') goto yy1195;
8927    yych = *++YYCURSOR;
8928    if (yych <= '/') goto yy1195;
8929    if (yych <= '7') goto yy1194;
8930    goto yy1195;
8931yy1209:
8932    ++YYCURSOR;
8933    if (YYLIMIT <= YYCURSOR) YYFILL(1);
8934    yych = *YYCURSOR;
8935    if (yybm[0+yych] & 128) {
8936        goto yy1209;
8937    }
8938    goto yy1195;
8939yy1211:
8940    yych = *++YYCURSOR;
8941    if (yych == '/') goto yy1194;
8942    goto yy1193;
8943yy1212:
8944    yych = *++YYCURSOR;
8945    if (yych <= '@') {
8946        if (yych <= '/') goto yy1193;
8947        if (yych >= ':') goto yy1193;
8948    } else {
8949        if (yych <= 'F') goto yy1213;
8950        if (yych <= '`') goto yy1193;
8951        if (yych >= 'g') goto yy1193;
8952    }
8953yy1213:
8954    yych = *++YYCURSOR;
8955    if (yych <= '@') {
8956        if (yych <= '/') goto yy1193;
8957        if (yych >= ':') goto yy1193;
8958    } else {
8959        if (yych <= 'F') goto yy1214;
8960        if (yych <= '`') goto yy1193;
8961        if (yych >= 'g') goto yy1193;
8962    }
8963yy1214:
8964    yych = *++YYCURSOR;
8965    if (yych <= '@') {
8966        if (yych <= '/') goto yy1193;
8967        if (yych >= ':') goto yy1193;
8968    } else {
8969        if (yych <= 'F') goto yy1215;
8970        if (yych <= '`') goto yy1193;
8971        if (yych >= 'g') goto yy1193;
8972    }
8973yy1215:
8974    yych = *++YYCURSOR;
8975    if (yych <= '@') {
8976        if (yych <= '/') goto yy1193;
8977        if (yych >= ':') goto yy1193;
8978    } else {
8979        if (yych <= 'F') goto yy1216;
8980        if (yych <= '`') goto yy1193;
8981        if (yych >= 'g') goto yy1193;
8982    }
8983yy1216:
8984    yych = *++YYCURSOR;
8985    if (yych <= '@') {
8986        if (yych <= '/') goto yy1193;
8987        if (yych >= ':') goto yy1193;
8988    } else {
8989        if (yych <= 'F') goto yy1217;
8990        if (yych <= '`') goto yy1193;
8991        if (yych >= 'g') goto yy1193;
8992    }
8993yy1217:
8994    yych = *++YYCURSOR;
8995    if (yych <= '@') {
8996        if (yych <= '/') goto yy1193;
8997        if (yych >= ':') goto yy1193;
8998    } else {
8999        if (yych <= 'F') goto yy1218;
9000        if (yych <= '`') goto yy1193;
9001        if (yych >= 'g') goto yy1193;
9002    }
9003yy1218:
9004    yych = *++YYCURSOR;
9005    if (yych <= '@') {
9006        if (yych <= '/') goto yy1193;
9007        if (yych <= '9') goto yy1194;
9008        goto yy1193;
9009    } else {
9010        if (yych <= 'F') goto yy1194;
9011        if (yych <= '`') goto yy1193;
9012        if (yych <= 'f') goto yy1194;
9013        goto yy1193;
9014    }
9015yy1219:
9016    yych = *++YYCURSOR;
9017    if (yych <= '@') {
9018        if (yych <= '/') goto yy1193;
9019        if (yych >= ':') goto yy1193;
9020    } else {
9021        if (yych <= 'F') goto yy1220;
9022        if (yych <= '`') goto yy1193;
9023        if (yych >= 'g') goto yy1193;
9024    }
9025yy1220:
9026    yych = *++YYCURSOR;
9027    if (yych <= '@') {
9028        if (yych <= '/') goto yy1193;
9029        if (yych >= ':') goto yy1193;
9030    } else {
9031        if (yych <= 'F') goto yy1221;
9032        if (yych <= '`') goto yy1193;
9033        if (yych >= 'g') goto yy1193;
9034    }
9035yy1221:
9036    yych = *++YYCURSOR;
9037    if (yych <= '@') {
9038        if (yych <= '/') goto yy1193;
9039        if (yych <= '9') goto yy1194;
9040        goto yy1193;
9041    } else {
9042        if (yych <= 'F') goto yy1194;
9043        if (yych <= '`') goto yy1193;
9044        if (yych <= 'f') goto yy1194;
9045        goto yy1193;
9046    }
9047yy1222:
9048    ++YYCURSOR;
9049    if ((yych = *YYCURSOR) == '/') goto yy1197;
9050    goto yy1193;
9051}
9052#line 520 "cpp.re"
9053
9054}
9055