Back to home page

EIC code displayed by LXR

 
 

    


Warning, /include/boost/wave/cpplexer/re2clex/strict_cpp_re.inc is written in an unsupported language. File is not indexed.

0001 /* Generated by re2c 1.0.2 on Sat Oct 24 21:16:00 2020 */
0002 #line 1 "strict_cpp.re"
0003 /*=============================================================================
0004     Boost.Wave: A Standard compliant C++ preprocessor library
0005 
0006     Copyright (c) 2001 Daniel C. Nuffer
0007     Copyright (c) 2001-2011 Hartmut Kaiser.
0008     Distributed under the Boost Software License, Version 1.0. (See accompanying
0009     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
0010 
0011     This is a strict lexer conforming to the Standard as close as possible.
0012     It does not allow the '$' to be part of identifiers. If you need the '$'
0013     character in identifiers please include the lexer definition provided
0014     in the cpp.re file.
0015 
0016     TODO:
0017         handle errors better.
0018 =============================================================================*/
0019 
0020 #line 40 "strict_cpp.re"
0021 
0022 
0023 
0024 #line 25 "strict_cpp_re.inc"
0025 {
0026     YYCTYPE yych;
0027     unsigned int yyaccept = 0;
0028     static const unsigned char yybm[] = {
0029         /* table 1 .. 8: 0 */
0030           0,   0,   0,   0,   0,   0,   0,   0, 
0031           0, 203,   8, 203, 203,   8,   0,   0, 
0032           0,   0,   0,   0,   0,   0,   0,   0, 
0033           0,   0,   0,   0,   0,   0,   0,   0, 
0034         203, 203, 138, 203, 203, 203, 203, 201, 
0035         203, 203, 227, 203, 203, 203, 203, 203, 
0036         203, 203, 203, 203, 203, 203, 203, 203, 
0037         203, 203, 203, 203, 203, 203,  75, 204, 
0038         203, 203, 203, 203, 203, 203, 203, 203, 
0039         203, 203, 203, 203, 203, 203, 203, 203, 
0040         203, 203, 203, 203, 203, 203, 203, 203, 
0041         203, 203, 203, 203, 216, 203, 203, 203, 
0042         203, 203, 203, 203, 203, 203, 203, 203, 
0043         203, 203, 203, 203, 203, 203, 203, 203, 
0044         203, 203, 203, 203, 203, 203, 203, 203, 
0045         203, 203, 203, 203, 203, 203, 203, 203, 
0046         203, 203, 203, 203, 203, 203, 203, 203, 
0047         203, 203, 203, 203, 203, 203, 203, 203, 
0048         203, 203, 203, 203, 203, 203, 203, 203, 
0049         203, 203, 203, 203, 203, 203, 203, 203, 
0050         203, 203, 203, 203, 203, 203, 203, 203, 
0051         203, 203, 203, 203, 203, 203, 203, 203, 
0052         203, 203, 203, 203, 203, 203, 203, 203, 
0053         203, 203, 203, 203, 203, 203, 203, 203, 
0054         203, 203, 203, 203, 203, 203, 203, 203, 
0055         203, 203, 203, 203, 203, 203, 203, 203, 
0056         203, 203, 203, 203, 203, 203, 203, 203, 
0057         203, 203, 203, 203, 203, 203, 203, 203, 
0058         203, 203, 203, 203, 203, 203, 203, 203, 
0059         203, 203, 203, 203, 203, 203, 203, 203, 
0060         203, 203, 203, 203, 203, 203, 203, 203, 
0061         203, 203, 203, 203, 203, 203, 203, 203, 
0062         /* table 9 .. 10: 256 */
0063           0,   0,   0,   0,   0,   0,   0,   0, 
0064           0,  64,   0,  64,  64,   0,   0,   0, 
0065           0,   0,   0,   0,   0,   0,   0,   0, 
0066           0,   0,   0,   0,   0,   0,   0,   0, 
0067          64,   0,   0,   0,   0,   0,   0,   0, 
0068           0,   0,   0,   0,   0,   0,   0,   0, 
0069         128, 128, 128, 128, 128, 128, 128, 128, 
0070         128, 128,   0,   0,   0,   0,   0,   0, 
0071           0, 128, 128, 128, 128, 128, 128, 128, 
0072         128, 128, 128, 128, 128, 128, 128, 128, 
0073         128, 128, 128, 128, 128, 128, 128, 128, 
0074         128, 128, 128,   0,   0,   0,   0, 128, 
0075           0, 128, 128, 128, 128, 128, 128, 128, 
0076         128, 128, 128, 128, 128, 128, 128, 128, 
0077         128, 128, 128, 128, 128, 128, 128, 128, 
0078         128, 128, 128,   0,   0,   0,   0,   0, 
0079           0,   0,   0,   0,   0,   0,   0,   0, 
0080           0,   0,   0,   0,   0,   0,   0,   0, 
0081           0,   0,   0,   0,   0,   0,   0,   0, 
0082           0,   0,   0,   0,   0,   0,   0,   0, 
0083           0,   0,   0,   0,   0,   0,   0,   0, 
0084           0,   0,   0,   0,   0,   0,   0,   0, 
0085           0,   0,   0,   0,   0,   0,   0,   0, 
0086           0,   0,   0,   0,   0,   0,   0,   0, 
0087           0,   0,   0,   0,   0,   0,   0,   0, 
0088           0,   0,   0,   0,   0,   0,   0,   0, 
0089           0,   0,   0,   0,   0,   0,   0,   0, 
0090           0,   0,   0,   0,   0,   0,   0,   0, 
0091           0,   0,   0,   0,   0,   0,   0,   0, 
0092           0,   0,   0,   0,   0,   0,   0,   0, 
0093           0,   0,   0,   0,   0,   0,   0,   0, 
0094           0,   0,   0,   0,   0,   0,   0,   0, 
0095     };
0096     if ((YYLIMIT - YYCURSOR) < 17) YYFILL(17);
0097     yych = *YYCURSOR;
0098     if (yybm[256+yych] & 64) {
0099         goto yy6;
0100     }
0101     switch (yych) {
0102     case 0x00:    goto yy2;
0103     case 0x01:
0104     case 0x02:
0105     case 0x03:
0106     case 0x04:
0107     case 0x05:
0108     case 0x06:
0109     case 0x07:
0110     case 0x08:
0111     case 0x0E:
0112     case 0x0F:
0113     case 0x10:
0114     case 0x11:
0115     case 0x12:
0116     case 0x13:
0117     case 0x14:
0118     case 0x15:
0119     case 0x16:
0120     case 0x17:
0121     case 0x18:
0122     case 0x19:
0123     case 0x1A:
0124     case 0x1B:
0125     case 0x1C:
0126     case 0x1D:
0127     case 0x1E:
0128     case 0x1F:    goto yy4;
0129     case '\t':
0130     case '\n':    goto yy9;
0131     case '\v':
0132     case '\f':
0133     case '\r':    goto yy11;
0134     case ' ':
0135     case '!':    goto yy12;
0136     case '"':    goto yy14;
0137     case '#':    goto yy16;
0138     case '%':    goto yy19;
0139     case '&':    goto yy21;
0140     case '\'':    goto yy23;
0141     case '(':    goto yy24;
0142     case ')':    goto yy26;
0143     case '*':    goto yy28;
0144     case '+':    goto yy30;
0145     case ',':    goto yy32;
0146     case '-':    goto yy34;
0147     case '.':    goto yy36;
0148     case '/':    goto yy38;
0149     case '0':
0150     case '1':
0151     case '2':
0152     case '3':
0153     case '4':
0154     case '5':
0155     case '6':
0156     case '7':
0157     case '8':
0158     case '9':    goto yy40;
0159     case ':':    goto yy42;
0160     case ';':    goto yy44;
0161     case '<':    goto yy46;
0162     case '=':    goto yy48;
0163     case '>':    goto yy50;
0164     case '?':    goto yy52;
0165     case 'A':
0166     case 'B':
0167     case 'C':
0168     case 'D':
0169     case 'E':
0170     case 'F':
0171     case 'G':
0172     case 'H':
0173     case 'I':
0174     case 'J':
0175     case 'K':
0176     case 'M':
0177     case 'N':
0178     case 'O':
0179     case 'P':
0180     case 'Q':
0181     case 'S':
0182     case 'T':
0183     case 'V':
0184     case 'W':
0185     case 'X':
0186     case 'Y':
0187     case 'Z':
0188     case 'h':
0189     case 'j':
0190     case 'k':
0191     case 'q':
0192     case 'y':
0193     case 'z':    goto yy54;
0194     case 'L':    goto yy57;
0195     case 'R':    goto yy58;
0196     case 'U':    goto yy59;
0197     case '[':    goto yy60;
0198     case '\\':    goto yy62;
0199     case ']':    goto yy63;
0200     case '^':    goto yy65;
0201     case '_':    goto yy67;
0202     case 'a':    goto yy68;
0203     case 'b':    goto yy69;
0204     case 'c':    goto yy70;
0205     case 'd':    goto yy71;
0206     case 'e':    goto yy72;
0207     case 'f':    goto yy73;
0208     case 'g':    goto yy74;
0209     case 'i':    goto yy75;
0210     case 'l':    goto yy76;
0211     case 'm':    goto yy77;
0212     case 'n':    goto yy78;
0213     case 'o':    goto yy79;
0214     case 'p':    goto yy80;
0215     case 'r':    goto yy81;
0216     case 's':    goto yy82;
0217     case 't':    goto yy83;
0218     case 'u':    goto yy84;
0219     case 'v':    goto yy85;
0220     case 'w':    goto yy86;
0221     case 'x':    goto yy87;
0222     case '{':    goto yy88;
0223     case '|':    goto yy90;
0224     case '}':    goto yy92;
0225     case '~':    goto yy94;
0226     default:    goto yy18;
0227     }
0228 yy2:
0229     ++YYCURSOR;
0230 #line 353 "strict_cpp.re"
0231     {
0232         if (s->eof && cursor != s->eof)
0233         {
0234             BOOST_WAVE_UPDATE_CURSOR();     // adjust the input cursor
0235             (*s->error_proc)(s, lexing_exception::generic_lexing_error,
0236                 "invalid character '\\000' in input stream");
0237         }
0238         BOOST_WAVE_RET(T_EOF);
0239     }
0240 #line 241 "strict_cpp_re.inc"
0241 yy4:
0242     ++YYCURSOR;
0243 #line 366 "strict_cpp.re"
0244     {
0245         // flag the error
0246         BOOST_WAVE_UPDATE_CURSOR();     // adjust the input cursor
0247         (*s->error_proc)(s, lexing_exception::generic_lexing_error,
0248             "invalid character '\\%03o' in input stream", *--YYCURSOR);
0249     }
0250 #line 251 "strict_cpp_re.inc"
0251 yy6:
0252     ++YYCURSOR;
0253     if (YYLIMIT <= YYCURSOR) YYFILL(1);
0254     yych = *YYCURSOR;
0255     if (yybm[256+yych] & 64) {
0256         goto yy6;
0257     }
0258 #line 343 "strict_cpp.re"
0259     { BOOST_WAVE_RET(T_SPACE); }
0260 #line 261 "strict_cpp_re.inc"
0261 yy9:
0262     ++YYCURSOR;
0263 yy10:
0264 #line 346 "strict_cpp.re"
0265     {
0266         s->line++;
0267         cursor.column = 1;
0268         BOOST_WAVE_RET(T_NEWLINE);
0269     }
0270 #line 271 "strict_cpp_re.inc"
0271 yy11:
0272     yych = *++YYCURSOR;
0273     if (yych == '\n') goto yy9;
0274     goto yy10;
0275 yy12:
0276     yych = *++YYCURSOR;
0277     if (yych == '=') goto yy96;
0278 #line 209 "strict_cpp.re"
0279     { BOOST_WAVE_RET(T_NOT); }
0280 #line 281 "strict_cpp_re.inc"
0281 yy14:
0282     yyaccept = 0;
0283     yych = *(YYMARKER = ++YYCURSOR);
0284     if (yych <= '\n') {
0285         if (yych == '\t') goto yy99;
0286     } else {
0287         if (yych <= '\f') goto yy99;
0288         if (yych >= ' ') goto yy99;
0289     }
0290 yy15:
0291 #line 363 "strict_cpp.re"
0292     { BOOST_WAVE_RET(TOKEN_FROM_ID(*s->tok, UnknownTokenType)); }
0293 #line 294 "strict_cpp_re.inc"
0294 yy16:
0295     yyaccept = 1;
0296     yych = *(YYMARKER = ++YYCURSOR);
0297     if (yych <= 'c') {
0298         if (yych <= ' ') {
0299             if (yych <= '\n') {
0300                 if (yych == '\t') goto yy106;
0301             } else {
0302                 if (yych <= '\f') goto yy106;
0303                 if (yych >= ' ') goto yy106;
0304             }
0305         } else {
0306             if (yych <= '.') {
0307                 if (yych == '#') goto yy107;
0308             } else {
0309                 if (yych <= '/') goto yy106;
0310                 if (yych == '?') goto yy110;
0311             }
0312         }
0313     } else {
0314         if (yych <= 'p') {
0315             if (yych <= 'i') {
0316                 if (yych <= 'e') goto yy106;
0317                 if (yych >= 'i') goto yy106;
0318             } else {
0319                 if (yych == 'l') goto yy106;
0320                 if (yych >= 'p') goto yy106;
0321             }
0322         } else {
0323             if (yych <= 't') {
0324                 if (yych == 'r') goto yy106;
0325             } else {
0326                 if (yych == 'v') goto yy17;
0327                 if (yych <= 'w') goto yy106;
0328             }
0329         }
0330     }
0331 yy17:
0332 #line 158 "strict_cpp.re"
0333     { BOOST_WAVE_RET(T_POUND); }
0334 #line 335 "strict_cpp_re.inc"
0335 yy18:
0336     ++YYCURSOR;
0337     goto yy15;
0338 yy19:
0339     yych = *++YYCURSOR;
0340     if (yych <= '<') {
0341         if (yych == ':') goto yy119;
0342     } else {
0343         if (yych <= '=') goto yy121;
0344         if (yych <= '>') goto yy123;
0345     }
0346 #line 197 "strict_cpp.re"
0347     { BOOST_WAVE_RET(T_PERCENT); }
0348 #line 349 "strict_cpp_re.inc"
0349 yy21:
0350     yych = *++YYCURSOR;
0351     if (yych == '&') goto yy125;
0352     if (yych == '=') goto yy127;
0353 #line 201 "strict_cpp.re"
0354     { BOOST_WAVE_RET(T_AND); }
0355 #line 356 "strict_cpp_re.inc"
0356 yy23:
0357     yyaccept = 0;
0358     yych = *(YYMARKER = ++YYCURSOR);
0359     if (yych <= '\f') {
0360         if (yych == '\t') goto yy130;
0361         if (yych <= '\n') goto yy15;
0362         goto yy130;
0363     } else {
0364         if (yych <= 0x1F) goto yy15;
0365         if (yych == '\'') goto yy15;
0366         goto yy130;
0367     }
0368 yy24:
0369     ++YYCURSOR;
0370 #line 166 "strict_cpp.re"
0371     { BOOST_WAVE_RET(T_LEFTPAREN); }
0372 #line 373 "strict_cpp_re.inc"
0373 yy26:
0374     ++YYCURSOR;
0375 #line 167 "strict_cpp.re"
0376     { BOOST_WAVE_RET(T_RIGHTPAREN); }
0377 #line 378 "strict_cpp_re.inc"
0378 yy28:
0379     yych = *++YYCURSOR;
0380     if (yych == '=') goto yy133;
0381 #line 195 "strict_cpp.re"
0382     { BOOST_WAVE_RET(T_STAR); }
0383 #line 384 "strict_cpp_re.inc"
0384 yy30:
0385     yych = *++YYCURSOR;
0386     if (yych == '+') goto yy135;
0387     if (yych == '=') goto yy137;
0388 #line 193 "strict_cpp.re"
0389     { BOOST_WAVE_RET(T_PLUS); }
0390 #line 391 "strict_cpp_re.inc"
0391 yy32:
0392     ++YYCURSOR;
0393 #line 255 "strict_cpp.re"
0394     { BOOST_WAVE_RET(T_COMMA); }
0395 #line 396 "strict_cpp_re.inc"
0396 yy34:
0397     yych = *++YYCURSOR;
0398     if (yych <= '<') {
0399         if (yych == '-') goto yy139;
0400     } else {
0401         if (yych <= '=') goto yy141;
0402         if (yych <= '>') goto yy143;
0403     }
0404 #line 194 "strict_cpp.re"
0405     { BOOST_WAVE_RET(T_MINUS); }
0406 #line 407 "strict_cpp_re.inc"
0407 yy36:
0408     yyaccept = 2;
0409     yych = *(YYMARKER = ++YYCURSOR);
0410     if (yych <= '-') {
0411         if (yych == '*') goto yy145;
0412     } else {
0413         if (yych <= '.') goto yy147;
0414         if (yych <= '/') goto yy37;
0415         if (yych <= '9') goto yy40;
0416     }
0417 yy37:
0418 #line 182 "strict_cpp.re"
0419     { BOOST_WAVE_RET(T_DOT); }
0420 #line 421 "strict_cpp_re.inc"
0421 yy38:
0422     yych = *++YYCURSOR;
0423     if (yych <= '.') {
0424         if (yych == '*') goto yy148;
0425     } else {
0426         if (yych <= '/') goto yy150;
0427         if (yych == '=') goto yy152;
0428     }
0429 #line 196 "strict_cpp.re"
0430     { BOOST_WAVE_RET(T_DIVIDE); }
0431 #line 432 "strict_cpp_re.inc"
0432 yy40:
0433     ++YYCURSOR;
0434 #line 45 "strict_cpp.re"
0435     { goto pp_number; }
0436 #line 437 "strict_cpp_re.inc"
0437 yy42:
0438     yych = *++YYCURSOR;
0439     if (yych == ':') goto yy154;
0440     if (yych == '>') goto yy156;
0441 #line 169 "strict_cpp.re"
0442     { BOOST_WAVE_RET(T_COLON); }
0443 #line 444 "strict_cpp_re.inc"
0444 yy44:
0445     ++YYCURSOR;
0446 #line 168 "strict_cpp.re"
0447     { BOOST_WAVE_RET(T_SEMICOLON); }
0448 #line 449 "strict_cpp_re.inc"
0449 yy46:
0450     yych = *++YYCURSOR;
0451     if (yych <= ':') {
0452         if (yych == '%') goto yy158;
0453         if (yych >= ':') goto yy160;
0454     } else {
0455         if (yych <= ';') goto yy47;
0456         if (yych <= '<') goto yy162;
0457         if (yych <= '=') goto yy164;
0458     }
0459 yy47:
0460 #line 212 "strict_cpp.re"
0461     { BOOST_WAVE_RET(T_LESS); }
0462 #line 463 "strict_cpp_re.inc"
0463 yy48:
0464     yych = *++YYCURSOR;
0465     if (yych == '=') goto yy166;
0466 #line 211 "strict_cpp.re"
0467     { BOOST_WAVE_RET(T_ASSIGN); }
0468 #line 469 "strict_cpp_re.inc"
0469 yy50:
0470     yych = *++YYCURSOR;
0471     if (yych <= '<') goto yy51;
0472     if (yych <= '=') goto yy168;
0473     if (yych <= '>') goto yy170;
0474 yy51:
0475 #line 213 "strict_cpp.re"
0476     { BOOST_WAVE_RET(T_GREATER); }
0477 #line 478 "strict_cpp_re.inc"
0478 yy52:
0479     yyaccept = 3;
0480     yych = *(YYMARKER = ++YYCURSOR);
0481     if (yych == '?') goto yy172;
0482 yy53:
0483 #line 171 "strict_cpp.re"
0484     { BOOST_WAVE_RET(T_QUESTION_MARK); }
0485 #line 486 "strict_cpp_re.inc"
0486 yy54:
0487     yyaccept = 4;
0488     YYMARKER = ++YYCURSOR;
0489     if (YYLIMIT <= YYCURSOR) YYFILL(1);
0490     yych = *YYCURSOR;
0491 yy55:
0492     if (yybm[256+yych] & 128) {
0493         goto yy54;
0494     }
0495     if (yych == '?') goto yy173;
0496     if (yych == '\\') goto yy174;
0497 yy56:
0498 #line 314 "strict_cpp.re"
0499     { BOOST_WAVE_RET(T_IDENTIFIER); }
0500 #line 501 "strict_cpp_re.inc"
0501 yy57:
0502     yyaccept = 4;
0503     yych = *(YYMARKER = ++YYCURSOR);
0504     if (yych <= '&') {
0505         if (yych == '"') goto yy98;
0506         goto yy55;
0507     } else {
0508         if (yych <= '\'') goto yy175;
0509         if (yych != 'R') goto yy55;
0510     }
0511 yy58:
0512     yyaccept = 4;
0513     yych = *(YYMARKER = ++YYCURSOR);
0514     if (yych == '"') goto yy176;
0515     goto yy55;
0516 yy59:
0517     yyaccept = 4;
0518     yych = *(YYMARKER = ++YYCURSOR);
0519     if (yych <= '&') {
0520         if (yych == '"') goto yy178;
0521         goto yy55;
0522     } else {
0523         if (yych <= '\'') goto yy180;
0524         if (yych == 'R') goto yy182;
0525         goto yy55;
0526     }
0527 yy60:
0528     ++YYCURSOR;
0529 #line 152 "strict_cpp.re"
0530     { BOOST_WAVE_RET(T_LEFTBRACKET); }
0531 #line 532 "strict_cpp_re.inc"
0532 yy62:
0533     yyaccept = 0;
0534     yych = *(YYMARKER = ++YYCURSOR);
0535     if (yych == 'U') goto yy183;
0536     if (yych == 'u') goto yy184;
0537     goto yy15;
0538 yy63:
0539     ++YYCURSOR;
0540 #line 155 "strict_cpp.re"
0541     { BOOST_WAVE_RET(T_RIGHTBRACKET); }
0542 #line 543 "strict_cpp_re.inc"
0543 yy65:
0544     yych = *++YYCURSOR;
0545     if (yych == '=') goto yy185;
0546 #line 198 "strict_cpp.re"
0547     { BOOST_WAVE_RET(T_XOR); }
0548 #line 549 "strict_cpp_re.inc"
0549 yy67:
0550     yyaccept = 4;
0551     yych = *(YYMARKER = ++YYCURSOR);
0552     switch (yych) {
0553     case '_':    goto yy187;
0554     case 'a':    goto yy188;
0555     case 'b':    goto yy189;
0556     case 'c':    goto yy190;
0557     case 'd':    goto yy191;
0558     case 'f':    goto yy192;
0559     case 'i':    goto yy193;
0560     case 's':    goto yy194;
0561     default:    goto yy55;
0562     }
0563 yy68:
0564     yyaccept = 4;
0565     yych = *(YYMARKER = ++YYCURSOR);
0566     switch (yych) {
0567     case 'l':    goto yy195;
0568     case 'n':    goto yy196;
0569     case 's':    goto yy197;
0570     case 'u':    goto yy198;
0571     default:    goto yy55;
0572     }
0573 yy69:
0574     yyaccept = 4;
0575     yych = *(YYMARKER = ++YYCURSOR);
0576     if (yych <= 'n') {
0577         if (yych == 'i') goto yy199;
0578         goto yy55;
0579     } else {
0580         if (yych <= 'o') goto yy200;
0581         if (yych == 'r') goto yy201;
0582         goto yy55;
0583     }
0584 yy70:
0585     yyaccept = 4;
0586     yych = *(YYMARKER = ++YYCURSOR);
0587     switch (yych) {
0588     case 'a':    goto yy202;
0589     case 'h':    goto yy203;
0590     case 'l':    goto yy204;
0591     case 'o':    goto yy205;
0592     default:    goto yy55;
0593     }
0594 yy71:
0595     yyaccept = 4;
0596     yych = *(YYMARKER = ++YYCURSOR);
0597     if (yych <= 'n') {
0598         if (yych == 'e') goto yy206;
0599         goto yy55;
0600     } else {
0601         if (yych <= 'o') goto yy207;
0602         if (yych == 'y') goto yy209;
0603         goto yy55;
0604     }
0605 yy72:
0606     yyaccept = 4;
0607     yych = *(YYMARKER = ++YYCURSOR);
0608     if (yych <= 'm') {
0609         if (yych == 'l') goto yy210;
0610         goto yy55;
0611     } else {
0612         if (yych <= 'n') goto yy211;
0613         if (yych == 'x') goto yy212;
0614         goto yy55;
0615     }
0616 yy73:
0617     yyaccept = 4;
0618     yych = *(YYMARKER = ++YYCURSOR);
0619     switch (yych) {
0620     case 'a':    goto yy213;
0621     case 'l':    goto yy214;
0622     case 'o':    goto yy215;
0623     case 'r':    goto yy216;
0624     default:    goto yy55;
0625     }
0626 yy74:
0627     yyaccept = 4;
0628     yych = *(YYMARKER = ++YYCURSOR);
0629     if (yych == 'o') goto yy217;
0630     goto yy55;
0631 yy75:
0632     yyaccept = 4;
0633     yych = *(YYMARKER = ++YYCURSOR);
0634     if (yych <= 'l') {
0635         if (yych == 'f') goto yy218;
0636         goto yy55;
0637     } else {
0638         if (yych <= 'm') goto yy220;
0639         if (yych <= 'n') goto yy221;
0640         goto yy55;
0641     }
0642 yy76:
0643     yyaccept = 4;
0644     yych = *(YYMARKER = ++YYCURSOR);
0645     if (yych == 'o') goto yy222;
0646     goto yy55;
0647 yy77:
0648     yyaccept = 4;
0649     yych = *(YYMARKER = ++YYCURSOR);
0650     if (yych == 'u') goto yy223;
0651     goto yy55;
0652 yy78:
0653     yyaccept = 4;
0654     yych = *(YYMARKER = ++YYCURSOR);
0655     switch (yych) {
0656     case 'a':    goto yy224;
0657     case 'e':    goto yy225;
0658     case 'o':    goto yy226;
0659     case 'u':    goto yy227;
0660     default:    goto yy55;
0661     }
0662 yy79:
0663     yyaccept = 4;
0664     yych = *(YYMARKER = ++YYCURSOR);
0665     if (yych == 'p') goto yy228;
0666     if (yych == 'r') goto yy229;
0667     goto yy55;
0668 yy80:
0669     yyaccept = 4;
0670     yych = *(YYMARKER = ++YYCURSOR);
0671     if (yych == 'r') goto yy231;
0672     if (yych == 'u') goto yy232;
0673     goto yy55;
0674 yy81:
0675     yyaccept = 4;
0676     yych = *(YYMARKER = ++YYCURSOR);
0677     if (yych == 'e') goto yy233;
0678     goto yy55;
0679 yy82:
0680     yyaccept = 4;
0681     yych = *(YYMARKER = ++YYCURSOR);
0682     if (yych <= 's') {
0683         if (yych <= 'g') goto yy55;
0684         if (yych <= 'h') goto yy234;
0685         if (yych <= 'i') goto yy235;
0686         goto yy55;
0687     } else {
0688         if (yych <= 't') goto yy236;
0689         if (yych == 'w') goto yy237;
0690         goto yy55;
0691     }
0692 yy83:
0693     yyaccept = 4;
0694     yych = *(YYMARKER = ++YYCURSOR);
0695     switch (yych) {
0696     case 'e':    goto yy238;
0697     case 'h':    goto yy239;
0698     case 'r':    goto yy240;
0699     case 'y':    goto yy241;
0700     default:    goto yy55;
0701     }
0702 yy84:
0703     yyaccept = 4;
0704     yych = *(YYMARKER = ++YYCURSOR);
0705     if (yych <= '8') {
0706         if (yych <= '&') {
0707             if (yych == '"') goto yy178;
0708             goto yy55;
0709         } else {
0710             if (yych <= '\'') goto yy180;
0711             if (yych <= '7') goto yy55;
0712             goto yy242;
0713         }
0714     } else {
0715         if (yych <= 'm') {
0716             if (yych == 'R') goto yy182;
0717             goto yy55;
0718         } else {
0719             if (yych <= 'n') goto yy243;
0720             if (yych == 's') goto yy244;
0721             goto yy55;
0722         }
0723     }
0724 yy85:
0725     yyaccept = 4;
0726     yych = *(YYMARKER = ++YYCURSOR);
0727     if (yych == 'i') goto yy245;
0728     if (yych == 'o') goto yy246;
0729     goto yy55;
0730 yy86:
0731     yyaccept = 4;
0732     yych = *(YYMARKER = ++YYCURSOR);
0733     if (yych == 'c') goto yy247;
0734     if (yych == 'h') goto yy248;
0735     goto yy55;
0736 yy87:
0737     yyaccept = 4;
0738     yych = *(YYMARKER = ++YYCURSOR);
0739     if (yych == 'o') goto yy249;
0740     goto yy55;
0741 yy88:
0742     ++YYCURSOR;
0743 #line 146 "strict_cpp.re"
0744     { BOOST_WAVE_RET(T_LEFTBRACE); }
0745 #line 746 "strict_cpp_re.inc"
0746 yy90:
0747     yyaccept = 5;
0748     yych = *(YYMARKER = ++YYCURSOR);
0749     if (yych <= '>') {
0750         if (yych == '=') goto yy250;
0751     } else {
0752         if (yych <= '?') goto yy252;
0753         if (yych == '|') goto yy253;
0754     }
0755 yy91:
0756 #line 203 "strict_cpp.re"
0757     { BOOST_WAVE_RET(T_OR); }
0758 #line 759 "strict_cpp_re.inc"
0759 yy92:
0760     ++YYCURSOR;
0761 #line 149 "strict_cpp.re"
0762     { BOOST_WAVE_RET(T_RIGHTBRACE); }
0763 #line 764 "strict_cpp_re.inc"
0764 yy94:
0765     ++YYCURSOR;
0766 #line 206 "strict_cpp.re"
0767     { BOOST_WAVE_RET(T_COMPL); }
0768 #line 769 "strict_cpp_re.inc"
0769 yy96:
0770     ++YYCURSOR;
0771 #line 232 "strict_cpp.re"
0772     { BOOST_WAVE_RET(T_NOTEQUAL); }
0773 #line 774 "strict_cpp_re.inc"
0774 yy98:
0775     ++YYCURSOR;
0776     if (YYLIMIT <= YYCURSOR) YYFILL(1);
0777     yych = *YYCURSOR;
0778 yy99:
0779     if (yybm[0+yych] & 1) {
0780         goto yy98;
0781     }
0782     if (yych <= 0x1F) goto yy100;
0783     if (yych <= '"') goto yy101;
0784     if (yych <= '?') goto yy103;
0785     goto yy104;
0786 yy100:
0787     YYCURSOR = YYMARKER;
0788     if (yyaccept <= 60) {
0789         if (yyaccept <= 30) {
0790             if (yyaccept <= 15) {
0791                 if (yyaccept <= 7) {
0792                     if (yyaccept <= 3) {
0793                         if (yyaccept <= 1) {
0794                             if (yyaccept == 0) {
0795                                 goto yy15;
0796                             } else {
0797                                 goto yy17;
0798                             }
0799                         } else {
0800                             if (yyaccept == 2) {
0801                                 goto yy37;
0802                             } else {
0803                                 goto yy53;
0804                             }
0805                         }
0806                     } else {
0807                         if (yyaccept <= 5) {
0808                             if (yyaccept == 4) {
0809                                 goto yy56;
0810                             } else {
0811                                 goto yy91;
0812                             }
0813                         } else {
0814                             if (yyaccept == 6) {
0815                                 goto yy120;
0816                             } else {
0817                                 goto yy208;
0818                             }
0819                         }
0820                     }
0821                 } else {
0822                     if (yyaccept <= 11) {
0823                         if (yyaccept <= 9) {
0824                             if (yyaccept == 8) {
0825                                 goto yy219;
0826                             } else {
0827                                 goto yy230;
0828                             }
0829                         } else {
0830                             if (yyaccept == 10) {
0831                                 goto yy268;
0832                             } else {
0833                                 goto yy294;
0834                             }
0835                         }
0836                     } else {
0837                         if (yyaccept <= 13) {
0838                             if (yyaccept == 12) {
0839                                 goto yy304;
0840                             } else {
0841                                 goto yy308;
0842                             }
0843                         } else {
0844                             if (yyaccept == 14) {
0845                                 goto yy330;
0846                             } else {
0847                                 goto yy332;
0848                             }
0849                         }
0850                     }
0851                 }
0852             } else {
0853                 if (yyaccept <= 23) {
0854                     if (yyaccept <= 19) {
0855                         if (yyaccept <= 17) {
0856                             if (yyaccept == 16) {
0857                                 goto yy356;
0858                             } else {
0859                                 goto yy362;
0860                             }
0861                         } else {
0862                             if (yyaccept == 18) {
0863                                 goto yy367;
0864                             } else {
0865                                 goto yy370;
0866                             }
0867                         }
0868                     } else {
0869                         if (yyaccept <= 21) {
0870                             if (yyaccept == 20) {
0871                                 goto yy392;
0872                             } else {
0873                                 goto yy403;
0874                             }
0875                         } else {
0876                             if (yyaccept == 22) {
0877                                 goto yy450;
0878                             } else {
0879                                 goto yy460;
0880                             }
0881                         }
0882                     }
0883                 } else {
0884                     if (yyaccept <= 27) {
0885                         if (yyaccept <= 25) {
0886                             if (yyaccept == 24) {
0887                                 goto yy464;
0888                             } else {
0889                                 goto yy467;
0890                             }
0891                         } else {
0892                             if (yyaccept == 26) {
0893                                 goto yy470;
0894                             } else {
0895                                 goto yy485;
0896                             }
0897                         }
0898                     } else {
0899                         if (yyaccept <= 29) {
0900                             if (yyaccept == 28) {
0901                                 goto yy487;
0902                             } else {
0903                                 goto yy495;
0904                             }
0905                         } else {
0906                             goto yy499;
0907                         }
0908                     }
0909                 }
0910             }
0911         } else {
0912             if (yyaccept <= 45) {
0913                 if (yyaccept <= 38) {
0914                     if (yyaccept <= 34) {
0915                         if (yyaccept <= 32) {
0916                             if (yyaccept == 31) {
0917                                 goto yy522;
0918                             } else {
0919                                 goto yy526;
0920                             }
0921                         } else {
0922                             if (yyaccept == 33) {
0923                                 goto yy533;
0924                             } else {
0925                                 goto yy102;
0926                             }
0927                         }
0928                     } else {
0929                         if (yyaccept <= 36) {
0930                             if (yyaccept == 35) {
0931                                 goto yy277;
0932                             } else {
0933                                 goto yy572;
0934                             }
0935                         } else {
0936                             if (yyaccept == 37) {
0937                                 goto yy583;
0938                             } else {
0939                                 goto yy585;
0940                             }
0941                         }
0942                     }
0943                 } else {
0944                     if (yyaccept <= 42) {
0945                         if (yyaccept <= 40) {
0946                             if (yyaccept == 39) {
0947                                 goto yy587;
0948                             } else {
0949                                 goto yy592;
0950                             }
0951                         } else {
0952                             if (yyaccept == 41) {
0953                                 goto yy597;
0954                             } else {
0955                                 goto yy600;
0956                             }
0957                         }
0958                     } else {
0959                         if (yyaccept <= 44) {
0960                             if (yyaccept == 43) {
0961                                 goto yy611;
0962                             } else {
0963                                 goto yy613;
0964                             }
0965                         } else {
0966                             goto yy624;
0967                         }
0968                     }
0969                 }
0970             } else {
0971                 if (yyaccept <= 53) {
0972                     if (yyaccept <= 49) {
0973                         if (yyaccept <= 47) {
0974                             if (yyaccept == 46) {
0975                                 goto yy633;
0976                             } else {
0977                                 goto yy642;
0978                             }
0979                         } else {
0980                             if (yyaccept == 48) {
0981                                 goto yy647;
0982                             } else {
0983                                 goto yy650;
0984                             }
0985                         }
0986                     } else {
0987                         if (yyaccept <= 51) {
0988                             if (yyaccept == 50) {
0989                                 goto yy655;
0990                             } else {
0991                                 goto yy684;
0992                             }
0993                         } else {
0994                             if (yyaccept == 52) {
0995                                 goto yy687;
0996                             } else {
0997                                 goto yy689;
0998                             }
0999                         }
1000                     }
1001                 } else {
1002                     if (yyaccept <= 57) {
1003                         if (yyaccept <= 55) {
1004                             if (yyaccept == 54) {
1005                                 goto yy697;
1006                             } else {
1007                                 goto yy699;
1008                             }
1009                         } else {
1010                             if (yyaccept == 56) {
1011                                 goto yy714;
1012                             } else {
1013                                 goto yy716;
1014                             }
1015                         }
1016                     } else {
1017                         if (yyaccept <= 59) {
1018                             if (yyaccept == 58) {
1019                                 goto yy720;
1020                             } else {
1021                                 goto yy722;
1022                             }
1023                         } else {
1024                             goto yy724;
1025                         }
1026                     }
1027                 }
1028             }
1029         }
1030     } else {
1031         if (yyaccept <= 91) {
1032             if (yyaccept <= 76) {
1033                 if (yyaccept <= 68) {
1034                     if (yyaccept <= 64) {
1035                         if (yyaccept <= 62) {
1036                             if (yyaccept == 61) {
1037                                 goto yy726;
1038                             } else {
1039                                 goto yy728;
1040                             }
1041                         } else {
1042                             if (yyaccept == 63) {
1043                                 goto yy733;
1044                             } else {
1045                                 goto yy739;
1046                             }
1047                         }
1048                     } else {
1049                         if (yyaccept <= 66) {
1050                             if (yyaccept == 65) {
1051                                 goto yy744;
1052                             } else {
1053                                 goto yy746;
1054                             }
1055                         } else {
1056                             if (yyaccept == 67) {
1057                                 goto yy748;
1058                             } else {
1059                                 goto yy750;
1060                             }
1061                         }
1062                     }
1063                 } else {
1064                     if (yyaccept <= 72) {
1065                         if (yyaccept <= 70) {
1066                             if (yyaccept == 69) {
1067                                 goto yy752;
1068                             } else {
1069                                 goto yy754;
1070                             }
1071                         } else {
1072                             if (yyaccept == 71) {
1073                                 goto yy759;
1074                             } else {
1075                                 goto yy766;
1076                             }
1077                         }
1078                     } else {
1079                         if (yyaccept <= 74) {
1080                             if (yyaccept == 73) {
1081                                 goto yy781;
1082                             } else {
1083                                 goto yy783;
1084                             }
1085                         } else {
1086                             if (yyaccept == 75) {
1087                                 goto yy785;
1088                             } else {
1089                                 goto yy787;
1090                             }
1091                         }
1092                     }
1093                 }
1094             } else {
1095                 if (yyaccept <= 84) {
1096                     if (yyaccept <= 80) {
1097                         if (yyaccept <= 78) {
1098                             if (yyaccept == 77) {
1099                                 goto yy791;
1100                             } else {
1101                                 goto yy794;
1102                             }
1103                         } else {
1104                             if (yyaccept == 79) {
1105                                 goto yy796;
1106                             } else {
1107                                 goto yy800;
1108                             }
1109                         }
1110                     } else {
1111                         if (yyaccept <= 82) {
1112                             if (yyaccept == 81) {
1113                                 goto yy805;
1114                             } else {
1115                                 goto yy813;
1116                             }
1117                         } else {
1118                             if (yyaccept == 83) {
1119                                 goto yy817;
1120                             } else {
1121                                 goto yy821;
1122                             }
1123                         }
1124                     }
1125                 } else {
1126                     if (yyaccept <= 88) {
1127                         if (yyaccept <= 86) {
1128                             if (yyaccept == 85) {
1129                                 goto yy824;
1130                             } else {
1131                                 goto yy833;
1132                             }
1133                         } else {
1134                             if (yyaccept == 87) {
1135                                 goto yy837;
1136                             } else {
1137                                 goto yy840;
1138                             }
1139                         }
1140                     } else {
1141                         if (yyaccept <= 90) {
1142                             if (yyaccept == 89) {
1143                                 goto yy843;
1144                             } else {
1145                                 goto yy847;
1146                             }
1147                         } else {
1148                             goto yy852;
1149                         }
1150                     }
1151                 }
1152             }
1153         } else {
1154             if (yyaccept <= 106) {
1155                 if (yyaccept <= 99) {
1156                     if (yyaccept <= 95) {
1157                         if (yyaccept <= 93) {
1158                             if (yyaccept == 92) {
1159                                 goto yy854;
1160                             } else {
1161                                 goto yy856;
1162                             }
1163                         } else {
1164                             if (yyaccept == 94) {
1165                                 goto yy858;
1166                             } else {
1167                                 goto yy861;
1168                             }
1169                         }
1170                     } else {
1171                         if (yyaccept <= 97) {
1172                             if (yyaccept == 96) {
1173                                 goto yy867;
1174                             } else {
1175                                 goto yy869;
1176                             }
1177                         } else {
1178                             if (yyaccept == 98) {
1179                                 goto yy872;
1180                             } else {
1181                                 goto yy875;
1182                             }
1183                         }
1184                     }
1185                 } else {
1186                     if (yyaccept <= 103) {
1187                         if (yyaccept <= 101) {
1188                             if (yyaccept == 100) {
1189                                 goto yy877;
1190                             } else {
1191                                 goto yy880;
1192                             }
1193                         } else {
1194                             if (yyaccept == 102) {
1195                                 goto yy883;
1196                             } else {
1197                                 goto yy887;
1198                             }
1199                         }
1200                     } else {
1201                         if (yyaccept <= 105) {
1202                             if (yyaccept == 104) {
1203                                 goto yy890;
1204                             } else {
1205                                 goto yy892;
1206                             }
1207                         } else {
1208                             goto yy894;
1209                         }
1210                     }
1211                 }
1212             } else {
1213                 if (yyaccept <= 114) {
1214                     if (yyaccept <= 110) {
1215                         if (yyaccept <= 108) {
1216                             if (yyaccept == 107) {
1217                                 goto yy903;
1218                             } else {
1219                                 goto yy905;
1220                             }
1221                         } else {
1222                             if (yyaccept == 109) {
1223                                 goto yy907;
1224                             } else {
1225                                 goto yy909;
1226                             }
1227                         }
1228                     } else {
1229                         if (yyaccept <= 112) {
1230                             if (yyaccept == 111) {
1231                                 goto yy912;
1232                             } else {
1233                                 goto yy914;
1234                             }
1235                         } else {
1236                             if (yyaccept == 113) {
1237                                 goto yy916;
1238                             } else {
1239                                 goto yy919;
1240                             }
1241                         }
1242                     }
1243                 } else {
1244                     if (yyaccept <= 118) {
1245                         if (yyaccept <= 116) {
1246                             if (yyaccept == 115) {
1247                                 goto yy921;
1248                             } else {
1249                                 goto yy936;
1250                             }
1251                         } else {
1252                             if (yyaccept == 117) {
1253                                 goto yy953;
1254                             } else {
1255                                 goto yy957;
1256                             }
1257                         }
1258                     } else {
1259                         if (yyaccept <= 120) {
1260                             if (yyaccept == 119) {
1261                                 goto yy961;
1262                             } else {
1263                                 goto yy964;
1264                             }
1265                         } else {
1266                             goto yy968;
1267                         }
1268                     }
1269                 }
1270             }
1271         }
1272     }
1273 yy101:
1274     ++YYCURSOR;
1275 yy102:
1276 #line 273 "strict_cpp.re"
1277     { BOOST_WAVE_RET(T_STRINGLIT); }
1278 #line 1279 "strict_cpp_re.inc"
1279 yy103:
1280     ++YYCURSOR;
1281     if (YYLIMIT <= YYCURSOR) YYFILL(1);
1282     yych = *YYCURSOR;
1283     if (yybm[0+yych] & 1) {
1284         goto yy98;
1285     }
1286     if (yych <= 0x1F) goto yy100;
1287     if (yych <= '"') goto yy101;
1288     if (yych <= '?') goto yy255;
1289 yy104:
1290     ++YYCURSOR;
1291     if (YYLIMIT <= YYCURSOR) YYFILL(1);
1292     yych = *YYCURSOR;
1293     if (yych <= '`') {
1294         if (yych <= '7') {
1295             if (yych <= '&') {
1296                 if (yych == '"') goto yy98;
1297                 goto yy100;
1298             } else {
1299                 if (yych <= '\'') goto yy98;
1300                 if (yych <= '/') goto yy100;
1301                 goto yy98;
1302             }
1303         } else {
1304             if (yych <= 'T') {
1305                 if (yych == '?') goto yy98;
1306                 goto yy100;
1307             } else {
1308                 if (yych <= 'U') goto yy257;
1309                 if (yych == '\\') goto yy98;
1310                 goto yy100;
1311             }
1312         }
1313     } else {
1314         if (yych <= 'r') {
1315             if (yych <= 'f') {
1316                 if (yych <= 'b') goto yy98;
1317                 if (yych <= 'e') goto yy100;
1318                 goto yy98;
1319             } else {
1320                 if (yych == 'n') goto yy98;
1321                 if (yych <= 'q') goto yy100;
1322                 goto yy98;
1323             }
1324         } else {
1325             if (yych <= 'u') {
1326                 if (yych <= 's') goto yy100;
1327                 if (yych <= 't') goto yy98;
1328                 goto yy258;
1329             } else {
1330                 if (yych <= 'v') goto yy98;
1331                 if (yych == 'x') goto yy259;
1332                 goto yy100;
1333             }
1334         }
1335     }
1336 yy105:
1337     ++YYCURSOR;
1338     if ((YYLIMIT - YYCURSOR) < 12) YYFILL(12);
1339     yych = *YYCURSOR;
1340 yy106:
1341     if (yych <= 'h') {
1342         if (yych <= ' ') {
1343             if (yych <= '\n') {
1344                 if (yych == '\t') goto yy105;
1345                 goto yy100;
1346             } else {
1347                 if (yych <= '\f') goto yy105;
1348                 if (yych <= 0x1F) goto yy100;
1349                 goto yy105;
1350             }
1351         } else {
1352             if (yych <= 'c') {
1353                 if (yych == '/') goto yy109;
1354                 goto yy100;
1355             } else {
1356                 if (yych <= 'd') goto yy111;
1357                 if (yych <= 'e') goto yy112;
1358                 goto yy100;
1359             }
1360         }
1361     } else {
1362         if (yych <= 'q') {
1363             if (yych <= 'l') {
1364                 if (yych <= 'i') goto yy113;
1365                 if (yych <= 'k') goto yy100;
1366                 goto yy114;
1367             } else {
1368                 if (yych == 'p') goto yy115;
1369                 goto yy100;
1370             }
1371         } else {
1372             if (yych <= 'u') {
1373                 if (yych <= 'r') goto yy116;
1374                 if (yych <= 't') goto yy100;
1375                 goto yy117;
1376             } else {
1377                 if (yych == 'w') goto yy118;
1378                 goto yy100;
1379             }
1380         }
1381     }
1382 yy107:
1383     ++YYCURSOR;
1384 #line 161 "strict_cpp.re"
1385     { BOOST_WAVE_RET(T_POUND_POUND); }
1386 #line 1387 "strict_cpp_re.inc"
1387 yy109:
1388     ++YYCURSOR;
1389     if (YYLIMIT <= YYCURSOR) YYFILL(1);
1390     yych = *YYCURSOR;
1391     if (yych == '*') goto yy260;
1392     goto yy100;
1393 yy110:
1394     yych = *++YYCURSOR;
1395     if (yych == '?') goto yy262;
1396     goto yy100;
1397 yy111:
1398     yych = *++YYCURSOR;
1399     if (yych == 'e') goto yy263;
1400     goto yy100;
1401 yy112:
1402     yych = *++YYCURSOR;
1403     if (yych <= 'm') {
1404         if (yych == 'l') goto yy264;
1405         goto yy100;
1406     } else {
1407         if (yych <= 'n') goto yy265;
1408         if (yych == 'r') goto yy266;
1409         goto yy100;
1410     }
1411 yy113:
1412     yych = *++YYCURSOR;
1413     if (yych == 'f') goto yy267;
1414     if (yych == 'n') goto yy269;
1415     goto yy100;
1416 yy114:
1417     yych = *++YYCURSOR;
1418     if (yych == 'i') goto yy270;
1419     goto yy100;
1420 yy115:
1421     yych = *++YYCURSOR;
1422     if (yych == 'r') goto yy271;
1423     goto yy100;
1424 yy116:
1425     yych = *++YYCURSOR;
1426     if (yych == 'e') goto yy272;
1427     goto yy100;
1428 yy117:
1429     yych = *++YYCURSOR;
1430     if (yych == 'n') goto yy273;
1431     goto yy100;
1432 yy118:
1433     yych = *++YYCURSOR;
1434     if (yych == 'a') goto yy274;
1435     goto yy100;
1436 yy119:
1437     yyaccept = 6;
1438     yych = *(YYMARKER = ++YYCURSOR);
1439     if (yych <= 'e') {
1440         if (yych <= ' ') {
1441             if (yych <= '\n') {
1442                 if (yych == '\t') goto yy106;
1443             } else {
1444                 if (yych <= '\f') goto yy106;
1445                 if (yych >= ' ') goto yy106;
1446             }
1447         } else {
1448             if (yych <= '.') {
1449                 if (yych == '%') goto yy275;
1450             } else {
1451                 if (yych <= '/') goto yy106;
1452                 if (yych >= 'd') goto yy106;
1453             }
1454         }
1455     } else {
1456         if (yych <= 'p') {
1457             if (yych <= 'k') {
1458                 if (yych == 'i') goto yy106;
1459             } else {
1460                 if (yych <= 'l') goto yy106;
1461                 if (yych >= 'p') goto yy106;
1462             }
1463         } else {
1464             if (yych <= 't') {
1465                 if (yych == 'r') goto yy106;
1466             } else {
1467                 if (yych == 'v') goto yy120;
1468                 if (yych <= 'w') goto yy106;
1469             }
1470         }
1471     }
1472 yy120:
1473 #line 159 "strict_cpp.re"
1474     { BOOST_WAVE_RET(T_POUND_ALT); }
1475 #line 1476 "strict_cpp_re.inc"
1476 yy121:
1477     ++YYCURSOR;
1478 #line 218 "strict_cpp.re"
1479     { BOOST_WAVE_RET(T_PERCENTASSIGN); }
1480 #line 1481 "strict_cpp_re.inc"
1481 yy123:
1482     ++YYCURSOR;
1483 #line 151 "strict_cpp.re"
1484     { BOOST_WAVE_RET(T_RIGHTBRACE_ALT); }
1485 #line 1486 "strict_cpp_re.inc"
1486 yy125:
1487     ++YYCURSOR;
1488 #line 246 "strict_cpp.re"
1489     { BOOST_WAVE_RET(T_ANDAND); }
1490 #line 1491 "strict_cpp_re.inc"
1491 yy127:
1492     ++YYCURSOR;
1493 #line 222 "strict_cpp.re"
1494     { BOOST_WAVE_RET(T_ANDASSIGN); }
1495 #line 1496 "strict_cpp_re.inc"
1496 yy129:
1497     ++YYCURSOR;
1498     if (YYLIMIT <= YYCURSOR) YYFILL(1);
1499     yych = *YYCURSOR;
1500 yy130:
1501     if (yybm[0+yych] & 2) {
1502         goto yy129;
1503     }
1504     if (yych <= 0x1F) goto yy100;
1505     if (yych <= '\'') goto yy276;
1506     if (yych >= '@') goto yy132;
1507 yy131:
1508     ++YYCURSOR;
1509     if (YYLIMIT <= YYCURSOR) YYFILL(1);
1510     yych = *YYCURSOR;
1511     if (yybm[0+yych] & 2) {
1512         goto yy129;
1513     }
1514     if (yych <= 0x1F) goto yy100;
1515     if (yych <= '\'') goto yy276;
1516     if (yych <= '?') goto yy278;
1517 yy132:
1518     ++YYCURSOR;
1519     if (YYLIMIT <= YYCURSOR) YYFILL(1);
1520     yych = *YYCURSOR;
1521     if (yych <= '`') {
1522         if (yych <= '7') {
1523             if (yych <= '&') {
1524                 if (yych == '"') goto yy129;
1525                 goto yy100;
1526             } else {
1527                 if (yych <= '\'') goto yy129;
1528                 if (yych <= '/') goto yy100;
1529                 goto yy129;
1530             }
1531         } else {
1532             if (yych <= 'T') {
1533                 if (yych == '?') goto yy129;
1534                 goto yy100;
1535             } else {
1536                 if (yych <= 'U') goto yy280;
1537                 if (yych == '\\') goto yy129;
1538                 goto yy100;
1539             }
1540         }
1541     } else {
1542         if (yych <= 'r') {
1543             if (yych <= 'f') {
1544                 if (yych <= 'b') goto yy129;
1545                 if (yych <= 'e') goto yy100;
1546                 goto yy129;
1547             } else {
1548                 if (yych == 'n') goto yy129;
1549                 if (yych <= 'q') goto yy100;
1550                 goto yy129;
1551             }
1552         } else {
1553             if (yych <= 'u') {
1554                 if (yych <= 's') goto yy100;
1555                 if (yych <= 't') goto yy129;
1556                 goto yy281;
1557             } else {
1558                 if (yych <= 'v') goto yy129;
1559                 if (yych == 'x') goto yy282;
1560                 goto yy100;
1561             }
1562         }
1563     }
1564 yy133:
1565     ++YYCURSOR;
1566 #line 216 "strict_cpp.re"
1567     { BOOST_WAVE_RET(T_STARASSIGN); }
1568 #line 1569 "strict_cpp_re.inc"
1569 yy135:
1570     ++YYCURSOR;
1571 #line 253 "strict_cpp.re"
1572     { BOOST_WAVE_RET(T_PLUSPLUS); }
1573 #line 1574 "strict_cpp_re.inc"
1574 yy137:
1575     ++YYCURSOR;
1576 #line 214 "strict_cpp.re"
1577     { BOOST_WAVE_RET(T_PLUSASSIGN); }
1578 #line 1579 "strict_cpp_re.inc"
1579 yy139:
1580     ++YYCURSOR;
1581 #line 254 "strict_cpp.re"
1582     { BOOST_WAVE_RET(T_MINUSMINUS); }
1583 #line 1584 "strict_cpp_re.inc"
1584 yy141:
1585     ++YYCURSOR;
1586 #line 215 "strict_cpp.re"
1587     { BOOST_WAVE_RET(T_MINUSASSIGN); }
1588 #line 1589 "strict_cpp_re.inc"
1589 yy143:
1590     yych = *++YYCURSOR;
1591     if (yych == '*') goto yy283;
1592 #line 266 "strict_cpp.re"
1593     { BOOST_WAVE_RET(T_ARROW); }
1594 #line 1595 "strict_cpp_re.inc"
1595 yy145:
1596     ++YYCURSOR;
1597 #line 184 "strict_cpp.re"
1598     {
1599             if (s->act_in_c99_mode) {
1600                 --YYCURSOR;
1601                 BOOST_WAVE_RET(T_DOT);
1602             }
1603             else {
1604                 BOOST_WAVE_RET(T_DOTSTAR);
1605             }
1606         }
1607 #line 1608 "strict_cpp_re.inc"
1608 yy147:
1609     yych = *++YYCURSOR;
1610     if (yych == '.') goto yy285;
1611     goto yy100;
1612 yy148:
1613     ++YYCURSOR;
1614 #line 43 "strict_cpp.re"
1615     { goto ccomment; }
1616 #line 1617 "strict_cpp_re.inc"
1617 yy150:
1618     ++YYCURSOR;
1619 #line 44 "strict_cpp.re"
1620     { goto cppcomment; }
1621 #line 1622 "strict_cpp_re.inc"
1622 yy152:
1623     ++YYCURSOR;
1624 #line 217 "strict_cpp.re"
1625     { BOOST_WAVE_RET(T_DIVIDEASSIGN); }
1626 #line 1627 "strict_cpp_re.inc"
1627 yy154:
1628     ++YYCURSOR;
1629 #line 173 "strict_cpp.re"
1630     {
1631             if (s->act_in_c99_mode) {
1632                 --YYCURSOR;
1633                 BOOST_WAVE_RET(T_COLON);
1634             }
1635             else {
1636                 BOOST_WAVE_RET(T_COLON_COLON);
1637             }
1638         }
1639 #line 1640 "strict_cpp_re.inc"
1640 yy156:
1641     ++YYCURSOR;
1642 #line 157 "strict_cpp.re"
1643     { BOOST_WAVE_RET(T_RIGHTBRACKET_ALT); }
1644 #line 1645 "strict_cpp_re.inc"
1645 yy158:
1646     ++YYCURSOR;
1647 #line 148 "strict_cpp.re"
1648     { BOOST_WAVE_RET(T_LEFTBRACE_ALT); }
1649 #line 1650 "strict_cpp_re.inc"
1650 yy160:
1651     ++YYCURSOR;
1652 #line 154 "strict_cpp.re"
1653     { BOOST_WAVE_RET(T_LEFTBRACKET_ALT); }
1654 #line 1655 "strict_cpp_re.inc"
1655 yy162:
1656     yych = *++YYCURSOR;
1657     if (yych == '=') goto yy287;
1658 #line 227 "strict_cpp.re"
1659     { BOOST_WAVE_RET(T_SHIFTLEFT); }
1660 #line 1661 "strict_cpp_re.inc"
1661 yy164:
1662     yych = *++YYCURSOR;
1663     if (yych == '>') goto yy289;
1664 #line 244 "strict_cpp.re"
1665     { BOOST_WAVE_RET(T_LESSEQUAL); }
1666 #line 1667 "strict_cpp_re.inc"
1667 yy166:
1668     ++YYCURSOR;
1669 #line 231 "strict_cpp.re"
1670     { BOOST_WAVE_RET(T_EQUAL); }
1671 #line 1672 "strict_cpp_re.inc"
1672 yy168:
1673     ++YYCURSOR;
1674 #line 245 "strict_cpp.re"
1675     { BOOST_WAVE_RET(T_GREATEREQUAL); }
1676 #line 1677 "strict_cpp_re.inc"
1677 yy170:
1678     yych = *++YYCURSOR;
1679     if (yych == '=') goto yy291;
1680 #line 228 "strict_cpp.re"
1681     { BOOST_WAVE_RET(T_SHIFTRIGHT); }
1682 #line 1683 "strict_cpp_re.inc"
1683 yy172:
1684     yych = *++YYCURSOR;
1685     switch (yych) {
1686     case '!':    goto yy293;
1687     case '\'':    goto yy295;
1688     case '(':    goto yy297;
1689     case ')':    goto yy299;
1690     case '-':    goto yy301;
1691     case '/':    goto yy303;
1692     case '<':    goto yy305;
1693     case '=':    goto yy307;
1694     case '>':    goto yy309;
1695     default:    goto yy100;
1696     }
1697 yy173:
1698     ++YYCURSOR;
1699     if (YYLIMIT <= YYCURSOR) YYFILL(1);
1700     yych = *YYCURSOR;
1701     if (yych == '?') goto yy311;
1702     goto yy100;
1703 yy174:
1704     ++YYCURSOR;
1705     if (YYLIMIT <= YYCURSOR) YYFILL(1);
1706     yych = *YYCURSOR;
1707     if (yych == 'U') goto yy183;
1708     if (yych == 'u') goto yy184;
1709     goto yy100;
1710 yy175:
1711     yych = *++YYCURSOR;
1712     if (yych == '\'') goto yy100;
1713     goto yy130;
1714 yy176:
1715     ++YYCURSOR;
1716 #line 276 "strict_cpp.re"
1717     {
1718             if (s->act_in_cpp0x_mode)
1719             {
1720                 rawstringdelim = "";
1721                 goto extrawstringlit;
1722             }
1723             --YYCURSOR;
1724             BOOST_WAVE_RET(T_IDENTIFIER);
1725         }
1726 #line 1727 "strict_cpp_re.inc"
1727 yy178:
1728     ++YYCURSOR;
1729 #line 295 "strict_cpp.re"
1730     {
1731             if (s->act_in_cpp0x_mode)
1732                 goto extstringlit;
1733             --YYCURSOR;
1734             BOOST_WAVE_RET(T_IDENTIFIER);
1735         }
1736 #line 1737 "strict_cpp_re.inc"
1737 yy180:
1738     ++YYCURSOR;
1739 #line 287 "strict_cpp.re"
1740     {
1741             if (s->act_in_cpp0x_mode)
1742                 goto extcharlit;
1743             --YYCURSOR;
1744             BOOST_WAVE_RET(T_IDENTIFIER);
1745         }
1746 #line 1747 "strict_cpp_re.inc"
1747 yy182:
1748     yyaccept = 4;
1749     yych = *(YYMARKER = ++YYCURSOR);
1750     if (yych == '"') goto yy312;
1751     goto yy55;
1752 yy183:
1753     ++YYCURSOR;
1754     if (YYLIMIT <= YYCURSOR) YYFILL(1);
1755     yych = *YYCURSOR;
1756     if (yych <= '@') {
1757         if (yych <= '/') goto yy100;
1758         if (yych <= '9') goto yy314;
1759         goto yy100;
1760     } else {
1761         if (yych <= 'F') goto yy314;
1762         if (yych <= '`') goto yy100;
1763         if (yych <= 'f') goto yy314;
1764         goto yy100;
1765     }
1766 yy184:
1767     ++YYCURSOR;
1768     if (YYLIMIT <= YYCURSOR) YYFILL(1);
1769     yych = *YYCURSOR;
1770     if (yych <= '@') {
1771         if (yych <= '/') goto yy100;
1772         if (yych <= '9') goto yy315;
1773         goto yy100;
1774     } else {
1775         if (yych <= 'F') goto yy315;
1776         if (yych <= '`') goto yy100;
1777         if (yych <= 'f') goto yy315;
1778         goto yy100;
1779     }
1780 yy185:
1781     ++YYCURSOR;
1782 #line 219 "strict_cpp.re"
1783     { BOOST_WAVE_RET(T_XORASSIGN); }
1784 #line 1785 "strict_cpp_re.inc"
1785 yy187:
1786     yyaccept = 4;
1787     yych = *(YYMARKER = ++YYCURSOR);
1788     switch (yych) {
1789     case 'a':    goto yy188;
1790     case 'b':    goto yy189;
1791     case 'c':    goto yy190;
1792     case 'd':    goto yy191;
1793     case 'e':    goto yy316;
1794     case 'f':    goto yy317;
1795     case 'i':    goto yy318;
1796     case 'l':    goto yy319;
1797     case 's':    goto yy194;
1798     case 't':    goto yy320;
1799     default:    goto yy55;
1800     }
1801 yy188:
1802     yyaccept = 4;
1803     yych = *(YYMARKER = ++YYCURSOR);
1804     if (yych == 's') goto yy321;
1805     goto yy55;
1806 yy189:
1807     yyaccept = 4;
1808     yych = *(YYMARKER = ++YYCURSOR);
1809     if (yych == 'a') goto yy322;
1810     goto yy55;
1811 yy190:
1812     yyaccept = 4;
1813     yych = *(YYMARKER = ++YYCURSOR);
1814     if (yych == 'd') goto yy323;
1815     goto yy55;
1816 yy191:
1817     yyaccept = 4;
1818     yych = *(YYMARKER = ++YYCURSOR);
1819     if (yych == 'e') goto yy324;
1820     goto yy55;
1821 yy192:
1822     yyaccept = 4;
1823     yych = *(YYMARKER = ++YYCURSOR);
1824     if (yych == 'a') goto yy325;
1825     goto yy55;
1826 yy193:
1827     yyaccept = 4;
1828     yych = *(YYMARKER = ++YYCURSOR);
1829     if (yych == 'n') goto yy326;
1830     goto yy55;
1831 yy194:
1832     yyaccept = 4;
1833     yych = *(YYMARKER = ++YYCURSOR);
1834     if (yych == 't') goto yy327;
1835     goto yy55;
1836 yy195:
1837     yyaccept = 4;
1838     yych = *(YYMARKER = ++YYCURSOR);
1839     if (yych == 'i') goto yy328;
1840     goto yy55;
1841 yy196:
1842     yyaccept = 4;
1843     yych = *(YYMARKER = ++YYCURSOR);
1844     if (yych == 'd') goto yy329;
1845     goto yy55;
1846 yy197:
1847     yyaccept = 4;
1848     yych = *(YYMARKER = ++YYCURSOR);
1849     if (yych == 'm') goto yy331;
1850     goto yy55;
1851 yy198:
1852     yyaccept = 4;
1853     yych = *(YYMARKER = ++YYCURSOR);
1854     if (yych == 't') goto yy333;
1855     goto yy55;
1856 yy199:
1857     yyaccept = 4;
1858     yych = *(YYMARKER = ++YYCURSOR);
1859     if (yych == 't') goto yy334;
1860     goto yy55;
1861 yy200:
1862     yyaccept = 4;
1863     yych = *(YYMARKER = ++YYCURSOR);
1864     if (yych == 'o') goto yy335;
1865     goto yy55;
1866 yy201:
1867     yyaccept = 4;
1868     yych = *(YYMARKER = ++YYCURSOR);
1869     if (yych == 'e') goto yy336;
1870     goto yy55;
1871 yy202:
1872     yyaccept = 4;
1873     yych = *(YYMARKER = ++YYCURSOR);
1874     if (yych <= 'r') goto yy55;
1875     if (yych <= 's') goto yy337;
1876     if (yych <= 't') goto yy338;
1877     goto yy55;
1878 yy203:
1879     yyaccept = 4;
1880     yych = *(YYMARKER = ++YYCURSOR);
1881     if (yych == 'a') goto yy339;
1882     goto yy55;
1883 yy204:
1884     yyaccept = 4;
1885     yych = *(YYMARKER = ++YYCURSOR);
1886     if (yych == 'a') goto yy340;
1887     goto yy55;
1888 yy205:
1889     yyaccept = 4;
1890     yych = *(YYMARKER = ++YYCURSOR);
1891     if (yych <= 'l') {
1892         if (yych == '_') goto yy341;
1893         goto yy55;
1894     } else {
1895         if (yych <= 'm') goto yy342;
1896         if (yych <= 'n') goto yy343;
1897         goto yy55;
1898     }
1899 yy206:
1900     yyaccept = 4;
1901     yych = *(YYMARKER = ++YYCURSOR);
1902     if (yych <= 'e') {
1903         if (yych == 'c') goto yy344;
1904         goto yy55;
1905     } else {
1906         if (yych <= 'f') goto yy345;
1907         if (yych == 'l') goto yy346;
1908         goto yy55;
1909     }
1910 yy207:
1911     yyaccept = 7;
1912     yych = *(YYMARKER = ++YYCURSOR);
1913     if (yych <= '[') {
1914         if (yych <= '>') {
1915             if (yych <= '/') goto yy208;
1916             if (yych <= '9') goto yy54;
1917         } else {
1918             if (yych <= '?') goto yy173;
1919             if (yych <= '@') goto yy208;
1920             if (yych <= 'Z') goto yy54;
1921         }
1922     } else {
1923         if (yych <= '`') {
1924             if (yych <= '\\') goto yy174;
1925             if (yych == '_') goto yy54;
1926         } else {
1927             if (yych == 'u') goto yy347;
1928             if (yych <= 'z') goto yy54;
1929         }
1930     }
1931 yy208:
1932 #line 73 "strict_cpp.re"
1933     { BOOST_WAVE_RET(T_DO); }
1934 #line 1935 "strict_cpp_re.inc"
1935 yy209:
1936     yyaccept = 4;
1937     yych = *(YYMARKER = ++YYCURSOR);
1938     if (yych == 'n') goto yy348;
1939     goto yy55;
1940 yy210:
1941     yyaccept = 4;
1942     yych = *(YYMARKER = ++YYCURSOR);
1943     if (yych == 's') goto yy349;
1944     goto yy55;
1945 yy211:
1946     yyaccept = 4;
1947     yych = *(YYMARKER = ++YYCURSOR);
1948     if (yych == 'u') goto yy350;
1949     goto yy55;
1950 yy212:
1951     yyaccept = 4;
1952     yych = *(YYMARKER = ++YYCURSOR);
1953     if (yych == 'p') goto yy351;
1954     if (yych == 't') goto yy352;
1955     goto yy55;
1956 yy213:
1957     yyaccept = 4;
1958     yych = *(YYMARKER = ++YYCURSOR);
1959     if (yych == 'l') goto yy353;
1960     goto yy55;
1961 yy214:
1962     yyaccept = 4;
1963     yych = *(YYMARKER = ++YYCURSOR);
1964     if (yych == 'o') goto yy354;
1965     goto yy55;
1966 yy215:
1967     yyaccept = 4;
1968     yych = *(YYMARKER = ++YYCURSOR);
1969     if (yych == 'r') goto yy355;
1970     goto yy55;
1971 yy216:
1972     yyaccept = 4;
1973     yych = *(YYMARKER = ++YYCURSOR);
1974     if (yych == 'i') goto yy357;
1975     goto yy55;
1976 yy217:
1977     yyaccept = 4;
1978     yych = *(YYMARKER = ++YYCURSOR);
1979     if (yych == 't') goto yy358;
1980     goto yy55;
1981 yy218:
1982     yyaccept = 8;
1983     yych = *(YYMARKER = ++YYCURSOR);
1984     if (yybm[256+yych] & 128) {
1985         goto yy54;
1986     }
1987     if (yych == '?') goto yy173;
1988     if (yych == '\\') goto yy174;
1989 yy219:
1990 #line 86 "strict_cpp.re"
1991     { BOOST_WAVE_RET(T_IF); }
1992 #line 1993 "strict_cpp_re.inc"
1993 yy220:
1994     yyaccept = 4;
1995     yych = *(YYMARKER = ++YYCURSOR);
1996     if (yych == 'p') goto yy359;
1997     goto yy55;
1998 yy221:
1999     yyaccept = 4;
2000     yych = *(YYMARKER = ++YYCURSOR);
2001     if (yych == 'l') goto yy360;
2002     if (yych == 't') goto yy361;
2003     goto yy55;
2004 yy222:
2005     yyaccept = 4;
2006     yych = *(YYMARKER = ++YYCURSOR);
2007     if (yych == 'n') goto yy363;
2008     goto yy55;
2009 yy223:
2010     yyaccept = 4;
2011     yych = *(YYMARKER = ++YYCURSOR);
2012     if (yych == 't') goto yy364;
2013     goto yy55;
2014 yy224:
2015     yyaccept = 4;
2016     yych = *(YYMARKER = ++YYCURSOR);
2017     if (yych == 'm') goto yy365;
2018     goto yy55;
2019 yy225:
2020     yyaccept = 4;
2021     yych = *(YYMARKER = ++YYCURSOR);
2022     if (yych == 'w') goto yy366;
2023     goto yy55;
2024 yy226:
2025     yyaccept = 4;
2026     yych = *(YYMARKER = ++YYCURSOR);
2027     if (yych == 'e') goto yy368;
2028     if (yych == 't') goto yy369;
2029     goto yy55;
2030 yy227:
2031     yyaccept = 4;
2032     yych = *(YYMARKER = ++YYCURSOR);
2033     if (yych == 'l') goto yy371;
2034     goto yy55;
2035 yy228:
2036     yyaccept = 4;
2037     yych = *(YYMARKER = ++YYCURSOR);
2038     if (yych == 'e') goto yy372;
2039     goto yy55;
2040 yy229:
2041     yyaccept = 9;
2042     yych = *(YYMARKER = ++YYCURSOR);
2043     if (yych <= 'Z') {
2044         if (yych <= '>') {
2045             if (yych <= '/') goto yy230;
2046             if (yych <= '9') goto yy54;
2047         } else {
2048             if (yych <= '?') goto yy173;
2049             if (yych >= 'A') goto yy54;
2050         }
2051     } else {
2052         if (yych <= '^') {
2053             if (yych == '\\') goto yy174;
2054         } else {
2055             if (yych <= '_') goto yy373;
2056             if (yych <= '`') goto yy230;
2057             if (yych <= 'z') goto yy54;
2058         }
2059     }
2060 yy230:
2061 #line 251 "strict_cpp.re"
2062     { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_OROR_ALT); }
2063 #line 2064 "strict_cpp_re.inc"
2064 yy231:
2065     yyaccept = 4;
2066     yych = *(YYMARKER = ++YYCURSOR);
2067     if (yych == 'i') goto yy374;
2068     if (yych == 'o') goto yy375;
2069     goto yy55;
2070 yy232:
2071     yyaccept = 4;
2072     yych = *(YYMARKER = ++YYCURSOR);
2073     if (yych == 'b') goto yy376;
2074     goto yy55;
2075 yy233:
2076     yyaccept = 4;
2077     yych = *(YYMARKER = ++YYCURSOR);
2078     switch (yych) {
2079     case 'g':    goto yy377;
2080     case 'i':    goto yy378;
2081     case 'q':    goto yy379;
2082     case 't':    goto yy380;
2083     default:    goto yy55;
2084     }
2085 yy234:
2086     yyaccept = 4;
2087     yych = *(YYMARKER = ++YYCURSOR);
2088     if (yych == 'o') goto yy381;
2089     goto yy55;
2090 yy235:
2091     yyaccept = 4;
2092     yych = *(YYMARKER = ++YYCURSOR);
2093     if (yych == 'g') goto yy382;
2094     if (yych == 'z') goto yy383;
2095     goto yy55;
2096 yy236:
2097     yyaccept = 4;
2098     yych = *(YYMARKER = ++YYCURSOR);
2099     if (yych == 'a') goto yy384;
2100     if (yych == 'r') goto yy385;
2101     goto yy55;
2102 yy237:
2103     yyaccept = 4;
2104     yych = *(YYMARKER = ++YYCURSOR);
2105     if (yych == 'i') goto yy386;
2106     goto yy55;
2107 yy238:
2108     yyaccept = 4;
2109     yych = *(YYMARKER = ++YYCURSOR);
2110     if (yych == 'm') goto yy387;
2111     goto yy55;
2112 yy239:
2113     yyaccept = 4;
2114     yych = *(YYMARKER = ++YYCURSOR);
2115     if (yych == 'i') goto yy388;
2116     if (yych == 'r') goto yy389;
2117     goto yy55;
2118 yy240:
2119     yyaccept = 4;
2120     yych = *(YYMARKER = ++YYCURSOR);
2121     if (yych == 'u') goto yy390;
2122     if (yych == 'y') goto yy391;
2123     goto yy55;
2124 yy241:
2125     yyaccept = 4;
2126     yych = *(YYMARKER = ++YYCURSOR);
2127     if (yych == 'p') goto yy393;
2128     goto yy55;
2129 yy242:
2130     yyaccept = 4;
2131     yych = *(YYMARKER = ++YYCURSOR);
2132     if (yych == '"') goto yy178;
2133     if (yych == 'R') goto yy182;
2134     goto yy55;
2135 yy243:
2136     yyaccept = 4;
2137     yych = *(YYMARKER = ++YYCURSOR);
2138     if (yych == 'i') goto yy394;
2139     if (yych == 's') goto yy395;
2140     goto yy55;
2141 yy244:
2142     yyaccept = 4;
2143     yych = *(YYMARKER = ++YYCURSOR);
2144     if (yych == 'i') goto yy396;
2145     goto yy55;
2146 yy245:
2147     yyaccept = 4;
2148     yych = *(YYMARKER = ++YYCURSOR);
2149     if (yych == 'r') goto yy397;
2150     goto yy55;
2151 yy246:
2152     yyaccept = 4;
2153     yych = *(YYMARKER = ++YYCURSOR);
2154     if (yych == 'i') goto yy398;
2155     if (yych == 'l') goto yy399;
2156     goto yy55;
2157 yy247:
2158     yyaccept = 4;
2159     yych = *(YYMARKER = ++YYCURSOR);
2160     if (yych == 'h') goto yy400;
2161     goto yy55;
2162 yy248:
2163     yyaccept = 4;
2164     yych = *(YYMARKER = ++YYCURSOR);
2165     if (yych == 'i') goto yy401;
2166     goto yy55;
2167 yy249:
2168     yyaccept = 4;
2169     yych = *(YYMARKER = ++YYCURSOR);
2170     if (yych == 'r') goto yy402;
2171     goto yy55;
2172 yy250:
2173     ++YYCURSOR;
2174 #line 224 "strict_cpp.re"
2175     { BOOST_WAVE_RET(T_ORASSIGN); }
2176 #line 2177 "strict_cpp_re.inc"
2177 yy252:
2178     yych = *++YYCURSOR;
2179     if (yych == '?') goto yy404;
2180     goto yy100;
2181 yy253:
2182     ++YYCURSOR;
2183 #line 248 "strict_cpp.re"
2184     { BOOST_WAVE_RET(T_OROR); }
2185 #line 2186 "strict_cpp_re.inc"
2186 yy255:
2187     ++YYCURSOR;
2188     if (YYLIMIT <= YYCURSOR) YYFILL(1);
2189     yych = *YYCURSOR;
2190     if (yybm[0+yych] & 4) {
2191         goto yy255;
2192     }
2193     if (yych <= '!') {
2194         if (yych <= '\n') {
2195             if (yych == '\t') goto yy98;
2196             goto yy100;
2197         } else {
2198             if (yych <= '\f') goto yy98;
2199             if (yych <= 0x1F) goto yy100;
2200             goto yy98;
2201         }
2202     } else {
2203         if (yych <= '/') {
2204             if (yych <= '"') goto yy101;
2205             if (yych <= '.') goto yy98;
2206             goto yy405;
2207         } else {
2208             if (yych == '\\') goto yy104;
2209             goto yy98;
2210         }
2211     }
2212 yy257:
2213     ++YYCURSOR;
2214     if (YYLIMIT <= YYCURSOR) YYFILL(1);
2215     yych = *YYCURSOR;
2216     if (yych <= '@') {
2217         if (yych <= '/') goto yy100;
2218         if (yych <= '9') goto yy407;
2219         goto yy100;
2220     } else {
2221         if (yych <= 'F') goto yy407;
2222         if (yych <= '`') goto yy100;
2223         if (yych <= 'f') goto yy407;
2224         goto yy100;
2225     }
2226 yy258:
2227     ++YYCURSOR;
2228     if (YYLIMIT <= YYCURSOR) YYFILL(1);
2229     yych = *YYCURSOR;
2230     if (yych <= '@') {
2231         if (yych <= '/') goto yy100;
2232         if (yych <= '9') goto yy408;
2233         goto yy100;
2234     } else {
2235         if (yych <= 'F') goto yy408;
2236         if (yych <= '`') goto yy100;
2237         if (yych <= 'f') goto yy408;
2238         goto yy100;
2239     }
2240 yy259:
2241     ++YYCURSOR;
2242     if (YYLIMIT <= YYCURSOR) YYFILL(1);
2243     yych = *YYCURSOR;
2244     if (yych <= '@') {
2245         if (yych <= '/') goto yy100;
2246         if (yych <= '9') goto yy98;
2247         goto yy100;
2248     } else {
2249         if (yych <= 'F') goto yy98;
2250         if (yych <= '`') goto yy100;
2251         if (yych <= 'f') goto yy98;
2252         goto yy100;
2253     }
2254 yy260:
2255     ++YYCURSOR;
2256     if (YYLIMIT <= YYCURSOR) YYFILL(1);
2257     yych = *YYCURSOR;
2258     if (yybm[0+yych] & 8) {
2259         goto yy260;
2260     }
2261     if (yych <= 0x1F) goto yy100;
2262     goto yy409;
2263 yy262:
2264     yych = *++YYCURSOR;
2265     if (yych == '=') goto yy411;
2266     goto yy100;
2267 yy263:
2268     yych = *++YYCURSOR;
2269     if (yych == 'f') goto yy413;
2270     goto yy100;
2271 yy264:
2272     yych = *++YYCURSOR;
2273     if (yych == 'i') goto yy414;
2274     if (yych == 's') goto yy415;
2275     goto yy100;
2276 yy265:
2277     yych = *++YYCURSOR;
2278     if (yych == 'd') goto yy416;
2279     goto yy100;
2280 yy266:
2281     yych = *++YYCURSOR;
2282     if (yych == 'r') goto yy417;
2283     goto yy100;
2284 yy267:
2285     yyaccept = 10;
2286     yych = *(YYMARKER = ++YYCURSOR);
2287     if (yych == 'd') goto yy418;
2288     if (yych == 'n') goto yy419;
2289 yy268:
2290 #line 325 "strict_cpp.re"
2291     { BOOST_WAVE_RET(T_PP_IF); }
2292 #line 2293 "strict_cpp_re.inc"
2293 yy269:
2294     yych = *++YYCURSOR;
2295     if (yych == 'c') goto yy420;
2296     goto yy100;
2297 yy270:
2298     yych = *++YYCURSOR;
2299     if (yych == 'n') goto yy421;
2300     goto yy100;
2301 yy271:
2302     yych = *++YYCURSOR;
2303     if (yych == 'a') goto yy422;
2304     goto yy100;
2305 yy272:
2306     yych = *++YYCURSOR;
2307     if (yych == 'g') goto yy423;
2308     goto yy100;
2309 yy273:
2310     yych = *++YYCURSOR;
2311     if (yych == 'd') goto yy424;
2312     goto yy100;
2313 yy274:
2314     yych = *++YYCURSOR;
2315     if (yych == 'r') goto yy425;
2316     goto yy100;
2317 yy275:
2318     yych = *++YYCURSOR;
2319     if (yych == ':') goto yy426;
2320     goto yy100;
2321 yy276:
2322     ++YYCURSOR;
2323 yy277:
2324 #line 270 "strict_cpp.re"
2325     { BOOST_WAVE_RET(T_CHARLIT); }
2326 #line 2327 "strict_cpp_re.inc"
2327 yy278:
2328     ++YYCURSOR;
2329     if (YYLIMIT <= YYCURSOR) YYFILL(1);
2330     yych = *YYCURSOR;
2331     if (yych <= '\'') {
2332         if (yych <= '\n') {
2333             if (yych == '\t') goto yy129;
2334             goto yy100;
2335         } else {
2336             if (yych <= '\f') goto yy129;
2337             if (yych <= 0x1F) goto yy100;
2338             if (yych <= '&') goto yy129;
2339             goto yy276;
2340         }
2341     } else {
2342         if (yych <= '>') {
2343             if (yych == '/') goto yy428;
2344             goto yy129;
2345         } else {
2346             if (yych <= '?') goto yy278;
2347             if (yych == '\\') goto yy132;
2348             goto yy129;
2349         }
2350     }
2351 yy280:
2352     ++YYCURSOR;
2353     if (YYLIMIT <= YYCURSOR) YYFILL(1);
2354     yych = *YYCURSOR;
2355     if (yych <= '@') {
2356         if (yych <= '/') goto yy100;
2357         if (yych <= '9') goto yy430;
2358         goto yy100;
2359     } else {
2360         if (yych <= 'F') goto yy430;
2361         if (yych <= '`') goto yy100;
2362         if (yych <= 'f') goto yy430;
2363         goto yy100;
2364     }
2365 yy281:
2366     ++YYCURSOR;
2367     if (YYLIMIT <= YYCURSOR) YYFILL(1);
2368     yych = *YYCURSOR;
2369     if (yych <= '@') {
2370         if (yych <= '/') goto yy100;
2371         if (yych <= '9') goto yy431;
2372         goto yy100;
2373     } else {
2374         if (yych <= 'F') goto yy431;
2375         if (yych <= '`') goto yy100;
2376         if (yych <= 'f') goto yy431;
2377         goto yy100;
2378     }
2379 yy282:
2380     ++YYCURSOR;
2381     if (YYLIMIT <= YYCURSOR) YYFILL(1);
2382     yych = *YYCURSOR;
2383     if (yych <= '@') {
2384         if (yych <= '/') goto yy100;
2385         if (yych <= '9') goto yy129;
2386         goto yy100;
2387     } else {
2388         if (yych <= 'F') goto yy129;
2389         if (yych <= '`') goto yy100;
2390         if (yych <= 'f') goto yy129;
2391         goto yy100;
2392     }
2393 yy283:
2394     ++YYCURSOR;
2395 #line 257 "strict_cpp.re"
2396     {
2397             if (s->act_in_c99_mode) {
2398                 --YYCURSOR;
2399                 BOOST_WAVE_RET(T_ARROW);
2400             }
2401             else {
2402                 BOOST_WAVE_RET(T_ARROWSTAR);
2403             }
2404         }
2405 #line 2406 "strict_cpp_re.inc"
2406 yy285:
2407     ++YYCURSOR;
2408 #line 170 "strict_cpp.re"
2409     { BOOST_WAVE_RET(T_ELLIPSIS); }
2410 #line 2411 "strict_cpp_re.inc"
2411 yy287:
2412     ++YYCURSOR;
2413 #line 230 "strict_cpp.re"
2414     { BOOST_WAVE_RET(T_SHIFTLEFTASSIGN); }
2415 #line 2416 "strict_cpp_re.inc"
2416 yy289:
2417     ++YYCURSOR;
2418 #line 235 "strict_cpp.re"
2419     {
2420             if (s->act_in_cpp2a_mode) {
2421                 BOOST_WAVE_RET(T_SPACESHIP);
2422             }
2423             else {
2424                 --YYCURSOR;
2425                 BOOST_WAVE_RET(T_LESSEQUAL);
2426             }
2427         }
2428 #line 2429 "strict_cpp_re.inc"
2429 yy291:
2430     ++YYCURSOR;
2431 #line 229 "strict_cpp.re"
2432     { BOOST_WAVE_RET(T_SHIFTRIGHTASSIGN); }
2433 #line 2434 "strict_cpp_re.inc"
2434 yy293:
2435     yyaccept = 11;
2436     yych = *(YYMARKER = ++YYCURSOR);
2437     if (yych <= '>') {
2438         if (yych == '=') goto yy432;
2439     } else {
2440         if (yych <= '?') goto yy434;
2441         if (yych == '|') goto yy435;
2442     }
2443 yy294:
2444 #line 205 "strict_cpp.re"
2445     { BOOST_WAVE_RET(T_OR_TRIGRAPH); }
2446 #line 2447 "strict_cpp_re.inc"
2447 yy295:
2448     yych = *++YYCURSOR;
2449     if (yych == '=') goto yy437;
2450 #line 199 "strict_cpp.re"
2451     { BOOST_WAVE_RET(T_XOR_TRIGRAPH); }
2452 #line 2453 "strict_cpp_re.inc"
2453 yy297:
2454     ++YYCURSOR;
2455 #line 153 "strict_cpp.re"
2456     { BOOST_WAVE_RET(T_LEFTBRACKET_TRIGRAPH); }
2457 #line 2458 "strict_cpp_re.inc"
2458 yy299:
2459     ++YYCURSOR;
2460 #line 156 "strict_cpp.re"
2461     { BOOST_WAVE_RET(T_RIGHTBRACKET_TRIGRAPH); }
2462 #line 2463 "strict_cpp_re.inc"
2463 yy301:
2464     ++YYCURSOR;
2465 #line 207 "strict_cpp.re"
2466     { BOOST_WAVE_RET(T_COMPL_TRIGRAPH); }
2467 #line 2468 "strict_cpp_re.inc"
2468 yy303:
2469     yyaccept = 12;
2470     yych = *(YYMARKER = ++YYCURSOR);
2471     if (yych == 'U') goto yy183;
2472     if (yych == 'u') goto yy184;
2473 yy304:
2474 #line 267 "strict_cpp.re"
2475     { BOOST_WAVE_RET(T_ANY_TRIGRAPH); }
2476 #line 2477 "strict_cpp_re.inc"
2477 yy305:
2478     ++YYCURSOR;
2479 #line 147 "strict_cpp.re"
2480     { BOOST_WAVE_RET(T_LEFTBRACE_TRIGRAPH); }
2481 #line 2482 "strict_cpp_re.inc"
2482 yy307:
2483     yyaccept = 13;
2484     yych = *(YYMARKER = ++YYCURSOR);
2485     if (yych <= 'c') {
2486         if (yych <= ' ') {
2487             if (yych <= '\n') {
2488                 if (yych == '\t') goto yy106;
2489             } else {
2490                 if (yych <= '\f') goto yy106;
2491                 if (yych >= ' ') goto yy106;
2492             }
2493         } else {
2494             if (yych <= '.') {
2495                 if (yych == '#') goto yy439;
2496             } else {
2497                 if (yych <= '/') goto yy106;
2498                 if (yych == '?') goto yy441;
2499             }
2500         }
2501     } else {
2502         if (yych <= 'p') {
2503             if (yych <= 'i') {
2504                 if (yych <= 'e') goto yy106;
2505                 if (yych >= 'i') goto yy106;
2506             } else {
2507                 if (yych == 'l') goto yy106;
2508                 if (yych >= 'p') goto yy106;
2509             }
2510         } else {
2511             if (yych <= 't') {
2512                 if (yych == 'r') goto yy106;
2513             } else {
2514                 if (yych == 'v') goto yy308;
2515                 if (yych <= 'w') goto yy106;
2516             }
2517         }
2518     }
2519 yy308:
2520 #line 160 "strict_cpp.re"
2521     { BOOST_WAVE_RET(T_POUND_TRIGRAPH); }
2522 #line 2523 "strict_cpp_re.inc"
2523 yy309:
2524     ++YYCURSOR;
2525 #line 150 "strict_cpp.re"
2526     { BOOST_WAVE_RET(T_RIGHTBRACE_TRIGRAPH); }
2527 #line 2528 "strict_cpp_re.inc"
2528 yy311:
2529     ++YYCURSOR;
2530     if (YYLIMIT <= YYCURSOR) YYFILL(1);
2531     yych = *YYCURSOR;
2532     if (yych == '/') goto yy174;
2533     goto yy100;
2534 yy312:
2535     ++YYCURSOR;
2536 #line 303 "strict_cpp.re"
2537     {
2538             if (s->act_in_cpp0x_mode)
2539             {
2540                 rawstringdelim = "";
2541                 goto extrawstringlit;
2542             }
2543             --YYCURSOR;
2544             BOOST_WAVE_RET(T_IDENTIFIER);
2545         }
2546 #line 2547 "strict_cpp_re.inc"
2547 yy314:
2548     ++YYCURSOR;
2549     if (YYLIMIT <= YYCURSOR) YYFILL(1);
2550     yych = *YYCURSOR;
2551     if (yych <= '@') {
2552         if (yych <= '/') goto yy100;
2553         if (yych <= '9') goto yy442;
2554         goto yy100;
2555     } else {
2556         if (yych <= 'F') goto yy442;
2557         if (yych <= '`') goto yy100;
2558         if (yych <= 'f') goto yy442;
2559         goto yy100;
2560     }
2561 yy315:
2562     ++YYCURSOR;
2563     if (YYLIMIT <= YYCURSOR) YYFILL(1);
2564     yych = *YYCURSOR;
2565     if (yych <= '@') {
2566         if (yych <= '/') goto yy100;
2567         if (yych <= '9') goto yy443;
2568         goto yy100;
2569     } else {
2570         if (yych <= 'F') goto yy443;
2571         if (yych <= '`') goto yy100;
2572         if (yych <= 'f') goto yy443;
2573         goto yy100;
2574     }
2575 yy316:
2576     yyaccept = 4;
2577     yych = *(YYMARKER = ++YYCURSOR);
2578     if (yych == 'x') goto yy444;
2579     goto yy55;
2580 yy317:
2581     yyaccept = 4;
2582     yych = *(YYMARKER = ++YYCURSOR);
2583     if (yych == 'a') goto yy325;
2584     if (yych == 'i') goto yy445;
2585     goto yy55;
2586 yy318:
2587     yyaccept = 4;
2588     yych = *(YYMARKER = ++YYCURSOR);
2589     if (yych == 'n') goto yy446;
2590     goto yy55;
2591 yy319:
2592     yyaccept = 4;
2593     yych = *(YYMARKER = ++YYCURSOR);
2594     if (yych == 'e') goto yy447;
2595     goto yy55;
2596 yy320:
2597     yyaccept = 4;
2598     yych = *(YYMARKER = ++YYCURSOR);
2599     if (yych == 'r') goto yy448;
2600     goto yy55;
2601 yy321:
2602     yyaccept = 4;
2603     yych = *(YYMARKER = ++YYCURSOR);
2604     if (yych == 'm') goto yy449;
2605     goto yy55;
2606 yy322:
2607     yyaccept = 4;
2608     yych = *(YYMARKER = ++YYCURSOR);
2609     if (yych == 's') goto yy451;
2610     goto yy55;
2611 yy323:
2612     yyaccept = 4;
2613     yych = *(YYMARKER = ++YYCURSOR);
2614     if (yych == 'e') goto yy452;
2615     goto yy55;
2616 yy324:
2617     yyaccept = 4;
2618     yych = *(YYMARKER = ++YYCURSOR);
2619     if (yych == 'c') goto yy453;
2620     goto yy55;
2621 yy325:
2622     yyaccept = 4;
2623     yych = *(YYMARKER = ++YYCURSOR);
2624     if (yych == 's') goto yy454;
2625     goto yy55;
2626 yy326:
2627     yyaccept = 4;
2628     yych = *(YYMARKER = ++YYCURSOR);
2629     if (yych == 'l') goto yy455;
2630     goto yy55;
2631 yy327:
2632     yyaccept = 4;
2633     yych = *(YYMARKER = ++YYCURSOR);
2634     if (yych == 'd') goto yy456;
2635     goto yy55;
2636 yy328:
2637     yyaccept = 4;
2638     yych = *(YYMARKER = ++YYCURSOR);
2639     if (yych == 'g') goto yy457;
2640     goto yy55;
2641 yy329:
2642     yyaccept = 14;
2643     yych = *(YYMARKER = ++YYCURSOR);
2644     if (yych <= 'Z') {
2645         if (yych <= '>') {
2646             if (yych <= '/') goto yy330;
2647             if (yych <= '9') goto yy54;
2648         } else {
2649             if (yych <= '?') goto yy173;
2650             if (yych >= 'A') goto yy54;
2651         }
2652     } else {
2653         if (yych <= '^') {
2654             if (yych == '\\') goto yy174;
2655         } else {
2656             if (yych <= '_') goto yy458;
2657             if (yych <= '`') goto yy330;
2658             if (yych <= 'z') goto yy54;
2659         }
2660     }
2661 yy330:
2662 #line 247 "strict_cpp.re"
2663     { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_ANDAND_ALT); }
2664 #line 2665 "strict_cpp_re.inc"
2665 yy331:
2666     yyaccept = 15;
2667     yych = *(YYMARKER = ++YYCURSOR);
2668     if (yybm[256+yych] & 128) {
2669         goto yy54;
2670     }
2671     if (yych == '?') goto yy173;
2672     if (yych == '\\') goto yy174;
2673 yy332:
2674 #line 49 "strict_cpp.re"
2675     { BOOST_WAVE_RET(T_ASM); }
2676 #line 2677 "strict_cpp_re.inc"
2677 yy333:
2678     yyaccept = 4;
2679     yych = *(YYMARKER = ++YYCURSOR);
2680     if (yych == 'o') goto yy459;
2681     goto yy55;
2682 yy334:
2683     yyaccept = 4;
2684     yych = *(YYMARKER = ++YYCURSOR);
2685     if (yych == 'a') goto yy461;
2686     if (yych == 'o') goto yy462;
2687     goto yy55;
2688 yy335:
2689     yyaccept = 4;
2690     yych = *(YYMARKER = ++YYCURSOR);
2691     if (yych == 'l') goto yy463;
2692     goto yy55;
2693 yy336:
2694     yyaccept = 4;
2695     yych = *(YYMARKER = ++YYCURSOR);
2696     if (yych == 'a') goto yy465;
2697     goto yy55;
2698 yy337:
2699     yyaccept = 4;
2700     yych = *(YYMARKER = ++YYCURSOR);
2701     if (yych == 'e') goto yy466;
2702     goto yy55;
2703 yy338:
2704     yyaccept = 4;
2705     yych = *(YYMARKER = ++YYCURSOR);
2706     if (yych == 'c') goto yy468;
2707     goto yy55;
2708 yy339:
2709     yyaccept = 4;
2710     yych = *(YYMARKER = ++YYCURSOR);
2711     if (yych == 'r') goto yy469;
2712     goto yy55;
2713 yy340:
2714     yyaccept = 4;
2715     yych = *(YYMARKER = ++YYCURSOR);
2716     if (yych == 's') goto yy471;
2717     goto yy55;
2718 yy341:
2719     yyaccept = 4;
2720     yych = *(YYMARKER = ++YYCURSOR);
2721     if (yych <= 'q') {
2722         if (yych == 'a') goto yy472;
2723         goto yy55;
2724     } else {
2725         if (yych <= 'r') goto yy473;
2726         if (yych == 'y') goto yy474;
2727         goto yy55;
2728     }
2729 yy342:
2730     yyaccept = 4;
2731     yych = *(YYMARKER = ++YYCURSOR);
2732     if (yych == 'p') goto yy475;
2733     goto yy55;
2734 yy343:
2735     yyaccept = 4;
2736     yych = *(YYMARKER = ++YYCURSOR);
2737     if (yych <= 'r') {
2738         if (yych == 'c') goto yy476;
2739         goto yy55;
2740     } else {
2741         if (yych <= 's') goto yy477;
2742         if (yych <= 't') goto yy478;
2743         goto yy55;
2744     }
2745 yy344:
2746     yyaccept = 4;
2747     yych = *(YYMARKER = ++YYCURSOR);
2748     if (yych == 'l') goto yy479;
2749     goto yy55;
2750 yy345:
2751     yyaccept = 4;
2752     yych = *(YYMARKER = ++YYCURSOR);
2753     if (yych == 'a') goto yy480;
2754     goto yy55;
2755 yy346:
2756     yyaccept = 4;
2757     yych = *(YYMARKER = ++YYCURSOR);
2758     if (yych == 'e') goto yy481;
2759     goto yy55;
2760 yy347:
2761     yyaccept = 4;
2762     yych = *(YYMARKER = ++YYCURSOR);
2763     if (yych == 'b') goto yy482;
2764     goto yy55;
2765 yy348:
2766     yyaccept = 4;
2767     yych = *(YYMARKER = ++YYCURSOR);
2768     if (yych == 'a') goto yy483;
2769     goto yy55;
2770 yy349:
2771     yyaccept = 4;
2772     yych = *(YYMARKER = ++YYCURSOR);
2773     if (yych == 'e') goto yy484;
2774     goto yy55;
2775 yy350:
2776     yyaccept = 4;
2777     yych = *(YYMARKER = ++YYCURSOR);
2778     if (yych == 'm') goto yy486;
2779     goto yy55;
2780 yy351:
2781     yyaccept = 4;
2782     yych = *(YYMARKER = ++YYCURSOR);
2783     if (yych == 'l') goto yy488;
2784     if (yych == 'o') goto yy489;
2785     goto yy55;
2786 yy352:
2787     yyaccept = 4;
2788     yych = *(YYMARKER = ++YYCURSOR);
2789     if (yych == 'e') goto yy490;
2790     goto yy55;
2791 yy353:
2792     yyaccept = 4;
2793     yych = *(YYMARKER = ++YYCURSOR);
2794     if (yych == 's') goto yy491;
2795     goto yy55;
2796 yy354:
2797     yyaccept = 4;
2798     yych = *(YYMARKER = ++YYCURSOR);
2799     if (yych == 'a') goto yy492;
2800     goto yy55;
2801 yy355:
2802     yyaccept = 16;
2803     yych = *(YYMARKER = ++YYCURSOR);
2804     if (yybm[256+yych] & 128) {
2805         goto yy54;
2806     }
2807     if (yych == '?') goto yy173;
2808     if (yych == '\\') goto yy174;
2809 yy356:
2810 #line 83 "strict_cpp.re"
2811     { BOOST_WAVE_RET(T_FOR); }
2812 #line 2813 "strict_cpp_re.inc"
2813 yy357:
2814     yyaccept = 4;
2815     yych = *(YYMARKER = ++YYCURSOR);
2816     if (yych == 'e') goto yy493;
2817     goto yy55;
2818 yy358:
2819     yyaccept = 4;
2820     yych = *(YYMARKER = ++YYCURSOR);
2821     if (yych == 'o') goto yy494;
2822     goto yy55;
2823 yy359:
2824     yyaccept = 4;
2825     yych = *(YYMARKER = ++YYCURSOR);
2826     if (yych == 'o') goto yy496;
2827     goto yy55;
2828 yy360:
2829     yyaccept = 4;
2830     yych = *(YYMARKER = ++YYCURSOR);
2831     if (yych == 'i') goto yy497;
2832     goto yy55;
2833 yy361:
2834     yyaccept = 17;
2835     yych = *(YYMARKER = ++YYCURSOR);
2836     if (yybm[256+yych] & 128) {
2837         goto yy54;
2838     }
2839     if (yych == '?') goto yy173;
2840     if (yych == '\\') goto yy174;
2841 yy362:
2842 #line 89 "strict_cpp.re"
2843     { BOOST_WAVE_RET(T_INT); }
2844 #line 2845 "strict_cpp_re.inc"
2845 yy363:
2846     yyaccept = 4;
2847     yych = *(YYMARKER = ++YYCURSOR);
2848     if (yych == 'g') goto yy498;
2849     goto yy55;
2850 yy364:
2851     yyaccept = 4;
2852     yych = *(YYMARKER = ++YYCURSOR);
2853     if (yych == 'a') goto yy500;
2854     goto yy55;
2855 yy365:
2856     yyaccept = 4;
2857     yych = *(YYMARKER = ++YYCURSOR);
2858     if (yych == 'e') goto yy501;
2859     goto yy55;
2860 yy366:
2861     yyaccept = 18;
2862     yych = *(YYMARKER = ++YYCURSOR);
2863     if (yybm[256+yych] & 128) {
2864         goto yy54;
2865     }
2866     if (yych == '?') goto yy173;
2867     if (yych == '\\') goto yy174;
2868 yy367:
2869 #line 93 "strict_cpp.re"
2870     { BOOST_WAVE_RET(T_NEW); }
2871 #line 2872 "strict_cpp_re.inc"
2872 yy368:
2873     yyaccept = 4;
2874     yych = *(YYMARKER = ++YYCURSOR);
2875     if (yych == 'x') goto yy502;
2876     goto yy55;
2877 yy369:
2878     yyaccept = 19;
2879     yych = *(YYMARKER = ++YYCURSOR);
2880     if (yych <= 'Z') {
2881         if (yych <= '>') {
2882             if (yych <= '/') goto yy370;
2883             if (yych <= '9') goto yy54;
2884         } else {
2885             if (yych <= '?') goto yy173;
2886             if (yych >= 'A') goto yy54;
2887         }
2888     } else {
2889         if (yych <= '^') {
2890             if (yych == '\\') goto yy174;
2891         } else {
2892             if (yych <= '_') goto yy503;
2893             if (yych <= '`') goto yy370;
2894             if (yych <= 'z') goto yy54;
2895         }
2896     }
2897 yy370:
2898 #line 210 "strict_cpp.re"
2899     { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_NOT_ALT); }
2900 #line 2901 "strict_cpp_re.inc"
2901 yy371:
2902     yyaccept = 4;
2903     yych = *(YYMARKER = ++YYCURSOR);
2904     if (yych == 'l') goto yy504;
2905     goto yy55;
2906 yy372:
2907     yyaccept = 4;
2908     yych = *(YYMARKER = ++YYCURSOR);
2909     if (yych == 'r') goto yy505;
2910     goto yy55;
2911 yy373:
2912     yyaccept = 4;
2913     yych = *(YYMARKER = ++YYCURSOR);
2914     if (yych == 'e') goto yy506;
2915     goto yy55;
2916 yy374:
2917     yyaccept = 4;
2918     yych = *(YYMARKER = ++YYCURSOR);
2919     if (yych == 'v') goto yy507;
2920     goto yy55;
2921 yy375:
2922     yyaccept = 4;
2923     yych = *(YYMARKER = ++YYCURSOR);
2924     if (yych == 't') goto yy508;
2925     goto yy55;
2926 yy376:
2927     yyaccept = 4;
2928     yych = *(YYMARKER = ++YYCURSOR);
2929     if (yych == 'l') goto yy509;
2930     goto yy55;
2931 yy377:
2932     yyaccept = 4;
2933     yych = *(YYMARKER = ++YYCURSOR);
2934     if (yych == 'i') goto yy510;
2935     goto yy55;
2936 yy378:
2937     yyaccept = 4;
2938     yych = *(YYMARKER = ++YYCURSOR);
2939     if (yych == 'n') goto yy511;
2940     goto yy55;
2941 yy379:
2942     yyaccept = 4;
2943     yych = *(YYMARKER = ++YYCURSOR);
2944     if (yych == 'u') goto yy512;
2945     goto yy55;
2946 yy380:
2947     yyaccept = 4;
2948     yych = *(YYMARKER = ++YYCURSOR);
2949     if (yych == 'u') goto yy513;
2950     goto yy55;
2951 yy381:
2952     yyaccept = 4;
2953     yych = *(YYMARKER = ++YYCURSOR);
2954     if (yych == 'r') goto yy514;
2955     goto yy55;
2956 yy382:
2957     yyaccept = 4;
2958     yych = *(YYMARKER = ++YYCURSOR);
2959     if (yych == 'n') goto yy515;
2960     goto yy55;
2961 yy383:
2962     yyaccept = 4;
2963     yych = *(YYMARKER = ++YYCURSOR);
2964     if (yych == 'e') goto yy516;
2965     goto yy55;
2966 yy384:
2967     yyaccept = 4;
2968     yych = *(YYMARKER = ++YYCURSOR);
2969     if (yych == 't') goto yy517;
2970     goto yy55;
2971 yy385:
2972     yyaccept = 4;
2973     yych = *(YYMARKER = ++YYCURSOR);
2974     if (yych == 'u') goto yy518;
2975     goto yy55;
2976 yy386:
2977     yyaccept = 4;
2978     yych = *(YYMARKER = ++YYCURSOR);
2979     if (yych == 't') goto yy519;
2980     goto yy55;
2981 yy387:
2982     yyaccept = 4;
2983     yych = *(YYMARKER = ++YYCURSOR);
2984     if (yych == 'p') goto yy520;
2985     goto yy55;
2986 yy388:
2987     yyaccept = 4;
2988     yych = *(YYMARKER = ++YYCURSOR);
2989     if (yych == 's') goto yy521;
2990     goto yy55;
2991 yy389:
2992     yyaccept = 4;
2993     yych = *(YYMARKER = ++YYCURSOR);
2994     if (yych == 'e') goto yy523;
2995     if (yych == 'o') goto yy524;
2996     goto yy55;
2997 yy390:
2998     yyaccept = 4;
2999     yych = *(YYMARKER = ++YYCURSOR);
3000     if (yych == 'e') goto yy525;
3001     goto yy55;
3002 yy391:
3003     yyaccept = 20;
3004     yych = *(YYMARKER = ++YYCURSOR);
3005     if (yybm[256+yych] & 128) {
3006         goto yy54;
3007     }
3008     if (yych == '?') goto yy173;
3009     if (yych == '\\') goto yy174;
3010 yy392:
3011 #line 117 "strict_cpp.re"
3012     { BOOST_WAVE_RET(T_TRY); }
3013 #line 3014 "strict_cpp_re.inc"
3014 yy393:
3015     yyaccept = 4;
3016     yych = *(YYMARKER = ++YYCURSOR);
3017     if (yych == 'e') goto yy527;
3018     goto yy55;
3019 yy394:
3020     yyaccept = 4;
3021     yych = *(YYMARKER = ++YYCURSOR);
3022     if (yych == 'o') goto yy528;
3023     goto yy55;
3024 yy395:
3025     yyaccept = 4;
3026     yych = *(YYMARKER = ++YYCURSOR);
3027     if (yych == 'i') goto yy529;
3028     goto yy55;
3029 yy396:
3030     yyaccept = 4;
3031     yych = *(YYMARKER = ++YYCURSOR);
3032     if (yych == 'n') goto yy530;
3033     goto yy55;
3034 yy397:
3035     yyaccept = 4;
3036     yych = *(YYMARKER = ++YYCURSOR);
3037     if (yych == 't') goto yy531;
3038     goto yy55;
3039 yy398:
3040     yyaccept = 4;
3041     yych = *(YYMARKER = ++YYCURSOR);
3042     if (yych == 'd') goto yy532;
3043     goto yy55;
3044 yy399:
3045     yyaccept = 4;
3046     yych = *(YYMARKER = ++YYCURSOR);
3047     if (yych == 'a') goto yy534;
3048     goto yy55;
3049 yy400:
3050     yyaccept = 4;
3051     yych = *(YYMARKER = ++YYCURSOR);
3052     if (yych == 'a') goto yy535;
3053     goto yy55;
3054 yy401:
3055     yyaccept = 4;
3056     yych = *(YYMARKER = ++YYCURSOR);
3057     if (yych == 'l') goto yy536;
3058     goto yy55;
3059 yy402:
3060     yyaccept = 21;
3061     yych = *(YYMARKER = ++YYCURSOR);
3062     if (yych <= 'Z') {
3063         if (yych <= '>') {
3064             if (yych <= '/') goto yy403;
3065             if (yych <= '9') goto yy54;
3066         } else {
3067             if (yych <= '?') goto yy173;
3068             if (yych >= 'A') goto yy54;
3069         }
3070     } else {
3071         if (yych <= '^') {
3072             if (yych == '\\') goto yy174;
3073         } else {
3074             if (yych <= '_') goto yy537;
3075             if (yych <= '`') goto yy403;
3076             if (yych <= 'z') goto yy54;
3077         }
3078     }
3079 yy403:
3080 #line 200 "strict_cpp.re"
3081     { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_XOR_ALT); }
3082 #line 3083 "strict_cpp_re.inc"
3083 yy404:
3084     yych = *++YYCURSOR;
3085     if (yych == '!') goto yy538;
3086     goto yy100;
3087 yy405:
3088     ++YYCURSOR;
3089     if (YYLIMIT <= YYCURSOR) YYFILL(1);
3090     yych = *YYCURSOR;
3091     if (yybm[0+yych] & 1) {
3092         goto yy98;
3093     }
3094     if (yych <= 0x1F) goto yy100;
3095     if (yych <= '"') goto yy540;
3096     if (yych <= '?') goto yy103;
3097     goto yy405;
3098 yy407:
3099     ++YYCURSOR;
3100     if (YYLIMIT <= YYCURSOR) YYFILL(1);
3101     yych = *YYCURSOR;
3102     if (yych <= '@') {
3103         if (yych <= '/') goto yy100;
3104         if (yych <= '9') goto yy541;
3105         goto yy100;
3106     } else {
3107         if (yych <= 'F') goto yy541;
3108         if (yych <= '`') goto yy100;
3109         if (yych <= 'f') goto yy541;
3110         goto yy100;
3111     }
3112 yy408:
3113     ++YYCURSOR;
3114     if (YYLIMIT <= YYCURSOR) YYFILL(1);
3115     yych = *YYCURSOR;
3116     if (yych <= '@') {
3117         if (yych <= '/') goto yy100;
3118         if (yych <= '9') goto yy542;
3119         goto yy100;
3120     } else {
3121         if (yych <= 'F') goto yy542;
3122         if (yych <= '`') goto yy100;
3123         if (yych <= 'f') goto yy542;
3124         goto yy100;
3125     }
3126 yy409:
3127     ++YYCURSOR;
3128     if (YYLIMIT <= YYCURSOR) YYFILL(1);
3129     yych = *YYCURSOR;
3130     if (yybm[0+yych] & 32) {
3131         goto yy409;
3132     }
3133     if (yych <= 0x1F) {
3134         if (yych <= 0x08) goto yy100;
3135         if (yych <= '\r') goto yy260;
3136         goto yy100;
3137     } else {
3138         if (yych == '/') goto yy105;
3139         goto yy260;
3140     }
3141 yy411:
3142     ++YYCURSOR;
3143 #line 162 "strict_cpp.re"
3144     { BOOST_WAVE_RET(T_POUND_POUND_TRIGRAPH); }
3145 #line 3146 "strict_cpp_re.inc"
3146 yy413:
3147     yych = *++YYCURSOR;
3148     if (yych == 'i') goto yy543;
3149     goto yy100;
3150 yy414:
3151     yych = *++YYCURSOR;
3152     if (yych == 'f') goto yy544;
3153     goto yy100;
3154 yy415:
3155     yych = *++YYCURSOR;
3156     if (yych == 'e') goto yy546;
3157     goto yy100;
3158 yy416:
3159     yych = *++YYCURSOR;
3160     if (yych == 'i') goto yy548;
3161     if (yych == 'r') goto yy549;
3162     goto yy100;
3163 yy417:
3164     yych = *++YYCURSOR;
3165     if (yych == 'o') goto yy550;
3166     goto yy100;
3167 yy418:
3168     yych = *++YYCURSOR;
3169     if (yych == 'e') goto yy551;
3170     goto yy100;
3171 yy419:
3172     yych = *++YYCURSOR;
3173     if (yych == 'd') goto yy552;
3174     goto yy100;
3175 yy420:
3176     yych = *++YYCURSOR;
3177     if (yych == 'l') goto yy553;
3178     goto yy100;
3179 yy421:
3180     yych = *++YYCURSOR;
3181     if (yych == 'e') goto yy554;
3182     goto yy100;
3183 yy422:
3184     yych = *++YYCURSOR;
3185     if (yych == 'g') goto yy556;
3186     goto yy100;
3187 yy423:
3188     yych = *++YYCURSOR;
3189     if (yych == 'i') goto yy557;
3190     goto yy100;
3191 yy424:
3192     yych = *++YYCURSOR;
3193     if (yych == 'e') goto yy558;
3194     goto yy100;
3195 yy425:
3196     yych = *++YYCURSOR;
3197     if (yych == 'n') goto yy559;
3198     goto yy100;
3199 yy426:
3200     ++YYCURSOR;
3201 #line 165 "strict_cpp.re"
3202     { BOOST_WAVE_RET(T_POUND_POUND_ALT); }
3203 #line 3204 "strict_cpp_re.inc"
3204 yy428:
3205     ++YYCURSOR;
3206     if (YYLIMIT <= YYCURSOR) YYFILL(1);
3207     yych = *YYCURSOR;
3208     if (yybm[0+yych] & 2) {
3209         goto yy129;
3210     }
3211     if (yych <= 0x1F) goto yy100;
3212     if (yych <= '\'') goto yy560;
3213     if (yych <= '?') goto yy131;
3214     goto yy428;
3215 yy430:
3216     ++YYCURSOR;
3217     if (YYLIMIT <= YYCURSOR) YYFILL(1);
3218     yych = *YYCURSOR;
3219     if (yych <= '@') {
3220         if (yych <= '/') goto yy100;
3221         if (yych <= '9') goto yy561;
3222         goto yy100;
3223     } else {
3224         if (yych <= 'F') goto yy561;
3225         if (yych <= '`') goto yy100;
3226         if (yych <= 'f') goto yy561;
3227         goto yy100;
3228     }
3229 yy431:
3230     ++YYCURSOR;
3231     if (YYLIMIT <= YYCURSOR) YYFILL(1);
3232     yych = *YYCURSOR;
3233     if (yych <= '@') {
3234         if (yych <= '/') goto yy100;
3235         if (yych <= '9') goto yy562;
3236         goto yy100;
3237     } else {
3238         if (yych <= 'F') goto yy562;
3239         if (yych <= '`') goto yy100;
3240         if (yych <= 'f') goto yy562;
3241         goto yy100;
3242     }
3243 yy432:
3244     ++YYCURSOR;
3245 #line 226 "strict_cpp.re"
3246     { BOOST_WAVE_RET(T_ORASSIGN_TRIGRAPH); }
3247 #line 3248 "strict_cpp_re.inc"
3248 yy434:
3249     yych = *++YYCURSOR;
3250     if (yych == '?') goto yy563;
3251     goto yy100;
3252 yy435:
3253     ++YYCURSOR;
3254 #line 249 "strict_cpp.re"
3255     { BOOST_WAVE_RET(T_OROR_TRIGRAPH); }
3256 #line 3257 "strict_cpp_re.inc"
3257 yy437:
3258     ++YYCURSOR;
3259 #line 221 "strict_cpp.re"
3260     { BOOST_WAVE_RET(T_XORASSIGN_TRIGRAPH); }
3261 #line 3262 "strict_cpp_re.inc"
3262 yy439:
3263     ++YYCURSOR;
3264 #line 163 "strict_cpp.re"
3265     { BOOST_WAVE_RET(T_POUND_POUND_TRIGRAPH); }
3266 #line 3267 "strict_cpp_re.inc"
3267 yy441:
3268     yych = *++YYCURSOR;
3269     if (yych == '?') goto yy564;
3270     goto yy100;
3271 yy442:
3272     ++YYCURSOR;
3273     if (YYLIMIT <= YYCURSOR) YYFILL(1);
3274     yych = *YYCURSOR;
3275     if (yych <= '@') {
3276         if (yych <= '/') goto yy100;
3277         if (yych <= '9') goto yy565;
3278         goto yy100;
3279     } else {
3280         if (yych <= 'F') goto yy565;
3281         if (yych <= '`') goto yy100;
3282         if (yych <= 'f') goto yy565;
3283         goto yy100;
3284     }
3285 yy443:
3286     ++YYCURSOR;
3287     if (YYLIMIT <= YYCURSOR) YYFILL(1);
3288     yych = *YYCURSOR;
3289     if (yych <= '@') {
3290         if (yych <= '/') goto yy100;
3291         if (yych <= '9') goto yy566;
3292         goto yy100;
3293     } else {
3294         if (yych <= 'F') goto yy566;
3295         if (yych <= '`') goto yy100;
3296         if (yych <= 'f') goto yy566;
3297         goto yy100;
3298     }
3299 yy444:
3300     yyaccept = 4;
3301     yych = *(YYMARKER = ++YYCURSOR);
3302     if (yych == 'c') goto yy567;
3303     goto yy55;
3304 yy445:
3305     yyaccept = 4;
3306     yych = *(YYMARKER = ++YYCURSOR);
3307     if (yych == 'n') goto yy568;
3308     goto yy55;
3309 yy446:
3310     yyaccept = 4;
3311     yych = *(YYMARKER = ++YYCURSOR);
3312     if (yych == 'l') goto yy455;
3313     if (yych == 't') goto yy569;
3314     goto yy55;
3315 yy447:
3316     yyaccept = 4;
3317     yych = *(YYMARKER = ++YYCURSOR);
3318     if (yych == 'a') goto yy570;
3319     goto yy55;
3320 yy448:
3321     yyaccept = 4;
3322     yych = *(YYMARKER = ++YYCURSOR);
3323     if (yych == 'y') goto yy571;
3324     goto yy55;
3325 yy449:
3326     yyaccept = 22;
3327     yych = *(YYMARKER = ++YYCURSOR);
3328     if (yybm[256+yych] & 128) {
3329         goto yy54;
3330     }
3331     if (yych == '?') goto yy173;
3332     if (yych == '\\') goto yy174;
3333 yy450:
3334 #line 144 "strict_cpp.re"
3335     { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_ASM : T_IDENTIFIER); }
3336 #line 3337 "strict_cpp_re.inc"
3337 yy451:
3338     yyaccept = 4;
3339     yych = *(YYMARKER = ++YYCURSOR);
3340     if (yych == 'e') goto yy573;
3341     goto yy55;
3342 yy452:
3343     yyaccept = 4;
3344     yych = *(YYMARKER = ++YYCURSOR);
3345     if (yych == 'c') goto yy574;
3346     goto yy55;
3347 yy453:
3348     yyaccept = 4;
3349     yych = *(YYMARKER = ++YYCURSOR);
3350     if (yych == 'l') goto yy575;
3351     goto yy55;
3352 yy454:
3353     yyaccept = 4;
3354     yych = *(YYMARKER = ++YYCURSOR);
3355     if (yych == 't') goto yy576;
3356     goto yy55;
3357 yy455:
3358     yyaccept = 4;
3359     yych = *(YYMARKER = ++YYCURSOR);
3360     if (yych == 'i') goto yy577;
3361     goto yy55;
3362 yy456:
3363     yyaccept = 4;
3364     yych = *(YYMARKER = ++YYCURSOR);
3365     if (yych == 'c') goto yy578;
3366     goto yy55;
3367 yy457:
3368     yyaccept = 4;
3369     yych = *(YYMARKER = ++YYCURSOR);
3370     if (yych == 'n') goto yy579;
3371     goto yy55;
3372 yy458:
3373     yyaccept = 4;
3374     yych = *(YYMARKER = ++YYCURSOR);
3375     if (yych == 'e') goto yy580;
3376     goto yy55;
3377 yy459:
3378     yyaccept = 23;
3379     yych = *(YYMARKER = ++YYCURSOR);
3380     if (yybm[256+yych] & 128) {
3381         goto yy54;
3382     }
3383     if (yych == '?') goto yy173;
3384     if (yych == '\\') goto yy174;
3385 yy460:
3386 #line 50 "strict_cpp.re"
3387     { BOOST_WAVE_RET(T_AUTO); }
3388 #line 3389 "strict_cpp_re.inc"
3389 yy461:
3390     yyaccept = 4;
3391     yych = *(YYMARKER = ++YYCURSOR);
3392     if (yych == 'n') goto yy581;
3393     goto yy55;
3394 yy462:
3395     yyaccept = 4;
3396     yych = *(YYMARKER = ++YYCURSOR);
3397     if (yych == 'r') goto yy582;
3398     goto yy55;
3399 yy463:
3400     yyaccept = 24;
3401     yych = *(YYMARKER = ++YYCURSOR);
3402     if (yybm[256+yych] & 128) {
3403         goto yy54;
3404     }
3405     if (yych == '?') goto yy173;
3406     if (yych == '\\') goto yy174;
3407 yy464:
3408 #line 51 "strict_cpp.re"
3409     { BOOST_WAVE_RET(T_BOOL); }
3410 #line 3411 "strict_cpp_re.inc"
3411 yy465:
3412     yyaccept = 4;
3413     yych = *(YYMARKER = ++YYCURSOR);
3414     if (yych == 'k') goto yy584;
3415     goto yy55;
3416 yy466:
3417     yyaccept = 25;
3418     yych = *(YYMARKER = ++YYCURSOR);
3419     if (yybm[256+yych] & 128) {
3420         goto yy54;
3421     }
3422     if (yych == '?') goto yy173;
3423     if (yych == '\\') goto yy174;
3424 yy467:
3425 #line 53 "strict_cpp.re"
3426     { BOOST_WAVE_RET(T_CASE); }
3427 #line 3428 "strict_cpp_re.inc"
3428 yy468:
3429     yyaccept = 4;
3430     yych = *(YYMARKER = ++YYCURSOR);
3431     if (yych == 'h') goto yy586;
3432     goto yy55;
3433 yy469:
3434     yyaccept = 26;
3435     yych = *(YYMARKER = ++YYCURSOR);
3436     if (yych <= '>') {
3437         if (yych <= '2') {
3438             if (yych <= '/') goto yy470;
3439             if (yych == '1') goto yy588;
3440             goto yy54;
3441         } else {
3442             if (yych <= '7') {
3443                 if (yych <= '3') goto yy589;
3444                 goto yy54;
3445             } else {
3446                 if (yych <= '8') goto yy590;
3447                 if (yych <= '9') goto yy54;
3448             }
3449         }
3450     } else {
3451         if (yych <= '\\') {
3452             if (yych <= '@') {
3453                 if (yych <= '?') goto yy173;
3454             } else {
3455                 if (yych <= 'Z') goto yy54;
3456                 if (yych >= '\\') goto yy174;
3457             }
3458         } else {
3459             if (yych <= '_') {
3460                 if (yych >= '_') goto yy54;
3461             } else {
3462                 if (yych <= '`') goto yy470;
3463                 if (yych <= 'z') goto yy54;
3464             }
3465         }
3466     }
3467 yy470:
3468 #line 55 "strict_cpp.re"
3469     { BOOST_WAVE_RET(T_CHAR); }
3470 #line 3471 "strict_cpp_re.inc"
3471 yy471:
3472     yyaccept = 4;
3473     yych = *(YYMARKER = ++YYCURSOR);
3474     if (yych == 's') goto yy591;
3475     goto yy55;
3476 yy472:
3477     yyaccept = 4;
3478     yych = *(YYMARKER = ++YYCURSOR);
3479     if (yych == 'w') goto yy593;
3480     goto yy55;
3481 yy473:
3482     yyaccept = 4;
3483     yych = *(YYMARKER = ++YYCURSOR);
3484     if (yych == 'e') goto yy594;
3485     goto yy55;
3486 yy474:
3487     yyaccept = 4;
3488     yych = *(YYMARKER = ++YYCURSOR);
3489     if (yych == 'i') goto yy595;
3490     goto yy55;
3491 yy475:
3492     yyaccept = 4;
3493     yych = *(YYMARKER = ++YYCURSOR);
3494     if (yych == 'l') goto yy596;
3495     goto yy55;
3496 yy476:
3497     yyaccept = 4;
3498     yych = *(YYMARKER = ++YYCURSOR);
3499     if (yych == 'e') goto yy598;
3500     goto yy55;
3501 yy477:
3502     yyaccept = 4;
3503     yych = *(YYMARKER = ++YYCURSOR);
3504     if (yych == 't') goto yy599;
3505     goto yy55;
3506 yy478:
3507     yyaccept = 4;
3508     yych = *(YYMARKER = ++YYCURSOR);
3509     if (yych == 'i') goto yy601;
3510     goto yy55;
3511 yy479:
3512     yyaccept = 4;
3513     yych = *(YYMARKER = ++YYCURSOR);
3514     if (yych == 't') goto yy602;
3515     goto yy55;
3516 yy480:
3517     yyaccept = 4;
3518     yych = *(YYMARKER = ++YYCURSOR);
3519     if (yych == 'u') goto yy603;
3520     goto yy55;
3521 yy481:
3522     yyaccept = 4;
3523     yych = *(YYMARKER = ++YYCURSOR);
3524     if (yych == 't') goto yy604;
3525     goto yy55;
3526 yy482:
3527     yyaccept = 4;
3528     yych = *(YYMARKER = ++YYCURSOR);
3529     if (yych == 'l') goto yy605;
3530     goto yy55;
3531 yy483:
3532     yyaccept = 4;
3533     yych = *(YYMARKER = ++YYCURSOR);
3534     if (yych == 'm') goto yy606;
3535     goto yy55;
3536 yy484:
3537     yyaccept = 27;
3538     yych = *(YYMARKER = ++YYCURSOR);
3539     if (yybm[256+yych] & 128) {
3540         goto yy54;
3541     }
3542     if (yych == '?') goto yy173;
3543     if (yych == '\\') goto yy174;
3544 yy485:
3545 #line 76 "strict_cpp.re"
3546     { BOOST_WAVE_RET(T_ELSE); }
3547 #line 3548 "strict_cpp_re.inc"
3548 yy486:
3549     yyaccept = 28;
3550     yych = *(YYMARKER = ++YYCURSOR);
3551     if (yybm[256+yych] & 128) {
3552         goto yy54;
3553     }
3554     if (yych == '?') goto yy173;
3555     if (yych == '\\') goto yy174;
3556 yy487:
3557 #line 77 "strict_cpp.re"
3558     { BOOST_WAVE_RET(T_ENUM); }
3559 #line 3560 "strict_cpp_re.inc"
3560 yy488:
3561     yyaccept = 4;
3562     yych = *(YYMARKER = ++YYCURSOR);
3563     if (yych == 'i') goto yy607;
3564     goto yy55;
3565 yy489:
3566     yyaccept = 4;
3567     yych = *(YYMARKER = ++YYCURSOR);
3568     if (yych == 'r') goto yy608;
3569     goto yy55;
3570 yy490:
3571     yyaccept = 4;
3572     yych = *(YYMARKER = ++YYCURSOR);
3573     if (yych == 'r') goto yy609;
3574     goto yy55;
3575 yy491:
3576     yyaccept = 4;
3577     yych = *(YYMARKER = ++YYCURSOR);
3578     if (yych == 'e') goto yy610;
3579     goto yy55;
3580 yy492:
3581     yyaccept = 4;
3582     yych = *(YYMARKER = ++YYCURSOR);
3583     if (yych == 't') goto yy612;
3584     goto yy55;
3585 yy493:
3586     yyaccept = 4;
3587     yych = *(YYMARKER = ++YYCURSOR);
3588     if (yych == 'n') goto yy614;
3589     goto yy55;
3590 yy494:
3591     yyaccept = 29;
3592     yych = *(YYMARKER = ++YYCURSOR);
3593     if (yybm[256+yych] & 128) {
3594         goto yy54;
3595     }
3596     if (yych == '?') goto yy173;
3597     if (yych == '\\') goto yy174;
3598 yy495:
3599 #line 85 "strict_cpp.re"
3600     { BOOST_WAVE_RET(T_GOTO); }
3601 #line 3602 "strict_cpp_re.inc"
3602 yy496:
3603     yyaccept = 4;
3604     yych = *(YYMARKER = ++YYCURSOR);
3605     if (yych == 'r') goto yy615;
3606     goto yy55;
3607 yy497:
3608     yyaccept = 4;
3609     yych = *(YYMARKER = ++YYCURSOR);
3610     if (yych == 'n') goto yy616;
3611     goto yy55;
3612 yy498:
3613     yyaccept = 30;
3614     yych = *(YYMARKER = ++YYCURSOR);
3615     if (yybm[256+yych] & 128) {
3616         goto yy54;
3617     }
3618     if (yych == '?') goto yy173;
3619     if (yych == '\\') goto yy174;
3620 yy499:
3621 #line 90 "strict_cpp.re"
3622     { BOOST_WAVE_RET(T_LONG); }
3623 #line 3624 "strict_cpp_re.inc"
3624 yy500:
3625     yyaccept = 4;
3626     yych = *(YYMARKER = ++YYCURSOR);
3627     if (yych == 'b') goto yy617;
3628     goto yy55;
3629 yy501:
3630     yyaccept = 4;
3631     yych = *(YYMARKER = ++YYCURSOR);
3632     if (yych == 's') goto yy618;
3633     goto yy55;
3634 yy502:
3635     yyaccept = 4;
3636     yych = *(YYMARKER = ++YYCURSOR);
3637     if (yych == 'c') goto yy619;
3638     goto yy55;
3639 yy503:
3640     yyaccept = 4;
3641     yych = *(YYMARKER = ++YYCURSOR);
3642     if (yych == 'e') goto yy620;
3643     goto yy55;
3644 yy504:
3645     yyaccept = 4;
3646     yych = *(YYMARKER = ++YYCURSOR);
3647     if (yych == 'p') goto yy621;
3648     goto yy55;
3649 yy505:
3650     yyaccept = 4;
3651     yych = *(YYMARKER = ++YYCURSOR);
3652     if (yych == 'a') goto yy622;
3653     goto yy55;
3654 yy506:
3655     yyaccept = 4;
3656     yych = *(YYMARKER = ++YYCURSOR);
3657     if (yych == 'q') goto yy623;
3658     goto yy55;
3659 yy507:
3660     yyaccept = 4;
3661     yych = *(YYMARKER = ++YYCURSOR);
3662     if (yych == 'a') goto yy625;
3663     goto yy55;
3664 yy508:
3665     yyaccept = 4;
3666     yych = *(YYMARKER = ++YYCURSOR);
3667     if (yych == 'e') goto yy626;
3668     goto yy55;
3669 yy509:
3670     yyaccept = 4;
3671     yych = *(YYMARKER = ++YYCURSOR);
3672     if (yych == 'i') goto yy627;
3673     goto yy55;
3674 yy510:
3675     yyaccept = 4;
3676     yych = *(YYMARKER = ++YYCURSOR);
3677     if (yych == 's') goto yy628;
3678     goto yy55;
3679 yy511:
3680     yyaccept = 4;
3681     yych = *(YYMARKER = ++YYCURSOR);
3682     if (yych == 't') goto yy629;
3683     goto yy55;
3684 yy512:
3685     yyaccept = 4;
3686     yych = *(YYMARKER = ++YYCURSOR);
3687     if (yych == 'i') goto yy630;
3688     goto yy55;
3689 yy513:
3690     yyaccept = 4;
3691     yych = *(YYMARKER = ++YYCURSOR);
3692     if (yych == 'r') goto yy631;
3693     goto yy55;
3694 yy514:
3695     yyaccept = 4;
3696     yych = *(YYMARKER = ++YYCURSOR);
3697     if (yych == 't') goto yy632;
3698     goto yy55;
3699 yy515:
3700     yyaccept = 4;
3701     yych = *(YYMARKER = ++YYCURSOR);
3702     if (yych == 'e') goto yy634;
3703     goto yy55;
3704 yy516:
3705     yyaccept = 4;
3706     yych = *(YYMARKER = ++YYCURSOR);
3707     if (yych == 'o') goto yy635;
3708     goto yy55;
3709 yy517:
3710     yyaccept = 4;
3711     yych = *(YYMARKER = ++YYCURSOR);
3712     if (yych == 'i') goto yy636;
3713     goto yy55;
3714 yy518:
3715     yyaccept = 4;
3716     yych = *(YYMARKER = ++YYCURSOR);
3717     if (yych == 'c') goto yy637;
3718     goto yy55;
3719 yy519:
3720     yyaccept = 4;
3721     yych = *(YYMARKER = ++YYCURSOR);
3722     if (yych == 'c') goto yy638;
3723     goto yy55;
3724 yy520:
3725     yyaccept = 4;
3726     yych = *(YYMARKER = ++YYCURSOR);
3727     if (yych == 'l') goto yy639;
3728     goto yy55;
3729 yy521:
3730     yyaccept = 31;
3731     yych = *(YYMARKER = ++YYCURSOR);
3732     if (yybm[256+yych] & 128) {
3733         goto yy54;
3734     }
3735     if (yych == '?') goto yy173;
3736     if (yych == '\\') goto yy174;
3737 yy522:
3738 #line 113 "strict_cpp.re"
3739     { BOOST_WAVE_RET(T_THIS); }
3740 #line 3741 "strict_cpp_re.inc"
3741 yy523:
3742     yyaccept = 4;
3743     yych = *(YYMARKER = ++YYCURSOR);
3744     if (yych == 'a') goto yy640;
3745     goto yy55;
3746 yy524:
3747     yyaccept = 4;
3748     yych = *(YYMARKER = ++YYCURSOR);
3749     if (yych == 'w') goto yy641;
3750     goto yy55;
3751 yy525:
3752     yyaccept = 32;
3753     yych = *(YYMARKER = ++YYCURSOR);
3754     if (yybm[256+yych] & 128) {
3755         goto yy54;
3756     }
3757     if (yych == '?') goto yy173;
3758     if (yych == '\\') goto yy174;
3759 yy526:
3760 #line 116 "strict_cpp.re"
3761     { BOOST_WAVE_RET(T_TRUE); }
3762 #line 3763 "strict_cpp_re.inc"
3763 yy527:
3764     yyaccept = 4;
3765     yych = *(YYMARKER = ++YYCURSOR);
3766     if (yych <= 'h') {
3767         if (yych == 'd') goto yy643;
3768         goto yy55;
3769     } else {
3770         if (yych <= 'i') goto yy644;
3771         if (yych == 'n') goto yy645;
3772         goto yy55;
3773     }
3774 yy528:
3775     yyaccept = 4;
3776     yych = *(YYMARKER = ++YYCURSOR);
3777     if (yych == 'n') goto yy646;
3778     goto yy55;
3779 yy529:
3780     yyaccept = 4;
3781     yych = *(YYMARKER = ++YYCURSOR);
3782     if (yych == 'g') goto yy648;
3783     goto yy55;
3784 yy530:
3785     yyaccept = 4;
3786     yych = *(YYMARKER = ++YYCURSOR);
3787     if (yych == 'g') goto yy649;
3788     goto yy55;
3789 yy531:
3790     yyaccept = 4;
3791     yych = *(YYMARKER = ++YYCURSOR);
3792     if (yych == 'u') goto yy651;
3793     goto yy55;
3794 yy532:
3795     yyaccept = 33;
3796     yych = *(YYMARKER = ++YYCURSOR);
3797     if (yybm[256+yych] & 128) {
3798         goto yy54;
3799     }
3800     if (yych == '?') goto yy173;
3801     if (yych == '\\') goto yy174;
3802 yy533:
3803 #line 125 "strict_cpp.re"
3804     { BOOST_WAVE_RET(T_VOID); }
3805 #line 3806 "strict_cpp_re.inc"
3806 yy534:
3807     yyaccept = 4;
3808     yych = *(YYMARKER = ++YYCURSOR);
3809     if (yych == 't') goto yy652;
3810     goto yy55;
3811 yy535:
3812     yyaccept = 4;
3813     yych = *(YYMARKER = ++YYCURSOR);
3814     if (yych == 'r') goto yy653;
3815     goto yy55;
3816 yy536:
3817     yyaccept = 4;
3818     yych = *(YYMARKER = ++YYCURSOR);
3819     if (yych == 'e') goto yy654;
3820     goto yy55;
3821 yy537:
3822     yyaccept = 4;
3823     yych = *(YYMARKER = ++YYCURSOR);
3824     if (yych == 'e') goto yy656;
3825     goto yy55;
3826 yy538:
3827     ++YYCURSOR;
3828 #line 250 "strict_cpp.re"
3829     { BOOST_WAVE_RET(T_OROR_TRIGRAPH); }
3830 #line 3831 "strict_cpp_re.inc"
3831 yy540:
3832     yyaccept = 34;
3833     YYMARKER = ++YYCURSOR;
3834     if (YYLIMIT <= YYCURSOR) YYFILL(1);
3835     yych = *YYCURSOR;
3836     if (yybm[0+yych] & 1) {
3837         goto yy98;
3838     }
3839     if (yych <= 0x1F) goto yy102;
3840     if (yych <= '"') goto yy101;
3841     if (yych <= '?') goto yy103;
3842     goto yy104;
3843 yy541:
3844     ++YYCURSOR;
3845     if (YYLIMIT <= YYCURSOR) YYFILL(1);
3846     yych = *YYCURSOR;
3847     if (yych <= '@') {
3848         if (yych <= '/') goto yy100;
3849         if (yych <= '9') goto yy657;
3850         goto yy100;
3851     } else {
3852         if (yych <= 'F') goto yy657;
3853         if (yych <= '`') goto yy100;
3854         if (yych <= 'f') goto yy657;
3855         goto yy100;
3856     }
3857 yy542:
3858     ++YYCURSOR;
3859     if (YYLIMIT <= YYCURSOR) YYFILL(1);
3860     yych = *YYCURSOR;
3861     if (yych <= '@') {
3862         if (yych <= '/') goto yy100;
3863         if (yych <= '9') goto yy259;
3864         goto yy100;
3865     } else {
3866         if (yych <= 'F') goto yy259;
3867         if (yych <= '`') goto yy100;
3868         if (yych <= 'f') goto yy259;
3869         goto yy100;
3870     }
3871 yy543:
3872     yych = *++YYCURSOR;
3873     if (yych == 'n') goto yy658;
3874     goto yy100;
3875 yy544:
3876     ++YYCURSOR;
3877 #line 329 "strict_cpp.re"
3878     { BOOST_WAVE_RET(T_PP_ELIF); }
3879 #line 3880 "strict_cpp_re.inc"
3880 yy546:
3881     ++YYCURSOR;
3882 #line 328 "strict_cpp.re"
3883     { BOOST_WAVE_RET(T_PP_ELSE); }
3884 #line 3885 "strict_cpp_re.inc"
3885 yy548:
3886     yych = *++YYCURSOR;
3887     if (yych == 'f') goto yy659;
3888     goto yy100;
3889 yy549:
3890     yych = *++YYCURSOR;
3891     if (yych == 'e') goto yy661;
3892     goto yy100;
3893 yy550:
3894     yych = *++YYCURSOR;
3895     if (yych == 'r') goto yy662;
3896     goto yy100;
3897 yy551:
3898     yych = *++YYCURSOR;
3899     if (yych == 'f') goto yy664;
3900     goto yy100;
3901 yy552:
3902     yych = *++YYCURSOR;
3903     if (yych == 'e') goto yy666;
3904     goto yy100;
3905 yy553:
3906     yych = *++YYCURSOR;
3907     if (yych == 'u') goto yy667;
3908     goto yy100;
3909 yy554:
3910     ++YYCURSOR;
3911 #line 333 "strict_cpp.re"
3912     { BOOST_WAVE_RET(T_PP_LINE); }
3913 #line 3914 "strict_cpp_re.inc"
3914 yy556:
3915     yych = *++YYCURSOR;
3916     if (yych == 'm') goto yy668;
3917     goto yy100;
3918 yy557:
3919     yych = *++YYCURSOR;
3920     if (yych == 'o') goto yy669;
3921     goto yy100;
3922 yy558:
3923     yych = *++YYCURSOR;
3924     if (yych == 'f') goto yy670;
3925     goto yy100;
3926 yy559:
3927     yych = *++YYCURSOR;
3928     if (yych == 'i') goto yy672;
3929     goto yy100;
3930 yy560:
3931     yyaccept = 35;
3932     YYMARKER = ++YYCURSOR;
3933     if (YYLIMIT <= YYCURSOR) YYFILL(1);
3934     yych = *YYCURSOR;
3935     if (yybm[0+yych] & 2) {
3936         goto yy129;
3937     }
3938     if (yych <= 0x1F) goto yy277;
3939     if (yych <= '\'') goto yy276;
3940     if (yych <= '?') goto yy131;
3941     goto yy132;
3942 yy561:
3943     ++YYCURSOR;
3944     if (YYLIMIT <= YYCURSOR) YYFILL(1);
3945     yych = *YYCURSOR;
3946     if (yych <= '@') {
3947         if (yych <= '/') goto yy100;
3948         if (yych <= '9') goto yy673;
3949         goto yy100;
3950     } else {
3951         if (yych <= 'F') goto yy673;
3952         if (yych <= '`') goto yy100;
3953         if (yych <= 'f') goto yy673;
3954         goto yy100;
3955     }
3956 yy562:
3957     ++YYCURSOR;
3958     if (YYLIMIT <= YYCURSOR) YYFILL(1);
3959     yych = *YYCURSOR;
3960     if (yych <= '@') {
3961         if (yych <= '/') goto yy100;
3962         if (yych <= '9') goto yy282;
3963         goto yy100;
3964     } else {
3965         if (yych <= 'F') goto yy282;
3966         if (yych <= '`') goto yy100;
3967         if (yych <= 'f') goto yy282;
3968         goto yy100;
3969     }
3970 yy563:
3971     yych = *++YYCURSOR;
3972     if (yych == '!') goto yy674;
3973     goto yy100;
3974 yy564:
3975     yych = *++YYCURSOR;
3976     if (yych == '=') goto yy676;
3977     goto yy100;
3978 yy565:
3979     ++YYCURSOR;
3980     if (YYLIMIT <= YYCURSOR) YYFILL(1);
3981     yych = *YYCURSOR;
3982     if (yych <= '@') {
3983         if (yych <= '/') goto yy100;
3984         if (yych <= '9') goto yy184;
3985         goto yy100;
3986     } else {
3987         if (yych <= 'F') goto yy184;
3988         if (yych <= '`') goto yy100;
3989         if (yych <= 'f') goto yy184;
3990         goto yy100;
3991     }
3992 yy566:
3993     ++YYCURSOR;
3994     if (YYLIMIT <= YYCURSOR) YYFILL(1);
3995     yych = *YYCURSOR;
3996     if (yych <= '@') {
3997         if (yych <= '/') goto yy100;
3998         if (yych <= '9') goto yy54;
3999         goto yy100;
4000     } else {
4001         if (yych <= 'F') goto yy54;
4002         if (yych <= '`') goto yy100;
4003         if (yych <= 'f') goto yy54;
4004         goto yy100;
4005     }
4006 yy567:
4007     yyaccept = 4;
4008     yych = *(YYMARKER = ++YYCURSOR);
4009     if (yych == 'e') goto yy678;
4010     goto yy55;
4011 yy568:
4012     yyaccept = 4;
4013     yych = *(YYMARKER = ++YYCURSOR);
4014     if (yych == 'a') goto yy679;
4015     goto yy55;
4016 yy569:
4017     yyaccept = 4;
4018     yych = *(YYMARKER = ++YYCURSOR);
4019     switch (yych) {
4020     case '1':    goto yy680;
4021     case '3':    goto yy681;
4022     case '6':    goto yy682;
4023     case '8':    goto yy683;
4024     default:    goto yy55;
4025     }
4026 yy570:
4027     yyaccept = 4;
4028     yych = *(YYMARKER = ++YYCURSOR);
4029     if (yych == 'v') goto yy685;
4030     goto yy55;
4031 yy571:
4032     yyaccept = 36;
4033     yych = *(YYMARKER = ++YYCURSOR);
4034     if (yybm[256+yych] & 128) {
4035         goto yy54;
4036     }
4037     if (yych == '?') goto yy173;
4038     if (yych == '\\') goto yy174;
4039 yy572:
4040 #line 139 "strict_cpp.re"
4041     { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_TRY : T_IDENTIFIER); }
4042 #line 4043 "strict_cpp_re.inc"
4043 yy573:
4044     yyaccept = 4;
4045     yych = *(YYMARKER = ++YYCURSOR);
4046     if (yych == 'd') goto yy686;
4047     goto yy55;
4048 yy574:
4049     yyaccept = 4;
4050     yych = *(YYMARKER = ++YYCURSOR);
4051     if (yych == 'l') goto yy688;
4052     goto yy55;
4053 yy575:
4054     yyaccept = 4;
4055     yych = *(YYMARKER = ++YYCURSOR);
4056     if (yych == 's') goto yy690;
4057     goto yy55;
4058 yy576:
4059     yyaccept = 4;
4060     yych = *(YYMARKER = ++YYCURSOR);
4061     if (yych == 'c') goto yy691;
4062     goto yy55;
4063 yy577:
4064     yyaccept = 4;
4065     yych = *(YYMARKER = ++YYCURSOR);
4066     if (yych == 'n') goto yy692;
4067     goto yy55;
4068 yy578:
4069     yyaccept = 4;
4070     yych = *(YYMARKER = ++YYCURSOR);
4071     if (yych == 'a') goto yy693;
4072     goto yy55;
4073 yy579:
4074     yyaccept = 4;
4075     yych = *(YYMARKER = ++YYCURSOR);
4076     if (yych == 'a') goto yy694;
4077     if (yych == 'o') goto yy695;
4078     goto yy55;
4079 yy580:
4080     yyaccept = 4;
4081     yych = *(YYMARKER = ++YYCURSOR);
4082     if (yych == 'q') goto yy696;
4083     goto yy55;
4084 yy581:
4085     yyaccept = 4;
4086     yych = *(YYMARKER = ++YYCURSOR);
4087     if (yych == 'd') goto yy698;
4088     goto yy55;
4089 yy582:
4090     yyaccept = 37;
4091     yych = *(YYMARKER = ++YYCURSOR);
4092     if (yybm[256+yych] & 128) {
4093         goto yy54;
4094     }
4095     if (yych == '?') goto yy173;
4096     if (yych == '\\') goto yy174;
4097 yy583:
4098 #line 204 "strict_cpp.re"
4099     { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_OR_ALT); }
4100 #line 4101 "strict_cpp_re.inc"
4101 yy584:
4102     yyaccept = 38;
4103     yych = *(YYMARKER = ++YYCURSOR);
4104     if (yybm[256+yych] & 128) {
4105         goto yy54;
4106     }
4107     if (yych == '?') goto yy173;
4108     if (yych == '\\') goto yy174;
4109 yy585:
4110 #line 52 "strict_cpp.re"
4111     { BOOST_WAVE_RET(T_BREAK); }
4112 #line 4113 "strict_cpp_re.inc"
4113 yy586:
4114     yyaccept = 39;
4115     yych = *(YYMARKER = ++YYCURSOR);
4116     if (yybm[256+yych] & 128) {
4117         goto yy54;
4118     }
4119     if (yych == '?') goto yy173;
4120     if (yych == '\\') goto yy174;
4121 yy587:
4122 #line 54 "strict_cpp.re"
4123     { BOOST_WAVE_RET(T_CATCH); }
4124 #line 4125 "strict_cpp_re.inc"
4125 yy588:
4126     yyaccept = 4;
4127     yych = *(YYMARKER = ++YYCURSOR);
4128     if (yych == '6') goto yy700;
4129     goto yy55;
4130 yy589:
4131     yyaccept = 4;
4132     yych = *(YYMARKER = ++YYCURSOR);
4133     if (yych == '2') goto yy701;
4134     goto yy55;
4135 yy590:
4136     yyaccept = 4;
4137     yych = *(YYMARKER = ++YYCURSOR);
4138     if (yych == '_') goto yy702;
4139     goto yy55;
4140 yy591:
4141     yyaccept = 40;
4142     yych = *(YYMARKER = ++YYCURSOR);
4143     if (yybm[256+yych] & 128) {
4144         goto yy54;
4145     }
4146     if (yych == '?') goto yy173;
4147     if (yych == '\\') goto yy174;
4148 yy592:
4149 #line 59 "strict_cpp.re"
4150     { BOOST_WAVE_RET(T_CLASS); }
4151 #line 4152 "strict_cpp_re.inc"
4152 yy593:
4153     yyaccept = 4;
4154     yych = *(YYMARKER = ++YYCURSOR);
4155     if (yych == 'a') goto yy703;
4156     goto yy55;
4157 yy594:
4158     yyaccept = 4;
4159     yych = *(YYMARKER = ++YYCURSOR);
4160     if (yych == 't') goto yy704;
4161     goto yy55;
4162 yy595:
4163     yyaccept = 4;
4164     yych = *(YYMARKER = ++YYCURSOR);
4165     if (yych == 'e') goto yy705;
4166     goto yy55;
4167 yy596:
4168     yyaccept = 41;
4169     yych = *(YYMARKER = ++YYCURSOR);
4170     if (yybm[256+yych] & 128) {
4171         goto yy54;
4172     }
4173     if (yych == '?') goto yy173;
4174     if (yych == '\\') goto yy174;
4175 yy597:
4176 #line 208 "strict_cpp.re"
4177     { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_COMPL_ALT); }
4178 #line 4179 "strict_cpp_re.inc"
4179 yy598:
4180     yyaccept = 4;
4181     yych = *(YYMARKER = ++YYCURSOR);
4182     if (yych == 'p') goto yy706;
4183     goto yy55;
4184 yy599:
4185     yyaccept = 42;
4186     yych = *(YYMARKER = ++YYCURSOR);
4187     if (yych <= '\\') {
4188         if (yych <= '?') {
4189             if (yych <= '/') goto yy600;
4190             if (yych <= '9') goto yy54;
4191             if (yych >= '?') goto yy173;
4192         } else {
4193             if (yych <= '@') goto yy600;
4194             if (yych <= 'Z') goto yy54;
4195             if (yych >= '\\') goto yy174;
4196         }
4197     } else {
4198         if (yych <= 'd') {
4199             if (yych == '_') goto yy707;
4200             if (yych >= 'a') goto yy54;
4201         } else {
4202             if (yych <= 'h') {
4203                 if (yych <= 'e') goto yy708;
4204                 goto yy54;
4205             } else {
4206                 if (yych <= 'i') goto yy709;
4207                 if (yych <= 'z') goto yy54;
4208             }
4209         }
4210     }
4211 yy600:
4212 #line 61 "strict_cpp.re"
4213     { BOOST_WAVE_RET(T_CONST); }
4214 #line 4215 "strict_cpp_re.inc"
4215 yy601:
4216     yyaccept = 4;
4217     yych = *(YYMARKER = ++YYCURSOR);
4218     if (yych == 'n') goto yy710;
4219     goto yy55;
4220 yy602:
4221     yyaccept = 4;
4222     yych = *(YYMARKER = ++YYCURSOR);
4223     if (yych == 'y') goto yy711;
4224     goto yy55;
4225 yy603:
4226     yyaccept = 4;
4227     yych = *(YYMARKER = ++YYCURSOR);
4228     if (yych == 'l') goto yy712;
4229     goto yy55;
4230 yy604:
4231     yyaccept = 4;
4232     yych = *(YYMARKER = ++YYCURSOR);
4233     if (yych == 'e') goto yy713;
4234     goto yy55;
4235 yy605:
4236     yyaccept = 4;
4237     yych = *(YYMARKER = ++YYCURSOR);
4238     if (yych == 'e') goto yy715;
4239     goto yy55;
4240 yy606:
4241     yyaccept = 4;
4242     yych = *(YYMARKER = ++YYCURSOR);
4243     if (yych == 'i') goto yy717;
4244     goto yy55;
4245 yy607:
4246     yyaccept = 4;
4247     yych = *(YYMARKER = ++YYCURSOR);
4248     if (yych == 'c') goto yy718;
4249     goto yy55;
4250 yy608:
4251     yyaccept = 4;
4252     yych = *(YYMARKER = ++YYCURSOR);
4253     if (yych == 't') goto yy719;
4254     goto yy55;
4255 yy609:
4256     yyaccept = 4;
4257     yych = *(YYMARKER = ++YYCURSOR);
4258     if (yych == 'n') goto yy721;
4259     goto yy55;
4260 yy610:
4261     yyaccept = 43;
4262     yych = *(YYMARKER = ++YYCURSOR);
4263     if (yybm[256+yych] & 128) {
4264         goto yy54;
4265     }
4266     if (yych == '?') goto yy173;
4267     if (yych == '\\') goto yy174;
4268 yy611:
4269 #line 81 "strict_cpp.re"
4270     { BOOST_WAVE_RET(T_FALSE); }
4271 #line 4272 "strict_cpp_re.inc"
4272 yy612:
4273     yyaccept = 44;
4274     yych = *(YYMARKER = ++YYCURSOR);
4275     if (yybm[256+yych] & 128) {
4276         goto yy54;
4277     }
4278     if (yych == '?') goto yy173;
4279     if (yych == '\\') goto yy174;
4280 yy613:
4281 #line 82 "strict_cpp.re"
4282     { BOOST_WAVE_RET(T_FLOAT); }
4283 #line 4284 "strict_cpp_re.inc"
4284 yy614:
4285     yyaccept = 4;
4286     yych = *(YYMARKER = ++YYCURSOR);
4287     if (yych == 'd') goto yy723;
4288     goto yy55;
4289 yy615:
4290     yyaccept = 4;
4291     yych = *(YYMARKER = ++YYCURSOR);
4292     if (yych == 't') goto yy725;
4293     goto yy55;
4294 yy616:
4295     yyaccept = 4;
4296     yych = *(YYMARKER = ++YYCURSOR);
4297     if (yych == 'e') goto yy727;
4298     goto yy55;
4299 yy617:
4300     yyaccept = 4;
4301     yych = *(YYMARKER = ++YYCURSOR);
4302     if (yych == 'l') goto yy729;
4303     goto yy55;
4304 yy618:
4305     yyaccept = 4;
4306     yych = *(YYMARKER = ++YYCURSOR);
4307     if (yych == 'p') goto yy730;
4308     goto yy55;
4309 yy619:
4310     yyaccept = 4;
4311     yych = *(YYMARKER = ++YYCURSOR);
4312     if (yych == 'e') goto yy731;
4313     goto yy55;
4314 yy620:
4315     yyaccept = 4;
4316     yych = *(YYMARKER = ++YYCURSOR);
4317     if (yych == 'q') goto yy732;
4318     goto yy55;
4319 yy621:
4320     yyaccept = 4;
4321     yych = *(YYMARKER = ++YYCURSOR);
4322     if (yych == 't') goto yy734;
4323     goto yy55;
4324 yy622:
4325     yyaccept = 4;
4326     yych = *(YYMARKER = ++YYCURSOR);
4327     if (yych == 't') goto yy735;
4328     goto yy55;
4329 yy623:
4330     yyaccept = 45;
4331     yych = *(YYMARKER = ++YYCURSOR);
4332     if (yybm[256+yych] & 128) {
4333         goto yy54;
4334     }
4335     if (yych == '?') goto yy173;
4336     if (yych == '\\') goto yy174;
4337 yy624:
4338 #line 225 "strict_cpp.re"
4339     { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_ORASSIGN_ALT); }
4340 #line 4341 "strict_cpp_re.inc"
4341 yy625:
4342     yyaccept = 4;
4343     yych = *(YYMARKER = ++YYCURSOR);
4344     if (yych == 't') goto yy736;
4345     goto yy55;
4346 yy626:
4347     yyaccept = 4;
4348     yych = *(YYMARKER = ++YYCURSOR);
4349     if (yych == 'c') goto yy737;
4350     goto yy55;
4351 yy627:
4352     yyaccept = 4;
4353     yych = *(YYMARKER = ++YYCURSOR);
4354     if (yych == 'c') goto yy738;
4355     goto yy55;
4356 yy628:
4357     yyaccept = 4;
4358     yych = *(YYMARKER = ++YYCURSOR);
4359     if (yych == 't') goto yy740;
4360     goto yy55;
4361 yy629:
4362     yyaccept = 4;
4363     yych = *(YYMARKER = ++YYCURSOR);
4364     if (yych == 'e') goto yy741;
4365     goto yy55;
4366 yy630:
4367     yyaccept = 4;
4368     yych = *(YYMARKER = ++YYCURSOR);
4369     if (yych == 'r') goto yy742;
4370     goto yy55;
4371 yy631:
4372     yyaccept = 4;
4373     yych = *(YYMARKER = ++YYCURSOR);
4374     if (yych == 'n') goto yy743;
4375     goto yy55;
4376 yy632:
4377     yyaccept = 46;
4378     yych = *(YYMARKER = ++YYCURSOR);
4379     if (yybm[256+yych] & 128) {
4380         goto yy54;
4381     }
4382     if (yych == '?') goto yy173;
4383     if (yych == '\\') goto yy174;
4384 yy633:
4385 #line 104 "strict_cpp.re"
4386     { BOOST_WAVE_RET(T_SHORT); }
4387 #line 4388 "strict_cpp_re.inc"
4388 yy634:
4389     yyaccept = 4;
4390     yych = *(YYMARKER = ++YYCURSOR);
4391     if (yych == 'd') goto yy745;
4392     goto yy55;
4393 yy635:
4394     yyaccept = 4;
4395     yych = *(YYMARKER = ++YYCURSOR);
4396     if (yych == 'f') goto yy747;
4397     goto yy55;
4398 yy636:
4399     yyaccept = 4;
4400     yych = *(YYMARKER = ++YYCURSOR);
4401     if (yych == 'c') goto yy749;
4402     goto yy55;
4403 yy637:
4404     yyaccept = 4;
4405     yych = *(YYMARKER = ++YYCURSOR);
4406     if (yych == 't') goto yy751;
4407     goto yy55;
4408 yy638:
4409     yyaccept = 4;
4410     yych = *(YYMARKER = ++YYCURSOR);
4411     if (yych == 'h') goto yy753;
4412     goto yy55;
4413 yy639:
4414     yyaccept = 4;
4415     yych = *(YYMARKER = ++YYCURSOR);
4416     if (yych == 'a') goto yy755;
4417     goto yy55;
4418 yy640:
4419     yyaccept = 4;
4420     yych = *(YYMARKER = ++YYCURSOR);
4421     if (yych == 'd') goto yy756;
4422     goto yy55;
4423 yy641:
4424     yyaccept = 47;
4425     yych = *(YYMARKER = ++YYCURSOR);
4426     if (yybm[256+yych] & 128) {
4427         goto yy54;
4428     }
4429     if (yych == '?') goto yy173;
4430     if (yych == '\\') goto yy174;
4431 yy642:
4432 #line 115 "strict_cpp.re"
4433     { BOOST_WAVE_RET(T_THROW); }
4434 #line 4435 "strict_cpp_re.inc"
4435 yy643:
4436     yyaccept = 4;
4437     yych = *(YYMARKER = ++YYCURSOR);
4438     if (yych == 'e') goto yy757;
4439     goto yy55;
4440 yy644:
4441     yyaccept = 4;
4442     yych = *(YYMARKER = ++YYCURSOR);
4443     if (yych == 'd') goto yy758;
4444     goto yy55;
4445 yy645:
4446     yyaccept = 4;
4447     yych = *(YYMARKER = ++YYCURSOR);
4448     if (yych == 'a') goto yy760;
4449     goto yy55;
4450 yy646:
4451     yyaccept = 48;
4452     yych = *(YYMARKER = ++YYCURSOR);
4453     if (yybm[256+yych] & 128) {
4454         goto yy54;
4455     }
4456     if (yych == '?') goto yy173;
4457     if (yych == '\\') goto yy174;
4458 yy647:
4459 #line 121 "strict_cpp.re"
4460     { BOOST_WAVE_RET(T_UNION); }
4461 #line 4462 "strict_cpp_re.inc"
4462 yy648:
4463     yyaccept = 4;
4464     yych = *(YYMARKER = ++YYCURSOR);
4465     if (yych == 'n') goto yy761;
4466     goto yy55;
4467 yy649:
4468     yyaccept = 49;
4469     yych = *(YYMARKER = ++YYCURSOR);
4470     if (yybm[256+yych] & 128) {
4471         goto yy54;
4472     }
4473     if (yych == '?') goto yy173;
4474     if (yych == '\\') goto yy174;
4475 yy650:
4476 #line 123 "strict_cpp.re"
4477     { BOOST_WAVE_RET(T_USING); }
4478 #line 4479 "strict_cpp_re.inc"
4479 yy651:
4480     yyaccept = 4;
4481     yych = *(YYMARKER = ++YYCURSOR);
4482     if (yych == 'a') goto yy762;
4483     goto yy55;
4484 yy652:
4485     yyaccept = 4;
4486     yych = *(YYMARKER = ++YYCURSOR);
4487     if (yych == 'i') goto yy763;
4488     goto yy55;
4489 yy653:
4490     yyaccept = 4;
4491     yych = *(YYMARKER = ++YYCURSOR);
4492     if (yych == '_') goto yy764;
4493     goto yy55;
4494 yy654:
4495     yyaccept = 50;
4496     yych = *(YYMARKER = ++YYCURSOR);
4497     if (yybm[256+yych] & 128) {
4498         goto yy54;
4499     }
4500     if (yych == '?') goto yy173;
4501     if (yych == '\\') goto yy174;
4502 yy655:
4503 #line 128 "strict_cpp.re"
4504     { BOOST_WAVE_RET(T_WHILE); }
4505 #line 4506 "strict_cpp_re.inc"
4506 yy656:
4507     yyaccept = 4;
4508     yych = *(YYMARKER = ++YYCURSOR);
4509     if (yych == 'q') goto yy765;
4510     goto yy55;
4511 yy657:
4512     ++YYCURSOR;
4513     if (YYLIMIT <= YYCURSOR) YYFILL(1);
4514     yych = *YYCURSOR;
4515     if (yych <= '@') {
4516         if (yych <= '/') goto yy100;
4517         if (yych <= '9') goto yy258;
4518         goto yy100;
4519     } else {
4520         if (yych <= 'F') goto yy258;
4521         if (yych <= '`') goto yy100;
4522         if (yych <= 'f') goto yy258;
4523         goto yy100;
4524     }
4525 yy658:
4526     yych = *++YYCURSOR;
4527     if (yych == 'e') goto yy767;
4528     goto yy100;
4529 yy659:
4530     ++YYCURSOR;
4531 #line 330 "strict_cpp.re"
4532     { BOOST_WAVE_RET(T_PP_ENDIF); }
4533 #line 4534 "strict_cpp_re.inc"
4534 yy661:
4535     yych = *++YYCURSOR;
4536     if (yych == 'g') goto yy769;
4537     goto yy100;
4538 yy662:
4539     ++YYCURSOR;
4540 #line 334 "strict_cpp.re"
4541     { BOOST_WAVE_RET(T_PP_ERROR); }
4542 #line 4543 "strict_cpp_re.inc"
4543 yy664:
4544     ++YYCURSOR;
4545 #line 326 "strict_cpp.re"
4546     { BOOST_WAVE_RET(T_PP_IFDEF); }
4547 #line 4548 "strict_cpp_re.inc"
4548 yy666:
4549     yych = *++YYCURSOR;
4550     if (yych == 'f') goto yy770;
4551     goto yy100;
4552 yy667:
4553     yych = *++YYCURSOR;
4554     if (yych == 'd') goto yy772;
4555     goto yy100;
4556 yy668:
4557     yych = *++YYCURSOR;
4558     if (yych == 'a') goto yy773;
4559     goto yy100;
4560 yy669:
4561     yych = *++YYCURSOR;
4562     if (yych == 'n') goto yy775;
4563     goto yy100;
4564 yy670:
4565     ++YYCURSOR;
4566 #line 332 "strict_cpp.re"
4567     { BOOST_WAVE_RET(T_PP_UNDEF); }
4568 #line 4569 "strict_cpp_re.inc"
4569 yy672:
4570     yych = *++YYCURSOR;
4571     if (yych == 'n') goto yy777;
4572     goto yy100;
4573 yy673:
4574     ++YYCURSOR;
4575     if (YYLIMIT <= YYCURSOR) YYFILL(1);
4576     yych = *YYCURSOR;
4577     if (yych <= '@') {
4578         if (yych <= '/') goto yy100;
4579         if (yych <= '9') goto yy281;
4580         goto yy100;
4581     } else {
4582         if (yych <= 'F') goto yy281;
4583         if (yych <= '`') goto yy100;
4584         if (yych <= 'f') goto yy281;
4585         goto yy100;
4586     }
4587 yy674:
4588     ++YYCURSOR;
4589 #line 252 "strict_cpp.re"
4590     { BOOST_WAVE_RET(T_OROR_TRIGRAPH); }
4591 #line 4592 "strict_cpp_re.inc"
4592 yy676:
4593     ++YYCURSOR;
4594 #line 164 "strict_cpp.re"
4595     { BOOST_WAVE_RET(T_POUND_POUND_TRIGRAPH); }
4596 #line 4597 "strict_cpp_re.inc"
4597 yy678:
4598     yyaccept = 4;
4599     yych = *(YYMARKER = ++YYCURSOR);
4600     if (yych == 'p') goto yy778;
4601     goto yy55;
4602 yy679:
4603     yyaccept = 4;
4604     yych = *(YYMARKER = ++YYCURSOR);
4605     if (yych == 'l') goto yy779;
4606     goto yy55;
4607 yy680:
4608     yyaccept = 4;
4609     yych = *(YYMARKER = ++YYCURSOR);
4610     if (yych == '6') goto yy780;
4611     goto yy55;
4612 yy681:
4613     yyaccept = 4;
4614     yych = *(YYMARKER = ++YYCURSOR);
4615     if (yych == '2') goto yy782;
4616     goto yy55;
4617 yy682:
4618     yyaccept = 4;
4619     yych = *(YYMARKER = ++YYCURSOR);
4620     if (yych == '4') goto yy784;
4621     goto yy55;
4622 yy683:
4623     yyaccept = 51;
4624     yych = *(YYMARKER = ++YYCURSOR);
4625     if (yybm[256+yych] & 128) {
4626         goto yy54;
4627     }
4628     if (yych == '?') goto yy173;
4629     if (yych == '\\') goto yy174;
4630 yy684:
4631 #line 130 "strict_cpp.re"
4632     { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_INT8 : T_IDENTIFIER); }
4633 #line 4634 "strict_cpp_re.inc"
4634 yy685:
4635     yyaccept = 4;
4636     yych = *(YYMARKER = ++YYCURSOR);
4637     if (yych == 'e') goto yy786;
4638     goto yy55;
4639 yy686:
4640     yyaccept = 52;
4641     yych = *(YYMARKER = ++YYCURSOR);
4642     if (yybm[256+yych] & 128) {
4643         goto yy54;
4644     }
4645     if (yych == '?') goto yy173;
4646     if (yych == '\\') goto yy174;
4647 yy687:
4648 #line 134 "strict_cpp.re"
4649     { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_BASED : T_IDENTIFIER); }
4650 #line 4651 "strict_cpp_re.inc"
4651 yy688:
4652     yyaccept = 53;
4653     yych = *(YYMARKER = ++YYCURSOR);
4654     if (yybm[256+yych] & 128) {
4655         goto yy54;
4656     }
4657     if (yych == '?') goto yy173;
4658     if (yych == '\\') goto yy174;
4659 yy689:
4660 #line 136 "strict_cpp.re"
4661     { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_CDECL : T_IDENTIFIER); }
4662 #line 4663 "strict_cpp_re.inc"
4663 yy690:
4664     yyaccept = 4;
4665     yych = *(YYMARKER = ++YYCURSOR);
4666     if (yych == 'p') goto yy788;
4667     goto yy55;
4668 yy691:
4669     yyaccept = 4;
4670     yych = *(YYMARKER = ++YYCURSOR);
4671     if (yych == 'a') goto yy789;
4672     goto yy55;
4673 yy692:
4674     yyaccept = 4;
4675     yych = *(YYMARKER = ++YYCURSOR);
4676     if (yych == 'e') goto yy790;
4677     goto yy55;
4678 yy693:
4679     yyaccept = 4;
4680     yych = *(YYMARKER = ++YYCURSOR);
4681     if (yych == 'l') goto yy792;
4682     goto yy55;
4683 yy694:
4684     yyaccept = 4;
4685     yych = *(YYMARKER = ++YYCURSOR);
4686     if (yych == 's') goto yy793;
4687     goto yy55;
4688 yy695:
4689     yyaccept = 4;
4690     yych = *(YYMARKER = ++YYCURSOR);
4691     if (yych == 'f') goto yy795;
4692     goto yy55;
4693 yy696:
4694     yyaccept = 54;
4695     yych = *(YYMARKER = ++YYCURSOR);
4696     if (yybm[256+yych] & 128) {
4697         goto yy54;
4698     }
4699     if (yych == '?') goto yy173;
4700     if (yych == '\\') goto yy174;
4701 yy697:
4702 #line 223 "strict_cpp.re"
4703     { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_ANDASSIGN_ALT); }
4704 #line 4705 "strict_cpp_re.inc"
4705 yy698:
4706     yyaccept = 55;
4707     yych = *(YYMARKER = ++YYCURSOR);
4708     if (yybm[256+yych] & 128) {
4709         goto yy54;
4710     }
4711     if (yych == '?') goto yy173;
4712     if (yych == '\\') goto yy174;
4713 yy699:
4714 #line 202 "strict_cpp.re"
4715     { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_AND_ALT); }
4716 #line 4717 "strict_cpp_re.inc"
4717 yy700:
4718     yyaccept = 4;
4719     yych = *(YYMARKER = ++YYCURSOR);
4720     if (yych == '_') goto yy797;
4721     goto yy55;
4722 yy701:
4723     yyaccept = 4;
4724     yych = *(YYMARKER = ++YYCURSOR);
4725     if (yych == '_') goto yy798;
4726     goto yy55;
4727 yy702:
4728     yyaccept = 4;
4729     yych = *(YYMARKER = ++YYCURSOR);
4730     if (yych == 't') goto yy799;
4731     goto yy55;
4732 yy703:
4733     yyaccept = 4;
4734     yych = *(YYMARKER = ++YYCURSOR);
4735     if (yych == 'i') goto yy801;
4736     goto yy55;
4737 yy704:
4738     yyaccept = 4;
4739     yych = *(YYMARKER = ++YYCURSOR);
4740     if (yych == 'u') goto yy802;
4741     goto yy55;
4742 yy705:
4743     yyaccept = 4;
4744     yych = *(YYMARKER = ++YYCURSOR);
4745     if (yych == 'l') goto yy803;
4746     goto yy55;
4747 yy706:
4748     yyaccept = 4;
4749     yych = *(YYMARKER = ++YYCURSOR);
4750     if (yych == 't') goto yy804;
4751     goto yy55;
4752 yy707:
4753     yyaccept = 4;
4754     yych = *(YYMARKER = ++YYCURSOR);
4755     if (yych == 'c') goto yy806;
4756     goto yy55;
4757 yy708:
4758     yyaccept = 4;
4759     yych = *(YYMARKER = ++YYCURSOR);
4760     if (yych == 'v') goto yy807;
4761     if (yych == 'x') goto yy808;
4762     goto yy55;
4763 yy709:
4764     yyaccept = 4;
4765     yych = *(YYMARKER = ++YYCURSOR);
4766     if (yych == 'n') goto yy809;
4767     goto yy55;
4768 yy710:
4769     yyaccept = 4;
4770     yych = *(YYMARKER = ++YYCURSOR);
4771     if (yych == 'u') goto yy810;
4772     goto yy55;
4773 yy711:
4774     yyaccept = 4;
4775     yych = *(YYMARKER = ++YYCURSOR);
4776     if (yych == 'p') goto yy811;
4777     goto yy55;
4778 yy712:
4779     yyaccept = 4;
4780     yych = *(YYMARKER = ++YYCURSOR);
4781     if (yych == 't') goto yy812;
4782     goto yy55;
4783 yy713:
4784     yyaccept = 56;
4785     yych = *(YYMARKER = ++YYCURSOR);
4786     if (yybm[256+yych] & 128) {
4787         goto yy54;
4788     }
4789     if (yych == '?') goto yy173;
4790     if (yych == '\\') goto yy174;
4791 yy714:
4792 #line 72 "strict_cpp.re"
4793     { BOOST_WAVE_RET(T_DELETE); }
4794 #line 4795 "strict_cpp_re.inc"
4795 yy715:
4796     yyaccept = 57;
4797     yych = *(YYMARKER = ++YYCURSOR);
4798     if (yybm[256+yych] & 128) {
4799         goto yy54;
4800     }
4801     if (yych == '?') goto yy173;
4802     if (yych == '\\') goto yy174;
4803 yy716:
4804 #line 74 "strict_cpp.re"
4805     { BOOST_WAVE_RET(T_DOUBLE); }
4806 #line 4807 "strict_cpp_re.inc"
4807 yy717:
4808     yyaccept = 4;
4809     yych = *(YYMARKER = ++YYCURSOR);
4810     if (yych == 'c') goto yy814;
4811     goto yy55;
4812 yy718:
4813     yyaccept = 4;
4814     yych = *(YYMARKER = ++YYCURSOR);
4815     if (yych == 'i') goto yy815;
4816     goto yy55;
4817 yy719:
4818     yyaccept = 58;
4819     yych = *(YYMARKER = ++YYCURSOR);
4820     if (yybm[256+yych] & 128) {
4821         goto yy54;
4822     }
4823     if (yych == '?') goto yy173;
4824     if (yych == '\\') goto yy174;
4825 yy720:
4826 #line 79 "strict_cpp.re"
4827     { BOOST_WAVE_RET(T_EXPORT); }
4828 #line 4829 "strict_cpp_re.inc"
4829 yy721:
4830     yyaccept = 59;
4831     yych = *(YYMARKER = ++YYCURSOR);
4832     if (yybm[256+yych] & 128) {
4833         goto yy54;
4834     }
4835     if (yych == '?') goto yy173;
4836     if (yych == '\\') goto yy174;
4837 yy722:
4838 #line 80 "strict_cpp.re"
4839     { BOOST_WAVE_RET(T_EXTERN); }
4840 #line 4841 "strict_cpp_re.inc"
4841 yy723:
4842     yyaccept = 60;
4843     yych = *(YYMARKER = ++YYCURSOR);
4844     if (yybm[256+yych] & 128) {
4845         goto yy54;
4846     }
4847     if (yych == '?') goto yy173;
4848     if (yych == '\\') goto yy174;
4849 yy724:
4850 #line 84 "strict_cpp.re"
4851     { BOOST_WAVE_RET(T_FRIEND); }
4852 #line 4853 "strict_cpp_re.inc"
4853 yy725:
4854     yyaccept = 61;
4855     yych = *(YYMARKER = ++YYCURSOR);
4856     if (yybm[256+yych] & 128) {
4857         goto yy54;
4858     }
4859     if (yych == '?') goto yy173;
4860     if (yych == '\\') goto yy174;
4861 yy726:
4862 #line 87 "strict_cpp.re"
4863     { BOOST_WAVE_RET(s->enable_import_keyword ? T_IMPORT : T_IDENTIFIER); }
4864 #line 4865 "strict_cpp_re.inc"
4865 yy727:
4866     yyaccept = 62;
4867     yych = *(YYMARKER = ++YYCURSOR);
4868     if (yybm[256+yych] & 128) {
4869         goto yy54;
4870     }
4871     if (yych == '?') goto yy173;
4872     if (yych == '\\') goto yy174;
4873 yy728:
4874 #line 88 "strict_cpp.re"
4875     { BOOST_WAVE_RET(T_INLINE); }
4876 #line 4877 "strict_cpp_re.inc"
4877 yy729:
4878     yyaccept = 4;
4879     yych = *(YYMARKER = ++YYCURSOR);
4880     if (yych == 'e') goto yy816;
4881     goto yy55;
4882 yy730:
4883     yyaccept = 4;
4884     yych = *(YYMARKER = ++YYCURSOR);
4885     if (yych == 'a') goto yy818;
4886     goto yy55;
4887 yy731:
4888     yyaccept = 4;
4889     yych = *(YYMARKER = ++YYCURSOR);
4890     if (yych == 'p') goto yy819;
4891     goto yy55;
4892 yy732:
4893     yyaccept = 63;
4894     yych = *(YYMARKER = ++YYCURSOR);
4895     if (yybm[256+yych] & 128) {
4896         goto yy54;
4897     }
4898     if (yych == '?') goto yy173;
4899     if (yych == '\\') goto yy174;
4900 yy733:
4901 #line 233 "strict_cpp.re"
4902     { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_NOTEQUAL_ALT); }
4903 #line 4904 "strict_cpp_re.inc"
4904 yy734:
4905     yyaccept = 4;
4906     yych = *(YYMARKER = ++YYCURSOR);
4907     if (yych == 'r') goto yy820;
4908     goto yy55;
4909 yy735:
4910     yyaccept = 4;
4911     yych = *(YYMARKER = ++YYCURSOR);
4912     if (yych == 'o') goto yy822;
4913     goto yy55;
4914 yy736:
4915     yyaccept = 4;
4916     yych = *(YYMARKER = ++YYCURSOR);
4917     if (yych == 'e') goto yy823;
4918     goto yy55;
4919 yy737:
4920     yyaccept = 4;
4921     yych = *(YYMARKER = ++YYCURSOR);
4922     if (yych == 't') goto yy825;
4923     goto yy55;
4924 yy738:
4925     yyaccept = 64;
4926     yych = *(YYMARKER = ++YYCURSOR);
4927     if (yybm[256+yych] & 128) {
4928         goto yy54;
4929     }
4930     if (yych == '?') goto yy173;
4931     if (yych == '\\') goto yy174;
4932 yy739:
4933 #line 99 "strict_cpp.re"
4934     { BOOST_WAVE_RET(T_PUBLIC); }
4935 #line 4936 "strict_cpp_re.inc"
4936 yy740:
4937     yyaccept = 4;
4938     yych = *(YYMARKER = ++YYCURSOR);
4939     if (yych == 'e') goto yy826;
4940     goto yy55;
4941 yy741:
4942     yyaccept = 4;
4943     yych = *(YYMARKER = ++YYCURSOR);
4944     if (yych == 'r') goto yy827;
4945     goto yy55;
4946 yy742:
4947     yyaccept = 4;
4948     yych = *(YYMARKER = ++YYCURSOR);
4949     if (yych == 'e') goto yy828;
4950     goto yy55;
4951 yy743:
4952     yyaccept = 65;
4953     yych = *(YYMARKER = ++YYCURSOR);
4954     if (yybm[256+yych] & 128) {
4955         goto yy54;
4956     }
4957     if (yych == '?') goto yy173;
4958     if (yych == '\\') goto yy174;
4959 yy744:
4960 #line 103 "strict_cpp.re"
4961     { BOOST_WAVE_RET(T_RETURN); }
4962 #line 4963 "strict_cpp_re.inc"
4963 yy745:
4964     yyaccept = 66;
4965     yych = *(YYMARKER = ++YYCURSOR);
4966     if (yybm[256+yych] & 128) {
4967         goto yy54;
4968     }
4969     if (yych == '?') goto yy173;
4970     if (yych == '\\') goto yy174;
4971 yy746:
4972 #line 105 "strict_cpp.re"
4973     { BOOST_WAVE_RET(T_SIGNED); }
4974 #line 4975 "strict_cpp_re.inc"
4975 yy747:
4976     yyaccept = 67;
4977     yych = *(YYMARKER = ++YYCURSOR);
4978     if (yybm[256+yych] & 128) {
4979         goto yy54;
4980     }
4981     if (yych == '?') goto yy173;
4982     if (yych == '\\') goto yy174;
4983 yy748:
4984 #line 106 "strict_cpp.re"
4985     { BOOST_WAVE_RET(T_SIZEOF); }
4986 #line 4987 "strict_cpp_re.inc"
4987 yy749:
4988     yyaccept = 68;
4989     yych = *(YYMARKER = ++YYCURSOR);
4990     if (yych <= 'Z') {
4991         if (yych <= '>') {
4992             if (yych <= '/') goto yy750;
4993             if (yych <= '9') goto yy54;
4994         } else {
4995             if (yych <= '?') goto yy173;
4996             if (yych >= 'A') goto yy54;
4997         }
4998     } else {
4999         if (yych <= '^') {
5000             if (yych == '\\') goto yy174;
5001         } else {
5002             if (yych <= '_') goto yy829;
5003             if (yych <= '`') goto yy750;
5004             if (yych <= 'z') goto yy54;
5005         }
5006     }
5007 yy750:
5008 #line 107 "strict_cpp.re"
5009     { BOOST_WAVE_RET(T_STATIC); }
5010 #line 5011 "strict_cpp_re.inc"
5011 yy751:
5012     yyaccept = 69;
5013     yych = *(YYMARKER = ++YYCURSOR);
5014     if (yybm[256+yych] & 128) {
5015         goto yy54;
5016     }
5017     if (yych == '?') goto yy173;
5018     if (yych == '\\') goto yy174;
5019 yy752:
5020 #line 110 "strict_cpp.re"
5021     { BOOST_WAVE_RET(T_STRUCT); }
5022 #line 5023 "strict_cpp_re.inc"
5023 yy753:
5024     yyaccept = 70;
5025     yych = *(YYMARKER = ++YYCURSOR);
5026     if (yybm[256+yych] & 128) {
5027         goto yy54;
5028     }
5029     if (yych == '?') goto yy173;
5030     if (yych == '\\') goto yy174;
5031 yy754:
5032 #line 111 "strict_cpp.re"
5033     { BOOST_WAVE_RET(T_SWITCH); }
5034 #line 5035 "strict_cpp_re.inc"
5035 yy755:
5036     yyaccept = 4;
5037     yych = *(YYMARKER = ++YYCURSOR);
5038     if (yych == 't') goto yy830;
5039     goto yy55;
5040 yy756:
5041     yyaccept = 4;
5042     yych = *(YYMARKER = ++YYCURSOR);
5043     if (yych == '_') goto yy831;
5044     goto yy55;
5045 yy757:
5046     yyaccept = 4;
5047     yych = *(YYMARKER = ++YYCURSOR);
5048     if (yych == 'f') goto yy832;
5049     goto yy55;
5050 yy758:
5051     yyaccept = 71;
5052     yych = *(YYMARKER = ++YYCURSOR);
5053     if (yybm[256+yych] & 128) {
5054         goto yy54;
5055     }
5056     if (yych == '?') goto yy173;
5057     if (yych == '\\') goto yy174;
5058 yy759:
5059 #line 119 "strict_cpp.re"
5060     { BOOST_WAVE_RET(T_TYPEID); }
5061 #line 5062 "strict_cpp_re.inc"
5062 yy760:
5063     yyaccept = 4;
5064     yych = *(YYMARKER = ++YYCURSOR);
5065     if (yych == 'm') goto yy834;
5066     goto yy55;
5067 yy761:
5068     yyaccept = 4;
5069     yych = *(YYMARKER = ++YYCURSOR);
5070     if (yych == 'e') goto yy835;
5071     goto yy55;
5072 yy762:
5073     yyaccept = 4;
5074     yych = *(YYMARKER = ++YYCURSOR);
5075     if (yych == 'l') goto yy836;
5076     goto yy55;
5077 yy763:
5078     yyaccept = 4;
5079     yych = *(YYMARKER = ++YYCURSOR);
5080     if (yych == 'l') goto yy838;
5081     goto yy55;
5082 yy764:
5083     yyaccept = 4;
5084     yych = *(YYMARKER = ++YYCURSOR);
5085     if (yych == 't') goto yy839;
5086     goto yy55;
5087 yy765:
5088     yyaccept = 72;
5089     yych = *(YYMARKER = ++YYCURSOR);
5090     if (yybm[256+yych] & 128) {
5091         goto yy54;
5092     }
5093     if (yych == '?') goto yy173;
5094     if (yych == '\\') goto yy174;
5095 yy766:
5096 #line 220 "strict_cpp.re"
5097     { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_XORASSIGN_ALT); }
5098 #line 5099 "strict_cpp_re.inc"
5099 yy767:
5100     ++YYCURSOR;
5101 #line 331 "strict_cpp.re"
5102     { BOOST_WAVE_RET(T_PP_DEFINE); }
5103 #line 5104 "strict_cpp_re.inc"
5104 yy769:
5105     yych = *++YYCURSOR;
5106     if (yych == 'i') goto yy841;
5107     goto yy100;
5108 yy770:
5109     ++YYCURSOR;
5110 #line 327 "strict_cpp.re"
5111     { BOOST_WAVE_RET(T_PP_IFNDEF); }
5112 #line 5113 "strict_cpp_re.inc"
5113 yy772:
5114     yych = *++YYCURSOR;
5115     if (yych == 'e') goto yy842;
5116     goto yy100;
5117 yy773:
5118     ++YYCURSOR;
5119 #line 335 "strict_cpp.re"
5120     { BOOST_WAVE_RET(T_PP_PRAGMA); }
5121 #line 5122 "strict_cpp_re.inc"
5122 yy775:
5123     ++YYCURSOR;
5124 #line 339 "strict_cpp.re"
5125     { BOOST_WAVE_RET(T_MSEXT_PP_REGION); }
5126 #line 5127 "strict_cpp_re.inc"
5127 yy777:
5128     yych = *++YYCURSOR;
5129     if (yych == 'g') goto yy844;
5130     goto yy100;
5131 yy778:
5132     yyaccept = 4;
5133     yych = *(YYMARKER = ++YYCURSOR);
5134     if (yych == 't') goto yy846;
5135     goto yy55;
5136 yy779:
5137     yyaccept = 4;
5138     yych = *(YYMARKER = ++YYCURSOR);
5139     if (yych == 'l') goto yy848;
5140     goto yy55;
5141 yy780:
5142     yyaccept = 73;
5143     yych = *(YYMARKER = ++YYCURSOR);
5144     if (yybm[256+yych] & 128) {
5145         goto yy54;
5146     }
5147     if (yych == '?') goto yy173;
5148     if (yych == '\\') goto yy174;
5149 yy781:
5150 #line 131 "strict_cpp.re"
5151     { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_INT16 : T_IDENTIFIER); }
5152 #line 5153 "strict_cpp_re.inc"
5153 yy782:
5154     yyaccept = 74;
5155     yych = *(YYMARKER = ++YYCURSOR);
5156     if (yybm[256+yych] & 128) {
5157         goto yy54;
5158     }
5159     if (yych == '?') goto yy173;
5160     if (yych == '\\') goto yy174;
5161 yy783:
5162 #line 132 "strict_cpp.re"
5163     { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_INT32 : T_IDENTIFIER); }
5164 #line 5165 "strict_cpp_re.inc"
5165 yy784:
5166     yyaccept = 75;
5167     yych = *(YYMARKER = ++YYCURSOR);
5168     if (yybm[256+yych] & 128) {
5169         goto yy54;
5170     }
5171     if (yych == '?') goto yy173;
5172     if (yych == '\\') goto yy174;
5173 yy785:
5174 #line 133 "strict_cpp.re"
5175     { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_INT64 : T_IDENTIFIER); }
5176 #line 5177 "strict_cpp_re.inc"
5177 yy786:
5178     yyaccept = 76;
5179     yych = *(YYMARKER = ++YYCURSOR);
5180     if (yybm[256+yych] & 128) {
5181         goto yy54;
5182     }
5183     if (yych == '?') goto yy173;
5184     if (yych == '\\') goto yy174;
5185 yy787:
5186 #line 142 "strict_cpp.re"
5187     { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_LEAVE : T_IDENTIFIER); }
5188 #line 5189 "strict_cpp_re.inc"
5189 yy788:
5190     yyaccept = 4;
5191     yych = *(YYMARKER = ++YYCURSOR);
5192     if (yych == 'e') goto yy849;
5193     goto yy55;
5194 yy789:
5195     yyaccept = 4;
5196     yych = *(YYMARKER = ++YYCURSOR);
5197     if (yych == 'l') goto yy850;
5198     goto yy55;
5199 yy790:
5200     yyaccept = 77;
5201     yych = *(YYMARKER = ++YYCURSOR);
5202     if (yybm[256+yych] & 128) {
5203         goto yy54;
5204     }
5205     if (yych == '?') goto yy173;
5206     if (yych == '\\') goto yy174;
5207 yy791:
5208 #line 143 "strict_cpp.re"
5209     { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_INLINE : T_IDENTIFIER); }
5210 #line 5211 "strict_cpp_re.inc"
5211 yy792:
5212     yyaccept = 4;
5213     yych = *(YYMARKER = ++YYCURSOR);
5214     if (yych == 'l') goto yy851;
5215     goto yy55;
5216 yy793:
5217     yyaccept = 78;
5218     yych = *(YYMARKER = ++YYCURSOR);
5219     if (yybm[256+yych] & 128) {
5220         goto yy54;
5221     }
5222     if (yych == '?') goto yy173;
5223     if (yych == '\\') goto yy174;
5224 yy794:
5225 #line 47 "strict_cpp.re"
5226     { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_ALIGNAS : T_IDENTIFIER); }
5227 #line 5228 "strict_cpp_re.inc"
5228 yy795:
5229     yyaccept = 79;
5230     yych = *(YYMARKER = ++YYCURSOR);
5231     if (yybm[256+yych] & 128) {
5232         goto yy54;
5233     }
5234     if (yych == '?') goto yy173;
5235     if (yych == '\\') goto yy174;
5236 yy796:
5237 #line 48 "strict_cpp.re"
5238     { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_ALIGNOF : T_IDENTIFIER); }
5239 #line 5240 "strict_cpp_re.inc"
5240 yy797:
5241     yyaccept = 4;
5242     yych = *(YYMARKER = ++YYCURSOR);
5243     if (yych == 't') goto yy853;
5244     goto yy55;
5245 yy798:
5246     yyaccept = 4;
5247     yych = *(YYMARKER = ++YYCURSOR);
5248     if (yych == 't') goto yy855;
5249     goto yy55;
5250 yy799:
5251     yyaccept = 80;
5252     yych = *(YYMARKER = ++YYCURSOR);
5253     if (yybm[256+yych] & 128) {
5254         goto yy54;
5255     }
5256     if (yych == '?') goto yy173;
5257     if (yych == '\\') goto yy174;
5258 yy800:
5259 #line 56 "strict_cpp.re"
5260     { BOOST_WAVE_RET(s->act_in_cpp2a_mode ? T_CHAR8_T : T_IDENTIFIER); }
5261 #line 5262 "strict_cpp_re.inc"
5262 yy801:
5263     yyaccept = 4;
5264     yych = *(YYMARKER = ++YYCURSOR);
5265     if (yych == 't') goto yy857;
5266     goto yy55;
5267 yy802:
5268     yyaccept = 4;
5269     yych = *(YYMARKER = ++YYCURSOR);
5270     if (yych == 'r') goto yy859;
5271     goto yy55;
5272 yy803:
5273     yyaccept = 4;
5274     yych = *(YYMARKER = ++YYCURSOR);
5275     if (yych == 'd') goto yy860;
5276     goto yy55;
5277 yy804:
5278     yyaccept = 81;
5279     yych = *(YYMARKER = ++YYCURSOR);
5280     if (yybm[256+yych] & 128) {
5281         goto yy54;
5282     }
5283     if (yych == '?') goto yy173;
5284     if (yych == '\\') goto yy174;
5285 yy805:
5286 #line 60 "strict_cpp.re"
5287     { BOOST_WAVE_RET(s->act_in_cpp2a_mode ? T_CONCEPT : T_IDENTIFIER); }
5288 #line 5289 "strict_cpp_re.inc"
5289 yy806:
5290     yyaccept = 4;
5291     yych = *(YYMARKER = ++YYCURSOR);
5292     if (yych == 'a') goto yy862;
5293     goto yy55;
5294 yy807:
5295     yyaccept = 4;
5296     yych = *(YYMARKER = ++YYCURSOR);
5297     if (yych == 'a') goto yy863;
5298     goto yy55;
5299 yy808:
5300     yyaccept = 4;
5301     yych = *(YYMARKER = ++YYCURSOR);
5302     if (yych == 'p') goto yy864;
5303     goto yy55;
5304 yy809:
5305     yyaccept = 4;
5306     yych = *(YYMARKER = ++YYCURSOR);
5307     if (yych == 'i') goto yy865;
5308     goto yy55;
5309 yy810:
5310     yyaccept = 4;
5311     yych = *(YYMARKER = ++YYCURSOR);
5312     if (yych == 'e') goto yy866;
5313     goto yy55;
5314 yy811:
5315     yyaccept = 4;
5316     yych = *(YYMARKER = ++YYCURSOR);
5317     if (yych == 'e') goto yy868;
5318     goto yy55;
5319 yy812:
5320     yyaccept = 82;
5321     yych = *(YYMARKER = ++YYCURSOR);
5322     if (yybm[256+yych] & 128) {
5323         goto yy54;
5324     }
5325     if (yych == '?') goto yy173;
5326     if (yych == '\\') goto yy174;
5327 yy813:
5328 #line 71 "strict_cpp.re"
5329     { BOOST_WAVE_RET(T_DEFAULT); }
5330 #line 5331 "strict_cpp_re.inc"
5331 yy814:
5332     yyaccept = 4;
5333     yych = *(YYMARKER = ++YYCURSOR);
5334     if (yych == '_') goto yy870;
5335     goto yy55;
5336 yy815:
5337     yyaccept = 4;
5338     yych = *(YYMARKER = ++YYCURSOR);
5339     if (yych == 't') goto yy871;
5340     goto yy55;
5341 yy816:
5342     yyaccept = 83;
5343     yych = *(YYMARKER = ++YYCURSOR);
5344     if (yybm[256+yych] & 128) {
5345         goto yy54;
5346     }
5347     if (yych == '?') goto yy173;
5348     if (yych == '\\') goto yy174;
5349 yy817:
5350 #line 91 "strict_cpp.re"
5351     { BOOST_WAVE_RET(T_MUTABLE); }
5352 #line 5353 "strict_cpp_re.inc"
5353 yy818:
5354     yyaccept = 4;
5355     yych = *(YYMARKER = ++YYCURSOR);
5356     if (yych == 'c') goto yy873;
5357     goto yy55;
5358 yy819:
5359     yyaccept = 4;
5360     yych = *(YYMARKER = ++YYCURSOR);
5361     if (yych == 't') goto yy874;
5362     goto yy55;
5363 yy820:
5364     yyaccept = 84;
5365     yych = *(YYMARKER = ++YYCURSOR);
5366     if (yybm[256+yych] & 128) {
5367         goto yy54;
5368     }
5369     if (yych == '?') goto yy173;
5370     if (yych == '\\') goto yy174;
5371 yy821:
5372 #line 95 "strict_cpp.re"
5373     { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_NULLPTR : T_IDENTIFIER); }
5374 #line 5375 "strict_cpp_re.inc"
5375 yy822:
5376     yyaccept = 4;
5377     yych = *(YYMARKER = ++YYCURSOR);
5378     if (yych == 'r') goto yy876;
5379     goto yy55;
5380 yy823:
5381     yyaccept = 85;
5382     yych = *(YYMARKER = ++YYCURSOR);
5383     if (yybm[256+yych] & 128) {
5384         goto yy54;
5385     }
5386     if (yych == '?') goto yy173;
5387     if (yych == '\\') goto yy174;
5388 yy824:
5389 #line 97 "strict_cpp.re"
5390     { BOOST_WAVE_RET(T_PRIVATE); }
5391 #line 5392 "strict_cpp_re.inc"
5392 yy825:
5393     yyaccept = 4;
5394     yych = *(YYMARKER = ++YYCURSOR);
5395     if (yych == 'e') goto yy878;
5396     goto yy55;
5397 yy826:
5398     yyaccept = 4;
5399     yych = *(YYMARKER = ++YYCURSOR);
5400     if (yych == 'r') goto yy879;
5401     goto yy55;
5402 yy827:
5403     yyaccept = 4;
5404     yych = *(YYMARKER = ++YYCURSOR);
5405     if (yych == 'p') goto yy881;
5406     goto yy55;
5407 yy828:
5408     yyaccept = 4;
5409     yych = *(YYMARKER = ++YYCURSOR);
5410     if (yych == 's') goto yy882;
5411     goto yy55;
5412 yy829:
5413     yyaccept = 4;
5414     yych = *(YYMARKER = ++YYCURSOR);
5415     if (yych == 'a') goto yy884;
5416     if (yych == 'c') goto yy885;
5417     goto yy55;
5418 yy830:
5419     yyaccept = 4;
5420     yych = *(YYMARKER = ++YYCURSOR);
5421     if (yych == 'e') goto yy886;
5422     goto yy55;
5423 yy831:
5424     yyaccept = 4;
5425     yych = *(YYMARKER = ++YYCURSOR);
5426     if (yych == 'l') goto yy888;
5427     goto yy55;
5428 yy832:
5429     yyaccept = 86;
5430     yych = *(YYMARKER = ++YYCURSOR);
5431     if (yybm[256+yych] & 128) {
5432         goto yy54;
5433     }
5434     if (yych == '?') goto yy173;
5435     if (yych == '\\') goto yy174;
5436 yy833:
5437 #line 118 "strict_cpp.re"
5438     { BOOST_WAVE_RET(T_TYPEDEF); }
5439 #line 5440 "strict_cpp_re.inc"
5440 yy834:
5441     yyaccept = 4;
5442     yych = *(YYMARKER = ++YYCURSOR);
5443     if (yych == 'e') goto yy889;
5444     goto yy55;
5445 yy835:
5446     yyaccept = 4;
5447     yych = *(YYMARKER = ++YYCURSOR);
5448     if (yych == 'd') goto yy891;
5449     goto yy55;
5450 yy836:
5451     yyaccept = 87;
5452     yych = *(YYMARKER = ++YYCURSOR);
5453     if (yybm[256+yych] & 128) {
5454         goto yy54;
5455     }
5456     if (yych == '?') goto yy173;
5457     if (yych == '\\') goto yy174;
5458 yy837:
5459 #line 124 "strict_cpp.re"
5460     { BOOST_WAVE_RET(T_VIRTUAL); }
5461 #line 5462 "strict_cpp_re.inc"
5462 yy838:
5463     yyaccept = 4;
5464     yych = *(YYMARKER = ++YYCURSOR);
5465     if (yych == 'e') goto yy893;
5466     goto yy55;
5467 yy839:
5468     yyaccept = 88;
5469     yych = *(YYMARKER = ++YYCURSOR);
5470     if (yybm[256+yych] & 128) {
5471         goto yy54;
5472     }
5473     if (yych == '?') goto yy173;
5474     if (yych == '\\') goto yy174;
5475 yy840:
5476 #line 127 "strict_cpp.re"
5477     { BOOST_WAVE_RET(T_WCHART); }
5478 #line 5479 "strict_cpp_re.inc"
5479 yy841:
5480     yych = *++YYCURSOR;
5481     if (yych == 'o') goto yy895;
5482     goto yy100;
5483 yy842:
5484     yyaccept = 89;
5485     yych = *(YYMARKER = ++YYCURSOR);
5486     if (yych == '_') goto yy901;
5487     goto yy897;
5488 yy843:
5489 #line 323 "strict_cpp.re"
5490     { BOOST_WAVE_RET(T_PP_INCLUDE); }
5491 #line 5492 "strict_cpp_re.inc"
5492 yy844:
5493     ++YYCURSOR;
5494 #line 337 "strict_cpp.re"
5495     { BOOST_WAVE_RET(T_PP_WARNING); }
5496 #line 5497 "strict_cpp_re.inc"
5497 yy846:
5498     yyaccept = 90;
5499     yych = *(YYMARKER = ++YYCURSOR);
5500     if (yybm[256+yych] & 128) {
5501         goto yy54;
5502     }
5503     if (yych == '?') goto yy173;
5504     if (yych == '\\') goto yy174;
5505 yy847:
5506 #line 140 "strict_cpp.re"
5507     { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_EXCEPT : T_IDENTIFIER); }
5508 #line 5509 "strict_cpp_re.inc"
5509 yy848:
5510     yyaccept = 4;
5511     yych = *(YYMARKER = ++YYCURSOR);
5512     if (yych == 'y') goto yy902;
5513     goto yy55;
5514 yy849:
5515     yyaccept = 4;
5516     yych = *(YYMARKER = ++YYCURSOR);
5517     if (yych == 'c') goto yy904;
5518     goto yy55;
5519 yy850:
5520     yyaccept = 4;
5521     yych = *(YYMARKER = ++YYCURSOR);
5522     if (yych == 'l') goto yy906;
5523     goto yy55;
5524 yy851:
5525     yyaccept = 91;
5526     yych = *(YYMARKER = ++YYCURSOR);
5527     if (yybm[256+yych] & 128) {
5528         goto yy54;
5529     }
5530     if (yych == '?') goto yy173;
5531     if (yych == '\\') goto yy174;
5532 yy852:
5533 #line 138 "strict_cpp.re"
5534     { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_STDCALL : T_IDENTIFIER); }
5535 #line 5536 "strict_cpp_re.inc"
5536 yy853:
5537     yyaccept = 92;
5538     yych = *(YYMARKER = ++YYCURSOR);
5539     if (yybm[256+yych] & 128) {
5540         goto yy54;
5541     }
5542     if (yych == '?') goto yy173;
5543     if (yych == '\\') goto yy174;
5544 yy854:
5545 #line 57 "strict_cpp.re"
5546     { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_CHAR16_T : T_IDENTIFIER); }
5547 #line 5548 "strict_cpp_re.inc"
5548 yy855:
5549     yyaccept = 93;
5550     yych = *(YYMARKER = ++YYCURSOR);
5551     if (yybm[256+yych] & 128) {
5552         goto yy54;
5553     }
5554     if (yych == '?') goto yy173;
5555     if (yych == '\\') goto yy174;
5556 yy856:
5557 #line 58 "strict_cpp.re"
5558     { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_CHAR32_T : T_IDENTIFIER); }
5559 #line 5560 "strict_cpp_re.inc"
5560 yy857:
5561     yyaccept = 94;
5562     yych = *(YYMARKER = ++YYCURSOR);
5563     if (yybm[256+yych] & 128) {
5564         goto yy54;
5565     }
5566     if (yych == '?') goto yy173;
5567     if (yych == '\\') goto yy174;
5568 yy858:
5569 #line 67 "strict_cpp.re"
5570     { BOOST_WAVE_RET(s->act_in_cpp2a_mode ? T_CO_AWAIT : T_IDENTIFIER); }
5571 #line 5572 "strict_cpp_re.inc"
5572 yy859:
5573     yyaccept = 4;
5574     yych = *(YYMARKER = ++YYCURSOR);
5575     if (yych == 'n') goto yy908;
5576     goto yy55;
5577 yy860:
5578     yyaccept = 95;
5579     yych = *(YYMARKER = ++YYCURSOR);
5580     if (yybm[256+yych] & 128) {
5581         goto yy54;
5582     }
5583     if (yych == '?') goto yy173;
5584     if (yych == '\\') goto yy174;
5585 yy861:
5586 #line 69 "strict_cpp.re"
5587     { BOOST_WAVE_RET(s->act_in_cpp2a_mode ? T_CO_YIELD : T_IDENTIFIER); }
5588 #line 5589 "strict_cpp_re.inc"
5589 yy862:
5590     yyaccept = 4;
5591     yych = *(YYMARKER = ++YYCURSOR);
5592     if (yych == 's') goto yy910;
5593     goto yy55;
5594 yy863:
5595     yyaccept = 4;
5596     yych = *(YYMARKER = ++YYCURSOR);
5597     if (yych == 'l') goto yy911;
5598     goto yy55;
5599 yy864:
5600     yyaccept = 4;
5601     yych = *(YYMARKER = ++YYCURSOR);
5602     if (yych == 'r') goto yy913;
5603     goto yy55;
5604 yy865:
5605     yyaccept = 4;
5606     yych = *(YYMARKER = ++YYCURSOR);
5607     if (yych == 't') goto yy915;
5608     goto yy55;
5609 yy866:
5610     yyaccept = 96;
5611     yych = *(YYMARKER = ++YYCURSOR);
5612     if (yybm[256+yych] & 128) {
5613         goto yy54;
5614     }
5615     if (yych == '?') goto yy173;
5616     if (yych == '\\') goto yy174;
5617 yy867:
5618 #line 66 "strict_cpp.re"
5619     { BOOST_WAVE_RET(T_CONTINUE); }
5620 #line 5621 "strict_cpp_re.inc"
5621 yy868:
5622     yyaccept = 97;
5623     yych = *(YYMARKER = ++YYCURSOR);
5624     if (yybm[256+yych] & 128) {
5625         goto yy54;
5626     }
5627     if (yych == '?') goto yy173;
5628     if (yych == '\\') goto yy174;
5629 yy869:
5630 #line 70 "strict_cpp.re"
5631     { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_DECLTYPE : T_IDENTIFIER); }
5632 #line 5633 "strict_cpp_re.inc"
5633 yy870:
5634     yyaccept = 4;
5635     yych = *(YYMARKER = ++YYCURSOR);
5636     if (yych == 'c') goto yy917;
5637     goto yy55;
5638 yy871:
5639     yyaccept = 98;
5640     yych = *(YYMARKER = ++YYCURSOR);
5641     if (yybm[256+yych] & 128) {
5642         goto yy54;
5643     }
5644     if (yych == '?') goto yy173;
5645     if (yych == '\\') goto yy174;
5646 yy872:
5647 #line 78 "strict_cpp.re"
5648     { BOOST_WAVE_RET(T_EXPLICIT); }
5649 #line 5650 "strict_cpp_re.inc"
5650 yy873:
5651     yyaccept = 4;
5652     yych = *(YYMARKER = ++YYCURSOR);
5653     if (yych == 'e') goto yy918;
5654     goto yy55;
5655 yy874:
5656     yyaccept = 99;
5657     yych = *(YYMARKER = ++YYCURSOR);
5658     if (yybm[256+yych] & 128) {
5659         goto yy54;
5660     }
5661     if (yych == '?') goto yy173;
5662     if (yych == '\\') goto yy174;
5663 yy875:
5664 #line 94 "strict_cpp.re"
5665     { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_NOEXCEPT : T_IDENTIFIER); }
5666 #line 5667 "strict_cpp_re.inc"
5667 yy876:
5668     yyaccept = 100;
5669     yych = *(YYMARKER = ++YYCURSOR);
5670     if (yybm[256+yych] & 128) {
5671         goto yy54;
5672     }
5673     if (yych == '?') goto yy173;
5674     if (yych == '\\') goto yy174;
5675 yy877:
5676 #line 96 "strict_cpp.re"
5677     { BOOST_WAVE_RET(T_OPERATOR); }
5678 #line 5679 "strict_cpp_re.inc"
5679 yy878:
5680     yyaccept = 4;
5681     yych = *(YYMARKER = ++YYCURSOR);
5682     if (yych == 'd') goto yy920;
5683     goto yy55;
5684 yy879:
5685     yyaccept = 101;
5686     yych = *(YYMARKER = ++YYCURSOR);
5687     if (yybm[256+yych] & 128) {
5688         goto yy54;
5689     }
5690     if (yych == '?') goto yy173;
5691     if (yych == '\\') goto yy174;
5692 yy880:
5693 #line 100 "strict_cpp.re"
5694     { BOOST_WAVE_RET(T_REGISTER); }
5695 #line 5696 "strict_cpp_re.inc"
5696 yy881:
5697     yyaccept = 4;
5698     yych = *(YYMARKER = ++YYCURSOR);
5699     if (yych == 'r') goto yy922;
5700     goto yy55;
5701 yy882:
5702     yyaccept = 102;
5703     yych = *(YYMARKER = ++YYCURSOR);
5704     if (yybm[256+yych] & 128) {
5705         goto yy54;
5706     }
5707     if (yych == '?') goto yy173;
5708     if (yych == '\\') goto yy174;
5709 yy883:
5710 #line 102 "strict_cpp.re"
5711     { BOOST_WAVE_RET(s->act_in_cpp2a_mode ? T_REQUIRES : T_IDENTIFIER); }
5712 #line 5713 "strict_cpp_re.inc"
5713 yy884:
5714     yyaccept = 4;
5715     yych = *(YYMARKER = ++YYCURSOR);
5716     if (yych == 's') goto yy923;
5717     goto yy55;
5718 yy885:
5719     yyaccept = 4;
5720     yych = *(YYMARKER = ++YYCURSOR);
5721     if (yych == 'a') goto yy924;
5722     goto yy55;
5723 yy886:
5724     yyaccept = 103;
5725     yych = *(YYMARKER = ++YYCURSOR);
5726     if (yybm[256+yych] & 128) {
5727         goto yy54;
5728     }
5729     if (yych == '?') goto yy173;
5730     if (yych == '\\') goto yy174;
5731 yy887:
5732 #line 112 "strict_cpp.re"
5733     { BOOST_WAVE_RET(T_TEMPLATE); }
5734 #line 5735 "strict_cpp_re.inc"
5735 yy888:
5736     yyaccept = 4;
5737     yych = *(YYMARKER = ++YYCURSOR);
5738     if (yych == 'o') goto yy925;
5739     goto yy55;
5740 yy889:
5741     yyaccept = 104;
5742     yych = *(YYMARKER = ++YYCURSOR);
5743     if (yybm[256+yych] & 128) {
5744         goto yy54;
5745     }
5746     if (yych == '?') goto yy173;
5747     if (yych == '\\') goto yy174;
5748 yy890:
5749 #line 120 "strict_cpp.re"
5750     { BOOST_WAVE_RET(T_TYPENAME); }
5751 #line 5752 "strict_cpp_re.inc"
5752 yy891:
5753     yyaccept = 105;
5754     yych = *(YYMARKER = ++YYCURSOR);
5755     if (yybm[256+yych] & 128) {
5756         goto yy54;
5757     }
5758     if (yych == '?') goto yy173;
5759     if (yych == '\\') goto yy174;
5760 yy892:
5761 #line 122 "strict_cpp.re"
5762     { BOOST_WAVE_RET(T_UNSIGNED); }
5763 #line 5764 "strict_cpp_re.inc"
5764 yy893:
5765     yyaccept = 106;
5766     yych = *(YYMARKER = ++YYCURSOR);
5767     if (yybm[256+yych] & 128) {
5768         goto yy54;
5769     }
5770     if (yych == '?') goto yy173;
5771     if (yych == '\\') goto yy174;
5772 yy894:
5773 #line 126 "strict_cpp.re"
5774     { BOOST_WAVE_RET(T_VOLATILE); }
5775 #line 5776 "strict_cpp_re.inc"
5776 yy895:
5777     yych = *++YYCURSOR;
5778     if (yych == 'n') goto yy926;
5779     goto yy100;
5780 yy896:
5781     yyaccept = 89;
5782     YYMARKER = ++YYCURSOR;
5783     if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
5784     yych = *YYCURSOR;
5785 yy897:
5786     if (yych <= ' ') {
5787         if (yych <= '\n') {
5788             if (yych == '\t') goto yy896;
5789             goto yy843;
5790         } else {
5791             if (yych <= '\f') goto yy896;
5792             if (yych <= 0x1F) goto yy843;
5793             goto yy896;
5794         }
5795     } else {
5796         if (yych <= '.') {
5797             if (yych != '"') goto yy843;
5798         } else {
5799             if (yych <= '/') goto yy899;
5800             if (yych == '<') goto yy900;
5801             goto yy843;
5802         }
5803     }
5804     yych = *++YYCURSOR;
5805     if (yych == '"') goto yy100;
5806     goto yy929;
5807 yy899:
5808     ++YYCURSOR;
5809     if (YYLIMIT <= YYCURSOR) YYFILL(1);
5810     yych = *YYCURSOR;
5811     if (yych == '*') goto yy930;
5812     goto yy100;
5813 yy900:
5814     yych = *++YYCURSOR;
5815     if (yych == '>') goto yy100;
5816     goto yy933;
5817 yy901:
5818     yych = *++YYCURSOR;
5819     if (yych == 'n') goto yy934;
5820     goto yy100;
5821 yy902:
5822     yyaccept = 107;
5823     yych = *(YYMARKER = ++YYCURSOR);
5824     if (yybm[256+yych] & 128) {
5825         goto yy54;
5826     }
5827     if (yych == '?') goto yy173;
5828     if (yych == '\\') goto yy174;
5829 yy903:
5830 #line 141 "strict_cpp.re"
5831     { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_FINALLY : T_IDENTIFIER); }
5832 #line 5833 "strict_cpp_re.inc"
5833 yy904:
5834     yyaccept = 108;
5835     yych = *(YYMARKER = ++YYCURSOR);
5836     if (yybm[256+yych] & 128) {
5837         goto yy54;
5838     }
5839     if (yych == '?') goto yy173;
5840     if (yych == '\\') goto yy174;
5841 yy905:
5842 #line 135 "strict_cpp.re"
5843     { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_DECLSPEC : T_IDENTIFIER); }
5844 #line 5845 "strict_cpp_re.inc"
5845 yy906:
5846     yyaccept = 109;
5847     yych = *(YYMARKER = ++YYCURSOR);
5848     if (yybm[256+yych] & 128) {
5849         goto yy54;
5850     }
5851     if (yych == '?') goto yy173;
5852     if (yych == '\\') goto yy174;
5853 yy907:
5854 #line 137 "strict_cpp.re"
5855     { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_FASTCALL : T_IDENTIFIER); }
5856 #line 5857 "strict_cpp_re.inc"
5857 yy908:
5858     yyaccept = 110;
5859     yych = *(YYMARKER = ++YYCURSOR);
5860     if (yybm[256+yych] & 128) {
5861         goto yy54;
5862     }
5863     if (yych == '?') goto yy173;
5864     if (yych == '\\') goto yy174;
5865 yy909:
5866 #line 68 "strict_cpp.re"
5867     { BOOST_WAVE_RET(s->act_in_cpp2a_mode ? T_CO_RETURN : T_IDENTIFIER); }
5868 #line 5869 "strict_cpp_re.inc"
5869 yy910:
5870     yyaccept = 4;
5871     yych = *(YYMARKER = ++YYCURSOR);
5872     if (yych == 't') goto yy935;
5873     goto yy55;
5874 yy911:
5875     yyaccept = 111;
5876     yych = *(YYMARKER = ++YYCURSOR);
5877     if (yybm[256+yych] & 128) {
5878         goto yy54;
5879     }
5880     if (yych == '?') goto yy173;
5881     if (yych == '\\') goto yy174;
5882 yy912:
5883 #line 62 "strict_cpp.re"
5884     { BOOST_WAVE_RET(s->act_in_cpp2a_mode ? T_CONSTEVAL : T_IDENTIFIER); }
5885 #line 5886 "strict_cpp_re.inc"
5886 yy913:
5887     yyaccept = 112;
5888     yych = *(YYMARKER = ++YYCURSOR);
5889     if (yybm[256+yych] & 128) {
5890         goto yy54;
5891     }
5892     if (yych == '?') goto yy173;
5893     if (yych == '\\') goto yy174;
5894 yy914:
5895 #line 63 "strict_cpp.re"
5896     { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_CONSTEXPR : T_IDENTIFIER); }
5897 #line 5898 "strict_cpp_re.inc"
5898 yy915:
5899     yyaccept = 113;
5900     yych = *(YYMARKER = ++YYCURSOR);
5901     if (yybm[256+yych] & 128) {
5902         goto yy54;
5903     }
5904     if (yych == '?') goto yy173;
5905     if (yych == '\\') goto yy174;
5906 yy916:
5907 #line 64 "strict_cpp.re"
5908     { BOOST_WAVE_RET(s->act_in_cpp2a_mode ? T_CONSTINIT : T_IDENTIFIER); }
5909 #line 5910 "strict_cpp_re.inc"
5910 yy917:
5911     yyaccept = 4;
5912     yych = *(YYMARKER = ++YYCURSOR);
5913     if (yych == 'a') goto yy937;
5914     goto yy55;
5915 yy918:
5916     yyaccept = 114;
5917     yych = *(YYMARKER = ++YYCURSOR);
5918     if (yybm[256+yych] & 128) {
5919         goto yy54;
5920     }
5921     if (yych == '?') goto yy173;
5922     if (yych == '\\') goto yy174;
5923 yy919:
5924 #line 92 "strict_cpp.re"
5925     { BOOST_WAVE_RET(T_NAMESPACE); }
5926 #line 5927 "strict_cpp_re.inc"
5927 yy920:
5928     yyaccept = 115;
5929     yych = *(YYMARKER = ++YYCURSOR);
5930     if (yybm[256+yych] & 128) {
5931         goto yy54;
5932     }
5933     if (yych == '?') goto yy173;
5934     if (yych == '\\') goto yy174;
5935 yy921:
5936 #line 98 "strict_cpp.re"
5937     { BOOST_WAVE_RET(T_PROTECTED); }
5938 #line 5939 "strict_cpp_re.inc"
5939 yy922:
5940     yyaccept = 4;
5941     yych = *(YYMARKER = ++YYCURSOR);
5942     if (yych == 'e') goto yy938;
5943     goto yy55;
5944 yy923:
5945     yyaccept = 4;
5946     yych = *(YYMARKER = ++YYCURSOR);
5947     if (yych == 's') goto yy939;
5948     goto yy55;
5949 yy924:
5950     yyaccept = 4;
5951     yych = *(YYMARKER = ++YYCURSOR);
5952     if (yych == 's') goto yy940;
5953     goto yy55;
5954 yy925:
5955     yyaccept = 4;
5956     yych = *(YYMARKER = ++YYCURSOR);
5957     if (yych == 'c') goto yy941;
5958     goto yy55;
5959 yy926:
5960     ++YYCURSOR;
5961 #line 340 "strict_cpp.re"
5962     { BOOST_WAVE_RET(T_MSEXT_PP_ENDREGION); }
5963 #line 5964 "strict_cpp_re.inc"
5964 yy928:
5965     ++YYCURSOR;
5966     if (YYLIMIT <= YYCURSOR) YYFILL(1);
5967     yych = *YYCURSOR;
5968 yy929:
5969     if (yybm[0+yych] & 64) {
5970         goto yy928;
5971     }
5972     if (yych <= 0x1F) goto yy100;
5973     goto yy942;
5974 yy930:
5975     ++YYCURSOR;
5976     if (YYLIMIT <= YYCURSOR) YYFILL(1);
5977     yych = *YYCURSOR;
5978     if (yych <= 0x1F) {
5979         if (yych <= 0x08) goto yy100;
5980         if (yych <= '\r') goto yy930;
5981         goto yy100;
5982     } else {
5983         if (yych == '*') goto yy944;
5984         goto yy930;
5985     }
5986 yy932:
5987     ++YYCURSOR;
5988     if (YYLIMIT <= YYCURSOR) YYFILL(1);
5989     yych = *YYCURSOR;
5990 yy933:
5991     if (yybm[0+yych] & 128) {
5992         goto yy932;
5993     }
5994     if (yych <= 0x1F) goto yy100;
5995     goto yy946;
5996 yy934:
5997     yych = *++YYCURSOR;
5998     if (yych == 'e') goto yy948;
5999     goto yy100;
6000 yy935:
6001     yyaccept = 116;
6002     yych = *(YYMARKER = ++YYCURSOR);
6003     if (yybm[256+yych] & 128) {
6004         goto yy54;
6005     }
6006     if (yych == '?') goto yy173;
6007     if (yych == '\\') goto yy174;
6008 yy936:
6009 #line 65 "strict_cpp.re"
6010     { BOOST_WAVE_RET(T_CONSTCAST); }
6011 #line 6012 "strict_cpp_re.inc"
6012 yy937:
6013     yyaccept = 4;
6014     yych = *(YYMARKER = ++YYCURSOR);
6015     if (yych == 's') goto yy949;
6016     goto yy55;
6017 yy938:
6018     yyaccept = 4;
6019     yych = *(YYMARKER = ++YYCURSOR);
6020     if (yych == 't') goto yy950;
6021     goto yy55;
6022 yy939:
6023     yyaccept = 4;
6024     yych = *(YYMARKER = ++YYCURSOR);
6025     if (yych == 'e') goto yy951;
6026     goto yy55;
6027 yy940:
6028     yyaccept = 4;
6029     yych = *(YYMARKER = ++YYCURSOR);
6030     if (yych == 't') goto yy952;
6031     goto yy55;
6032 yy941:
6033     yyaccept = 4;
6034     yych = *(YYMARKER = ++YYCURSOR);
6035     if (yych == 'a') goto yy954;
6036     goto yy55;
6037 yy942:
6038     ++YYCURSOR;
6039 #line 320 "strict_cpp.re"
6040     { BOOST_WAVE_RET(T_PP_QHEADER); }
6041 #line 6042 "strict_cpp_re.inc"
6042 yy944:
6043     ++YYCURSOR;
6044     if (YYLIMIT <= YYCURSOR) YYFILL(1);
6045     yych = *YYCURSOR;
6046     if (yych <= ')') {
6047         if (yych <= 0x08) goto yy100;
6048         if (yych <= '\r') goto yy930;
6049         if (yych <= 0x1F) goto yy100;
6050         goto yy930;
6051     } else {
6052         if (yych <= '*') goto yy944;
6053         if (yych == '/') goto yy896;
6054         goto yy930;
6055     }
6056 yy946:
6057     ++YYCURSOR;
6058 #line 317 "strict_cpp.re"
6059     { BOOST_WAVE_RET(T_PP_HHEADER); }
6060 #line 6061 "strict_cpp_re.inc"
6061 yy948:
6062     yych = *++YYCURSOR;
6063     if (yych == 'x') goto yy955;
6064     goto yy100;
6065 yy949:
6066     yyaccept = 4;
6067     yych = *(YYMARKER = ++YYCURSOR);
6068     if (yych == 't') goto yy956;
6069     goto yy55;
6070 yy950:
6071     yyaccept = 4;
6072     yych = *(YYMARKER = ++YYCURSOR);
6073     if (yych == '_') goto yy958;
6074     goto yy55;
6075 yy951:
6076     yyaccept = 4;
6077     yych = *(YYMARKER = ++YYCURSOR);
6078     if (yych == 'r') goto yy959;
6079     goto yy55;
6080 yy952:
6081     yyaccept = 117;
6082     yych = *(YYMARKER = ++YYCURSOR);
6083     if (yybm[256+yych] & 128) {
6084         goto yy54;
6085     }
6086     if (yych == '?') goto yy173;
6087     if (yych == '\\') goto yy174;
6088 yy953:
6089 #line 108 "strict_cpp.re"
6090     { BOOST_WAVE_RET(T_STATICCAST); }
6091 #line 6092 "strict_cpp_re.inc"
6092 yy954:
6093     yyaccept = 4;
6094     yych = *(YYMARKER = ++YYCURSOR);
6095     if (yych == 'l') goto yy960;
6096     goto yy55;
6097 yy955:
6098     yych = *++YYCURSOR;
6099     if (yych == 't') goto yy896;
6100     goto yy100;
6101 yy956:
6102     yyaccept = 118;
6103     yych = *(YYMARKER = ++YYCURSOR);
6104     if (yybm[256+yych] & 128) {
6105         goto yy54;
6106     }
6107     if (yych == '?') goto yy173;
6108     if (yych == '\\') goto yy174;
6109 yy957:
6110 #line 75 "strict_cpp.re"
6111     { BOOST_WAVE_RET(T_DYNAMICCAST); }
6112 #line 6113 "strict_cpp_re.inc"
6113 yy958:
6114     yyaccept = 4;
6115     yych = *(YYMARKER = ++YYCURSOR);
6116     if (yych == 'c') goto yy962;
6117     goto yy55;
6118 yy959:
6119     yyaccept = 4;
6120     yych = *(YYMARKER = ++YYCURSOR);
6121     if (yych == 't') goto yy963;
6122     goto yy55;
6123 yy960:
6124     yyaccept = 119;
6125     yych = *(YYMARKER = ++YYCURSOR);
6126     if (yybm[256+yych] & 128) {
6127         goto yy54;
6128     }
6129     if (yych == '?') goto yy173;
6130     if (yych == '\\') goto yy174;
6131 yy961:
6132 #line 114 "strict_cpp.re"
6133     { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_THREADLOCAL : T_IDENTIFIER); }
6134 #line 6135 "strict_cpp_re.inc"
6135 yy962:
6136     yyaccept = 4;
6137     yych = *(YYMARKER = ++YYCURSOR);
6138     if (yych == 'a') goto yy965;
6139     goto yy55;
6140 yy963:
6141     yyaccept = 120;
6142     yych = *(YYMARKER = ++YYCURSOR);
6143     if (yybm[256+yych] & 128) {
6144         goto yy54;
6145     }
6146     if (yych == '?') goto yy173;
6147     if (yych == '\\') goto yy174;
6148 yy964:
6149 #line 109 "strict_cpp.re"
6150     { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_STATICASSERT : T_IDENTIFIER); }
6151 #line 6152 "strict_cpp_re.inc"
6152 yy965:
6153     yyaccept = 4;
6154     yych = *(YYMARKER = ++YYCURSOR);
6155     if (yych != 's') goto yy55;
6156     yyaccept = 4;
6157     yych = *(YYMARKER = ++YYCURSOR);
6158     if (yych != 't') goto yy55;
6159     yyaccept = 121;
6160     yych = *(YYMARKER = ++YYCURSOR);
6161     if (yybm[256+yych] & 128) {
6162         goto yy54;
6163     }
6164     if (yych == '?') goto yy173;
6165     if (yych == '\\') goto yy174;
6166 yy968:
6167 #line 101 "strict_cpp.re"
6168     { BOOST_WAVE_RET(T_REINTERPRETCAST); }
6169 #line 6170 "strict_cpp_re.inc"
6170 }
6171 #line 372 "strict_cpp.re"
6172 
6173 
6174 ccomment:
6175 
6176 #line 6177 "strict_cpp_re.inc"
6177 {
6178     YYCTYPE yych;
6179     if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
6180     yych = *YYCURSOR;
6181     if (yych <= '\f') {
6182         if (yych <= 0x08) {
6183             if (yych >= 0x01) goto yy973;
6184         } else {
6185             if (yych == '\n') goto yy977;
6186             goto yy975;
6187         }
6188     } else {
6189         if (yych <= 0x1F) {
6190             if (yych <= '\r') goto yy979;
6191             goto yy973;
6192         } else {
6193             if (yych == '*') goto yy980;
6194             goto yy975;
6195         }
6196     }
6197     ++YYCURSOR;
6198 #line 390 "strict_cpp.re"
6199     {
6200         if(cursor == s->eof)
6201         {
6202             BOOST_WAVE_UPDATE_CURSOR();   // adjust the input cursor
6203             (*s->error_proc)(s, lexing_exception::generic_lexing_warning,
6204                 "Unterminated 'C' style comment");
6205         }
6206         else
6207         {
6208             --YYCURSOR;                   // next call returns T_EOF
6209             BOOST_WAVE_UPDATE_CURSOR();   // adjust the input cursor
6210             (*s->error_proc)(s, lexing_exception::generic_lexing_error,
6211                 "invalid character: '\\000' in input stream");
6212         }
6213     }
6214 #line 6215 "strict_cpp_re.inc"
6215 yy973:
6216     ++YYCURSOR;
6217 #line 407 "strict_cpp.re"
6218     {
6219         // flag the error
6220         BOOST_WAVE_UPDATE_CURSOR();   // adjust the input cursor
6221         (*s->error_proc)(s, lexing_exception::generic_lexing_error,
6222             "invalid character '\\%03o' in input stream", *--YYCURSOR);
6223     }
6224 #line 6225 "strict_cpp_re.inc"
6225 yy975:
6226     ++YYCURSOR;
6227 yy976:
6228 #line 387 "strict_cpp.re"
6229     { goto ccomment; }
6230 #line 6231 "strict_cpp_re.inc"
6231 yy977:
6232     ++YYCURSOR;
6233 yy978:
6234 #line 379 "strict_cpp.re"
6235     {
6236         /*if(cursor == s->eof) BOOST_WAVE_RET(T_EOF);*/
6237         /*s->tok = cursor; */
6238         s->line += count_backslash_newlines(s, cursor) +1;
6239         cursor.column = 1;
6240         goto ccomment;
6241     }
6242 #line 6243 "strict_cpp_re.inc"
6243 yy979:
6244     yych = *++YYCURSOR;
6245     if (yych == '\n') goto yy977;
6246     goto yy978;
6247 yy980:
6248     yych = *++YYCURSOR;
6249     if (yych != '/') goto yy976;
6250     ++YYCURSOR;
6251 #line 376 "strict_cpp.re"
6252     { BOOST_WAVE_RET(T_CCOMMENT); }
6253 #line 6254 "strict_cpp_re.inc"
6254 }
6255 #line 413 "strict_cpp.re"
6256 
6257 
6258 cppcomment:
6259 
6260 #line 6261 "strict_cpp_re.inc"
6261 {
6262     YYCTYPE yych;
6263     if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
6264     yych = *YYCURSOR;
6265     if (yych <= '\n') {
6266         if (yych <= 0x00) goto yy985;
6267         if (yych <= 0x08) goto yy987;
6268         if (yych <= '\t') goto yy989;
6269         goto yy991;
6270     } else {
6271         if (yych <= '\f') goto yy989;
6272         if (yych <= '\r') goto yy993;
6273         if (yych <= 0x1F) goto yy987;
6274         goto yy989;
6275     }
6276 yy985:
6277     ++YYCURSOR;
6278 #line 429 "strict_cpp.re"
6279     {
6280         if (s->eof && cursor != s->eof)
6281         {
6282             --YYCURSOR;                     // next call returns T_EOF
6283             BOOST_WAVE_UPDATE_CURSOR();     // adjust the input cursor
6284             (*s->error_proc)(s, lexing_exception::generic_lexing_error,
6285                 "invalid character '\\000' in input stream");
6286         }
6287 
6288         --YYCURSOR;                         // next call returns T_EOF
6289         if (!s->single_line_only)
6290         {
6291             BOOST_WAVE_UPDATE_CURSOR();     // adjust the input cursor
6292             (*s->error_proc)(s, lexing_exception::generic_lexing_warning,
6293                 "Unterminated 'C++' style comment");
6294         }
6295         BOOST_WAVE_RET(T_CPPCOMMENT);
6296     }
6297 #line 6298 "strict_cpp_re.inc"
6298 yy987:
6299     ++YYCURSOR;
6300 #line 449 "strict_cpp.re"
6301     {
6302         // flag the error
6303         BOOST_WAVE_UPDATE_CURSOR();     // adjust the input cursor
6304         (*s->error_proc)(s, lexing_exception::generic_lexing_error,
6305             "invalid character '\\%03o' in input stream", *--YYCURSOR);
6306     }
6307 #line 6308 "strict_cpp_re.inc"
6308 yy989:
6309     ++YYCURSOR;
6310 #line 426 "strict_cpp.re"
6311     { goto cppcomment; }
6312 #line 6313 "strict_cpp_re.inc"
6313 yy991:
6314     ++YYCURSOR;
6315 yy992:
6316 #line 418 "strict_cpp.re"
6317     {
6318         /*if(cursor == s->eof) BOOST_WAVE_RET(T_EOF); */
6319         /*s->tok = cursor; */
6320         s->line++;
6321         cursor.column = 1;
6322         BOOST_WAVE_RET(T_CPPCOMMENT);
6323     }
6324 #line 6325 "strict_cpp_re.inc"
6325 yy993:
6326     yych = *++YYCURSOR;
6327     if (yych == '\n') goto yy991;
6328     goto yy992;
6329 }
6330 #line 455 "strict_cpp.re"
6331 
6332 
6333 /* this subscanner is called whenever a pp_number has been started */
6334 pp_number:
6335 {
6336     cursor = uchar_wrapper(s->tok = s->cur, s->column = s->curr_column);
6337     marker = uchar_wrapper(s->ptr);
6338     limit = uchar_wrapper(s->lim);
6339 
6340     if (s->detect_pp_numbers) {
6341     
6342 #line 6343 "strict_cpp_re.inc"
6343 {
6344     YYCTYPE yych;
6345     static const unsigned char yybm[] = {
6346           0,   0,   0,   0,   0,   0,   0,   0, 
6347           0,   0,   0,   0,   0,   0,   0,   0, 
6348           0,   0,   0,   0,   0,   0,   0,   0, 
6349           0,   0,   0,   0,   0,   0,   0,   0, 
6350           0,   0,   0,   0,   0,   0,   0,   0, 
6351           0,   0,   0,   0,   0,   0,  64,   0, 
6352          64,  64,  64,  64,  64,  64,  64,  64, 
6353          64,  64,   0,   0,   0,   0,   0,   0, 
6354           0,  64,  64,  64,  64, 128,  64,  64, 
6355          64,  64,  64,  64,  64,  64,  64,  64, 
6356          64,  64,  64,  64,  64,  64,  64,  64, 
6357          64,  64,  64,   0,   0,   0,   0,  64, 
6358           0,  64,  64,  64,  64, 128,  64,  64, 
6359          64,  64,  64,  64,  64,  64,  64,  64, 
6360          64,  64,  64,  64,  64,  64,  64,  64, 
6361          64,  64,  64,   0,   0,   0,   0,   0, 
6362           0,   0,   0,   0,   0,   0,   0,   0, 
6363           0,   0,   0,   0,   0,   0,   0,   0, 
6364           0,   0,   0,   0,   0,   0,   0,   0, 
6365           0,   0,   0,   0,   0,   0,   0,   0, 
6366           0,   0,   0,   0,   0,   0,   0,   0, 
6367           0,   0,   0,   0,   0,   0,   0,   0, 
6368           0,   0,   0,   0,   0,   0,   0,   0, 
6369           0,   0,   0,   0,   0,   0,   0,   0, 
6370           0,   0,   0,   0,   0,   0,   0,   0, 
6371           0,   0,   0,   0,   0,   0,   0,   0, 
6372           0,   0,   0,   0,   0,   0,   0,   0, 
6373           0,   0,   0,   0,   0,   0,   0,   0, 
6374           0,   0,   0,   0,   0,   0,   0,   0, 
6375           0,   0,   0,   0,   0,   0,   0,   0, 
6376           0,   0,   0,   0,   0,   0,   0,   0, 
6377           0,   0,   0,   0,   0,   0,   0,   0, 
6378     };
6379     if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
6380     yych = *YYCURSOR;
6381     if (yych == '.') goto yy998;
6382     if (yych <= '/') goto yy996;
6383     if (yych <= '9') goto yy999;
6384 yy996:
6385     ++YYCURSOR;
6386 yy997:
6387 #line 469 "strict_cpp.re"
6388     { BOOST_ASSERT(false); }
6389 #line 6390 "strict_cpp_re.inc"
6390 yy998:
6391     yych = *++YYCURSOR;
6392     if (yych <= '/') goto yy997;
6393     if (yych >= ':') goto yy997;
6394 yy999:
6395     YYMARKER = ++YYCURSOR;
6396     if (YYLIMIT <= YYCURSOR) YYFILL(1);
6397     yych = *YYCURSOR;
6398     if (yybm[0+yych] & 64) {
6399         goto yy999;
6400     }
6401     if (yych <= 'E') {
6402         if (yych == '?') goto yy1002;
6403         if (yych >= 'A') goto yy1004;
6404     } else {
6405         if (yych <= '\\') {
6406             if (yych >= '\\') goto yy1006;
6407         } else {
6408             if (yych <= '`') goto yy1001;
6409             if (yych <= 'e') goto yy1004;
6410         }
6411     }
6412 yy1001:
6413 #line 467 "strict_cpp.re"
6414     { BOOST_WAVE_RET(T_PP_NUMBER); }
6415 #line 6416 "strict_cpp_re.inc"
6416 yy1002:
6417     ++YYCURSOR;
6418     if (YYLIMIT <= YYCURSOR) YYFILL(1);
6419     yych = *YYCURSOR;
6420     if (yych == '?') goto yy1007;
6421 yy1003:
6422     YYCURSOR = YYMARKER;
6423     goto yy1001;
6424 yy1004:
6425     YYMARKER = ++YYCURSOR;
6426     if (YYLIMIT <= YYCURSOR) YYFILL(1);
6427     yych = *YYCURSOR;
6428     if (yybm[0+yych] & 128) {
6429         goto yy1004;
6430     }
6431     if (yych <= '?') {
6432         if (yych <= '.') {
6433             if (yych == '+') goto yy999;
6434             if (yych <= ',') goto yy1001;
6435             goto yy999;
6436         } else {
6437             if (yych <= '/') goto yy1001;
6438             if (yych <= '9') goto yy999;
6439             if (yych <= '>') goto yy1001;
6440             goto yy1002;
6441         }
6442     } else {
6443         if (yych <= '\\') {
6444             if (yych <= '@') goto yy1001;
6445             if (yych <= 'Z') goto yy999;
6446             if (yych <= '[') goto yy1001;
6447         } else {
6448             if (yych <= '_') {
6449                 if (yych <= '^') goto yy1001;
6450                 goto yy999;
6451             } else {
6452                 if (yych <= '`') goto yy1001;
6453                 if (yych <= 'z') goto yy999;
6454                 goto yy1001;
6455             }
6456         }
6457     }
6458 yy1006:
6459     ++YYCURSOR;
6460     if (YYLIMIT <= YYCURSOR) YYFILL(1);
6461     yych = *YYCURSOR;
6462     if (yych == 'U') goto yy1008;
6463     if (yych == 'u') goto yy1009;
6464     goto yy1003;
6465 yy1007:
6466     ++YYCURSOR;
6467     if (YYLIMIT <= YYCURSOR) YYFILL(1);
6468     yych = *YYCURSOR;
6469     if (yych == '/') goto yy1006;
6470     goto yy1003;
6471 yy1008:
6472     ++YYCURSOR;
6473     if (YYLIMIT <= YYCURSOR) YYFILL(1);
6474     yych = *YYCURSOR;
6475     if (yych <= '@') {
6476         if (yych <= '/') goto yy1003;
6477         if (yych <= '9') goto yy1010;
6478         goto yy1003;
6479     } else {
6480         if (yych <= 'F') goto yy1010;
6481         if (yych <= '`') goto yy1003;
6482         if (yych <= 'f') goto yy1010;
6483         goto yy1003;
6484     }
6485 yy1009:
6486     ++YYCURSOR;
6487     if (YYLIMIT <= YYCURSOR) YYFILL(1);
6488     yych = *YYCURSOR;
6489     if (yych <= '@') {
6490         if (yych <= '/') goto yy1003;
6491         if (yych <= '9') goto yy1011;
6492         goto yy1003;
6493     } else {
6494         if (yych <= 'F') goto yy1011;
6495         if (yych <= '`') goto yy1003;
6496         if (yych <= 'f') goto yy1011;
6497         goto yy1003;
6498     }
6499 yy1010:
6500     ++YYCURSOR;
6501     if (YYLIMIT <= YYCURSOR) YYFILL(1);
6502     yych = *YYCURSOR;
6503     if (yych <= '@') {
6504         if (yych <= '/') goto yy1003;
6505         if (yych <= '9') goto yy1012;
6506         goto yy1003;
6507     } else {
6508         if (yych <= 'F') goto yy1012;
6509         if (yych <= '`') goto yy1003;
6510         if (yych <= 'f') goto yy1012;
6511         goto yy1003;
6512     }
6513 yy1011:
6514     ++YYCURSOR;
6515     if (YYLIMIT <= YYCURSOR) YYFILL(1);
6516     yych = *YYCURSOR;
6517     if (yych <= '@') {
6518         if (yych <= '/') goto yy1003;
6519         if (yych <= '9') goto yy1013;
6520         goto yy1003;
6521     } else {
6522         if (yych <= 'F') goto yy1013;
6523         if (yych <= '`') goto yy1003;
6524         if (yych <= 'f') goto yy1013;
6525         goto yy1003;
6526     }
6527 yy1012:
6528     ++YYCURSOR;
6529     if (YYLIMIT <= YYCURSOR) YYFILL(1);
6530     yych = *YYCURSOR;
6531     if (yych <= '@') {
6532         if (yych <= '/') goto yy1003;
6533         if (yych <= '9') goto yy1014;
6534         goto yy1003;
6535     } else {
6536         if (yych <= 'F') goto yy1014;
6537         if (yych <= '`') goto yy1003;
6538         if (yych <= 'f') goto yy1014;
6539         goto yy1003;
6540     }
6541 yy1013:
6542     ++YYCURSOR;
6543     if (YYLIMIT <= YYCURSOR) YYFILL(1);
6544     yych = *YYCURSOR;
6545     if (yych <= '@') {
6546         if (yych <= '/') goto yy1003;
6547         if (yych <= '9') goto yy1015;
6548         goto yy1003;
6549     } else {
6550         if (yych <= 'F') goto yy1015;
6551         if (yych <= '`') goto yy1003;
6552         if (yych <= 'f') goto yy1015;
6553         goto yy1003;
6554     }
6555 yy1014:
6556     ++YYCURSOR;
6557     if (YYLIMIT <= YYCURSOR) YYFILL(1);
6558     yych = *YYCURSOR;
6559     if (yych <= '@') {
6560         if (yych <= '/') goto yy1003;
6561         if (yych <= '9') goto yy1009;
6562         goto yy1003;
6563     } else {
6564         if (yych <= 'F') goto yy1009;
6565         if (yych <= '`') goto yy1003;
6566         if (yych <= 'f') goto yy1009;
6567         goto yy1003;
6568     }
6569 yy1015:
6570     ++YYCURSOR;
6571     if (YYLIMIT <= YYCURSOR) YYFILL(1);
6572     yych = *YYCURSOR;
6573     if (yych <= '@') {
6574         if (yych <= '/') goto yy1003;
6575         if (yych <= '9') goto yy999;
6576         goto yy1003;
6577     } else {
6578         if (yych <= 'F') goto yy999;
6579         if (yych <= '`') goto yy1003;
6580         if (yych <= 'f') goto yy999;
6581         goto yy1003;
6582     }
6583 }
6584 #line 470 "strict_cpp.re"
6585 
6586     }
6587     else {
6588     
6589 #line 6590 "strict_cpp_re.inc"
6590 {
6591     YYCTYPE yych;
6592     unsigned int yyaccept = 0;
6593     static const unsigned char yybm[] = {
6594           0,   0,   0,   0,   0,   0,   0,   0, 
6595           0,   0,   0,   0,   0,   0,   0,   0, 
6596           0,   0,   0,   0,   0,   0,   0,   0, 
6597           0,   0,   0,   0,   0,   0,   0,   0, 
6598           0,   0,   0,   0,   0,   0,   0,   0, 
6599           0,   0,   0,   0,   0,   0,   0,   0, 
6600         224, 224, 224, 224, 224, 224, 224, 224, 
6601         160, 160,   0,   0,   0,   0,   0,   0, 
6602           0, 128, 128, 128, 128, 128, 128,   0, 
6603           0,   0,   0,   0,   0,   0,   0,   0, 
6604           0,   0,   0,   0,   0,   0,   0,   0, 
6605           0,   0,   0,   0,   0,   0,   0,   0, 
6606           0, 128, 128, 128, 128, 128, 128,   0, 
6607           0,   0,   0,   0,   0,   0,   0,   0, 
6608           0,   0,   0,   0,   0,   0,   0,   0, 
6609           0,   0,   0,   0,   0,   0,   0,   0, 
6610           0,   0,   0,   0,   0,   0,   0,   0, 
6611           0,   0,   0,   0,   0,   0,   0,   0, 
6612           0,   0,   0,   0,   0,   0,   0,   0, 
6613           0,   0,   0,   0,   0,   0,   0,   0, 
6614           0,   0,   0,   0,   0,   0,   0,   0, 
6615           0,   0,   0,   0,   0,   0,   0,   0, 
6616           0,   0,   0,   0,   0,   0,   0,   0, 
6617           0,   0,   0,   0,   0,   0,   0,   0, 
6618           0,   0,   0,   0,   0,   0,   0,   0, 
6619           0,   0,   0,   0,   0,   0,   0,   0, 
6620           0,   0,   0,   0,   0,   0,   0,   0, 
6621           0,   0,   0,   0,   0,   0,   0,   0, 
6622           0,   0,   0,   0,   0,   0,   0,   0, 
6623           0,   0,   0,   0,   0,   0,   0,   0, 
6624           0,   0,   0,   0,   0,   0,   0,   0, 
6625           0,   0,   0,   0,   0,   0,   0,   0, 
6626     };
6627     if ((YYLIMIT - YYCURSOR) < 4) YYFILL(4);
6628     yych = *YYCURSOR;
6629     if (yych <= '/') {
6630         if (yych == '.') goto yy1020;
6631     } else {
6632         if (yych <= '0') goto yy1021;
6633         if (yych <= '9') goto yy1023;
6634     }
6635     ++YYCURSOR;
6636 yy1019:
6637 #line 479 "strict_cpp.re"
6638     { BOOST_ASSERT(false); }
6639 #line 6640 "strict_cpp_re.inc"
6640 yy1020:
6641     yych = *++YYCURSOR;
6642     if (yych <= '/') goto yy1019;
6643     if (yych <= '9') goto yy1025;
6644     goto yy1019;
6645 yy1021:
6646     yyaccept = 0;
6647     yych = *(YYMARKER = ++YYCURSOR);
6648     if (yych == 'X') goto yy1034;
6649     if (yych == 'x') goto yy1034;
6650     goto yy1029;
6651 yy1022:
6652 #line 477 "strict_cpp.re"
6653     { goto integer_suffix; }
6654 #line 6655 "strict_cpp_re.inc"
6655 yy1023:
6656     yyaccept = 0;
6657     YYMARKER = ++YYCURSOR;
6658     if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3);
6659     yych = *YYCURSOR;
6660     if (yybm[0+yych] & 32) {
6661         goto yy1023;
6662     }
6663     if (yych <= 'D') {
6664         if (yych != '.') goto yy1022;
6665     } else {
6666         if (yych <= 'E') goto yy1033;
6667         if (yych == 'e') goto yy1033;
6668         goto yy1022;
6669     }
6670 yy1025:
6671     yyaccept = 1;
6672     YYMARKER = ++YYCURSOR;
6673     if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3);
6674     yych = *YYCURSOR;
6675     if (yych <= 'K') {
6676         if (yych <= 'D') {
6677             if (yych <= '/') goto yy1027;
6678             if (yych <= '9') goto yy1025;
6679         } else {
6680             if (yych <= 'E') goto yy1033;
6681             if (yych <= 'F') goto yy1035;
6682         }
6683     } else {
6684         if (yych <= 'e') {
6685             if (yych <= 'L') goto yy1036;
6686             if (yych >= 'e') goto yy1033;
6687         } else {
6688             if (yych <= 'f') goto yy1035;
6689             if (yych == 'l') goto yy1036;
6690         }
6691     }
6692 yy1027:
6693 #line 475 "strict_cpp.re"
6694     { BOOST_WAVE_RET(T_FLOATLIT); }
6695 #line 6696 "strict_cpp_re.inc"
6696 yy1028:
6697     yyaccept = 0;
6698     YYMARKER = ++YYCURSOR;
6699     if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3);
6700     yych = *YYCURSOR;
6701 yy1029:
6702     if (yybm[0+yych] & 64) {
6703         goto yy1028;
6704     }
6705     if (yych <= '9') {
6706         if (yych == '.') goto yy1025;
6707         if (yych <= '/') goto yy1022;
6708     } else {
6709         if (yych <= 'E') {
6710             if (yych <= 'D') goto yy1022;
6711             goto yy1033;
6712         } else {
6713             if (yych == 'e') goto yy1033;
6714             goto yy1022;
6715         }
6716     }
6717 yy1030:
6718     ++YYCURSOR;
6719     if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3);
6720     yych = *YYCURSOR;
6721     if (yych <= '9') {
6722         if (yych == '.') goto yy1025;
6723         if (yych >= '0') goto yy1030;
6724     } else {
6725         if (yych <= 'E') {
6726             if (yych >= 'E') goto yy1033;
6727         } else {
6728             if (yych == 'e') goto yy1033;
6729         }
6730     }
6731 yy1032:
6732     YYCURSOR = YYMARKER;
6733     if (yyaccept == 0) {
6734         goto yy1022;
6735     } else {
6736         goto yy1027;
6737     }
6738 yy1033:
6739     yych = *++YYCURSOR;
6740     if (yych <= ',') {
6741         if (yych == '+') goto yy1037;
6742         goto yy1032;
6743     } else {
6744         if (yych <= '-') goto yy1037;
6745         if (yych <= '/') goto yy1032;
6746         if (yych <= '9') goto yy1038;
6747         goto yy1032;
6748     }
6749 yy1034:
6750     yych = *++YYCURSOR;
6751     if (yybm[0+yych] & 128) {
6752         goto yy1040;
6753     }
6754     goto yy1032;
6755 yy1035:
6756     yych = *++YYCURSOR;
6757     if (yych == 'L') goto yy1042;
6758     if (yych == 'l') goto yy1042;
6759     goto yy1027;
6760 yy1036:
6761     yych = *++YYCURSOR;
6762     if (yych == 'F') goto yy1042;
6763     if (yych == 'f') goto yy1042;
6764     goto yy1027;
6765 yy1037:
6766     yych = *++YYCURSOR;
6767     if (yych <= '/') goto yy1032;
6768     if (yych >= ':') goto yy1032;
6769 yy1038:
6770     ++YYCURSOR;
6771     if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
6772     yych = *YYCURSOR;
6773     if (yych <= 'K') {
6774         if (yych <= '9') {
6775             if (yych <= '/') goto yy1027;
6776             goto yy1038;
6777         } else {
6778             if (yych == 'F') goto yy1035;
6779             goto yy1027;
6780         }
6781     } else {
6782         if (yych <= 'f') {
6783             if (yych <= 'L') goto yy1036;
6784             if (yych <= 'e') goto yy1027;
6785             goto yy1035;
6786         } else {
6787             if (yych == 'l') goto yy1036;
6788             goto yy1027;
6789         }
6790     }
6791 yy1040:
6792     ++YYCURSOR;
6793     if (YYLIMIT <= YYCURSOR) YYFILL(1);
6794     yych = *YYCURSOR;
6795     if (yybm[0+yych] & 128) {
6796         goto yy1040;
6797     }
6798     goto yy1022;
6799 yy1042:
6800     ++YYCURSOR;
6801     goto yy1027;
6802 }
6803 #line 480 "strict_cpp.re"
6804 
6805     }
6806 }
6807 
6808 /* this subscanner is called, whenever an Integer was recognized */
6809 integer_suffix:
6810 {
6811     if (s->enable_ms_extensions) {
6812     
6813 #line 6814 "strict_cpp_re.inc"
6814 {
6815     YYCTYPE yych;
6816     if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3);
6817     yych = *(YYMARKER = YYCURSOR);
6818     if (yych <= 'h') {
6819         if (yych <= 'L') {
6820             if (yych >= 'L') goto yy1046;
6821         } else {
6822             if (yych == 'U') goto yy1047;
6823         }
6824     } else {
6825         if (yych <= 'l') {
6826             if (yych <= 'i') goto yy1048;
6827             if (yych >= 'l') goto yy1050;
6828         } else {
6829             if (yych == 'u') goto yy1047;
6830         }
6831     }
6832 yy1045:
6833 #line 493 "strict_cpp.re"
6834     { BOOST_WAVE_RET(T_INTLIT); }
6835 #line 6836 "strict_cpp_re.inc"
6836 yy1046:
6837     yych = *++YYCURSOR;
6838     if (yych <= 'T') {
6839         if (yych == 'L') goto yy1051;
6840         goto yy1045;
6841     } else {
6842         if (yych <= 'U') goto yy1053;
6843         if (yych == 'u') goto yy1053;
6844         goto yy1045;
6845     }
6846 yy1047:
6847     yych = *++YYCURSOR;
6848     if (yych == 'L') goto yy1054;
6849     if (yych == 'l') goto yy1055;
6850     goto yy1045;
6851 yy1048:
6852     yych = *++YYCURSOR;
6853     if (yych == '6') goto yy1056;
6854 yy1049:
6855     YYCURSOR = YYMARKER;
6856     goto yy1045;
6857 yy1050:
6858     yych = *++YYCURSOR;
6859     if (yych <= 'k') {
6860         if (yych == 'U') goto yy1053;
6861         goto yy1045;
6862     } else {
6863         if (yych <= 'l') goto yy1051;
6864         if (yych == 'u') goto yy1053;
6865         goto yy1045;
6866     }
6867 yy1051:
6868     yych = *++YYCURSOR;
6869     if (yych == 'U') goto yy1057;
6870     if (yych == 'u') goto yy1057;
6871 yy1052:
6872 #line 490 "strict_cpp.re"
6873     { BOOST_WAVE_RET(T_LONGINTLIT); }
6874 #line 6875 "strict_cpp_re.inc"
6875 yy1053:
6876     ++YYCURSOR;
6877     goto yy1045;
6878 yy1054:
6879     yych = *++YYCURSOR;
6880     if (yych == 'L') goto yy1057;
6881     goto yy1045;
6882 yy1055:
6883     yych = *++YYCURSOR;
6884     if (yych == 'l') goto yy1057;
6885     goto yy1045;
6886 yy1056:
6887     yych = *++YYCURSOR;
6888     if (yych != '4') goto yy1049;
6889 yy1057:
6890     ++YYCURSOR;
6891     goto yy1052;
6892 }
6893 #line 494 "strict_cpp.re"
6894 
6895     }
6896     else {
6897     
6898 #line 6899 "strict_cpp_re.inc"
6899 {
6900     YYCTYPE yych;
6901     if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3);
6902     yych = *YYCURSOR;
6903     if (yych <= 'U') {
6904         if (yych == 'L') goto yy1061;
6905         if (yych >= 'U') goto yy1062;
6906     } else {
6907         if (yych <= 'l') {
6908             if (yych >= 'l') goto yy1063;
6909         } else {
6910             if (yych == 'u') goto yy1062;
6911         }
6912     }
6913 yy1060:
6914 #line 502 "strict_cpp.re"
6915     { BOOST_WAVE_RET(T_INTLIT); }
6916 #line 6917 "strict_cpp_re.inc"
6917 yy1061:
6918     yych = *++YYCURSOR;
6919     if (yych <= 'T') {
6920         if (yych == 'L') goto yy1064;
6921         goto yy1060;
6922     } else {
6923         if (yych <= 'U') goto yy1066;
6924         if (yych == 'u') goto yy1066;
6925         goto yy1060;
6926     }
6927 yy1062:
6928     yych = *++YYCURSOR;
6929     if (yych == 'L') goto yy1067;
6930     if (yych == 'l') goto yy1068;
6931     goto yy1060;
6932 yy1063:
6933     yych = *++YYCURSOR;
6934     if (yych <= 'k') {
6935         if (yych == 'U') goto yy1066;
6936         goto yy1060;
6937     } else {
6938         if (yych <= 'l') goto yy1064;
6939         if (yych == 'u') goto yy1066;
6940         goto yy1060;
6941     }
6942 yy1064:
6943     yych = *++YYCURSOR;
6944     if (yych == 'U') goto yy1069;
6945     if (yych == 'u') goto yy1069;
6946 yy1065:
6947 #line 499 "strict_cpp.re"
6948     { BOOST_WAVE_RET(T_LONGINTLIT); }
6949 #line 6950 "strict_cpp_re.inc"
6950 yy1066:
6951     ++YYCURSOR;
6952     goto yy1060;
6953 yy1067:
6954     yych = *++YYCURSOR;
6955     if (yych == 'L') goto yy1069;
6956     goto yy1060;
6957 yy1068:
6958     yych = *++YYCURSOR;
6959     if (yych != 'l') goto yy1060;
6960 yy1069:
6961     ++YYCURSOR;
6962     goto yy1065;
6963 }
6964 #line 503 "strict_cpp.re"
6965 
6966     }
6967 
6968     // re2c will complain about -Wmatch-empty-string above
6969     // it's OK because we've already matched an integer
6970     // and will return T_INTLIT
6971 }
6972 
6973 /* this subscanner is invoked for C++0x extended character literals */
6974 extcharlit:
6975 {
6976     
6977 #line 6978 "strict_cpp_re.inc"
6978 {
6979     YYCTYPE yych;
6980     static const unsigned char yybm[] = {
6981           0,   0,   0,   0,   0,   0,   0,   0, 
6982           0,   0,   0,   0,   0,   0,   0,   0, 
6983           0,   0,   0,   0,   0,   0,   0,   0, 
6984           0,   0,   0,   0,   0,   0,   0,   0, 
6985           0,   0,   0,   0,   0,   0,   0,   0, 
6986           0,   0,   0,   0,   0,   0,   0,   0, 
6987         128, 128, 128, 128, 128, 128, 128, 128, 
6988         128, 128,   0,   0,   0,   0,   0,   0, 
6989           0, 128, 128, 128, 128, 128, 128,   0, 
6990           0,   0,   0,   0,   0,   0,   0,   0, 
6991           0,   0,   0,   0,   0,   0,   0,   0, 
6992           0,   0,   0,   0,   0,   0,   0,   0, 
6993           0, 128, 128, 128, 128, 128, 128,   0, 
6994           0,   0,   0,   0,   0,   0,   0,   0, 
6995           0,   0,   0,   0,   0,   0,   0,   0, 
6996           0,   0,   0,   0,   0,   0,   0,   0, 
6997           0,   0,   0,   0,   0,   0,   0,   0, 
6998           0,   0,   0,   0,   0,   0,   0,   0, 
6999           0,   0,   0,   0,   0,   0,   0,   0, 
7000           0,   0,   0,   0,   0,   0,   0,   0, 
7001           0,   0,   0,   0,   0,   0,   0,   0, 
7002           0,   0,   0,   0,   0,   0,   0,   0, 
7003           0,   0,   0,   0,   0,   0,   0,   0, 
7004           0,   0,   0,   0,   0,   0,   0,   0, 
7005           0,   0,   0,   0,   0,   0,   0,   0, 
7006           0,   0,   0,   0,   0,   0,   0,   0, 
7007           0,   0,   0,   0,   0,   0,   0,   0, 
7008           0,   0,   0,   0,   0,   0,   0,   0, 
7009           0,   0,   0,   0,   0,   0,   0,   0, 
7010           0,   0,   0,   0,   0,   0,   0,   0, 
7011           0,   0,   0,   0,   0,   0,   0,   0, 
7012           0,   0,   0,   0,   0,   0,   0,   0, 
7013     };
7014     if ((YYLIMIT - YYCURSOR) < 13) YYFILL(13);
7015     yych = *YYCURSOR;
7016     if (yych <= 0x1F) {
7017         if (yych <= '\n') {
7018             if (yych <= 0x08) goto yy1072;
7019             if (yych <= '\t') goto yy1074;
7020             goto yy1076;
7021         } else {
7022             if (yych <= '\f') goto yy1074;
7023             if (yych <= '\r') goto yy1076;
7024         }
7025     } else {
7026         if (yych <= '>') {
7027             if (yych == '\'') goto yy1076;
7028             goto yy1074;
7029         } else {
7030             if (yych <= '?') goto yy1077;
7031             if (yych == '\\') goto yy1078;
7032             goto yy1074;
7033         }
7034     }
7035 yy1072:
7036     ++YYCURSOR;
7037 #line 515 "strict_cpp.re"
7038     {
7039             (*s->error_proc)(s, lexing_exception::generic_lexing_error,
7040                 "Invalid character in raw string delimiter ('%c')", yych);
7041         }
7042 #line 7043 "strict_cpp_re.inc"
7043 yy1074:
7044     yych = *++YYCURSOR;
7045     if (yych == '\'') goto yy1079;
7046 yy1075:
7047 #line 524 "strict_cpp.re"
7048     { BOOST_WAVE_RET(TOKEN_FROM_ID(*s->tok, UnknownTokenType)); }
7049 #line 7050 "strict_cpp_re.inc"
7050 yy1076:
7051     ++YYCURSOR;
7052     goto yy1075;
7053 yy1077:
7054     yych = *(YYMARKER = ++YYCURSOR);
7055     if (yych == '\'') goto yy1079;
7056     if (yych == '?') goto yy1081;
7057     goto yy1075;
7058 yy1078:
7059     yych = *(YYMARKER = ++YYCURSOR);
7060     if (yych <= '`') {
7061         if (yych <= '7') {
7062             if (yych <= '&') {
7063                 if (yych == '"') goto yy1083;
7064                 goto yy1075;
7065             } else {
7066                 if (yych <= '\'') goto yy1083;
7067                 if (yych <= '/') goto yy1075;
7068                 goto yy1084;
7069             }
7070         } else {
7071             if (yych <= 'T') {
7072                 if (yych == '?') goto yy1085;
7073                 goto yy1075;
7074             } else {
7075                 if (yych <= 'U') goto yy1086;
7076                 if (yych == '\\') goto yy1083;
7077                 goto yy1075;
7078             }
7079         }
7080     } else {
7081         if (yych <= 'r') {
7082             if (yych <= 'f') {
7083                 if (yych <= 'b') goto yy1083;
7084                 if (yych <= 'e') goto yy1075;
7085                 goto yy1083;
7086             } else {
7087                 if (yych == 'n') goto yy1083;
7088                 if (yych <= 'q') goto yy1075;
7089                 goto yy1083;
7090             }
7091         } else {
7092             if (yych <= 'u') {
7093                 if (yych <= 's') goto yy1075;
7094                 if (yych <= 't') goto yy1083;
7095                 goto yy1087;
7096             } else {
7097                 if (yych <= 'v') goto yy1083;
7098                 if (yych == 'x') goto yy1088;
7099                 goto yy1075;
7100             }
7101         }
7102     }
7103 yy1079:
7104     ++YYCURSOR;
7105 #line 521 "strict_cpp.re"
7106     { BOOST_WAVE_RET(T_CHARLIT); }
7107 #line 7108 "strict_cpp_re.inc"
7108 yy1081:
7109     yych = *++YYCURSOR;
7110     if (yych == '/') goto yy1089;
7111 yy1082:
7112     YYCURSOR = YYMARKER;
7113     goto yy1075;
7114 yy1083:
7115     yych = *++YYCURSOR;
7116     if (yych == '\'') goto yy1079;
7117     goto yy1082;
7118 yy1084:
7119     yych = *++YYCURSOR;
7120     if (yych == '\'') goto yy1079;
7121     if (yych <= '/') goto yy1082;
7122     if (yych <= '7') goto yy1090;
7123     goto yy1082;
7124 yy1085:
7125     yych = *++YYCURSOR;
7126     if (yych == '\'') goto yy1079;
7127     if (yych == '?') goto yy1091;
7128     goto yy1082;
7129 yy1086:
7130     yych = *++YYCURSOR;
7131     if (yych <= '@') {
7132         if (yych <= '/') goto yy1082;
7133         if (yych <= '9') goto yy1092;
7134         goto yy1082;
7135     } else {
7136         if (yych <= 'F') goto yy1092;
7137         if (yych <= '`') goto yy1082;
7138         if (yych <= 'f') goto yy1092;
7139         goto yy1082;
7140     }
7141 yy1087:
7142     yych = *++YYCURSOR;
7143     if (yych <= '@') {
7144         if (yych <= '/') goto yy1082;
7145         if (yych <= '9') goto yy1093;
7146         goto yy1082;
7147     } else {
7148         if (yych <= 'F') goto yy1093;
7149         if (yych <= '`') goto yy1082;
7150         if (yych <= 'f') goto yy1093;
7151         goto yy1082;
7152     }
7153 yy1088:
7154     yych = *++YYCURSOR;
7155     if (yych == '\'') goto yy1082;
7156     goto yy1095;
7157 yy1089:
7158     yych = *++YYCURSOR;
7159     if (yych <= '`') {
7160         if (yych <= '7') {
7161             if (yych <= '&') {
7162                 if (yych == '"') goto yy1083;
7163                 goto yy1082;
7164             } else {
7165                 if (yych <= '\'') goto yy1083;
7166                 if (yych <= '/') goto yy1082;
7167                 goto yy1084;
7168             }
7169         } else {
7170             if (yych <= 'T') {
7171                 if (yych == '?') goto yy1085;
7172                 goto yy1082;
7173             } else {
7174                 if (yych <= 'U') goto yy1086;
7175                 if (yych == '\\') goto yy1083;
7176                 goto yy1082;
7177             }
7178         }
7179     } else {
7180         if (yych <= 'r') {
7181             if (yych <= 'f') {
7182                 if (yych <= 'b') goto yy1083;
7183                 if (yych <= 'e') goto yy1082;
7184                 goto yy1083;
7185             } else {
7186                 if (yych == 'n') goto yy1083;
7187                 if (yych <= 'q') goto yy1082;
7188                 goto yy1083;
7189             }
7190         } else {
7191             if (yych <= 'u') {
7192                 if (yych <= 's') goto yy1082;
7193                 if (yych <= 't') goto yy1083;
7194                 goto yy1087;
7195             } else {
7196                 if (yych <= 'v') goto yy1083;
7197                 if (yych == 'x') goto yy1088;
7198                 goto yy1082;
7199             }
7200         }
7201     }
7202 yy1090:
7203     yych = *++YYCURSOR;
7204     if (yych == '\'') goto yy1079;
7205     if (yych <= '/') goto yy1082;
7206     if (yych <= '7') goto yy1083;
7207     goto yy1082;
7208 yy1091:
7209     yych = *++YYCURSOR;
7210     if (yych == '/') goto yy1083;
7211     goto yy1082;
7212 yy1092:
7213     yych = *++YYCURSOR;
7214     if (yych <= '@') {
7215         if (yych <= '/') goto yy1082;
7216         if (yych <= '9') goto yy1096;
7217         goto yy1082;
7218     } else {
7219         if (yych <= 'F') goto yy1096;
7220         if (yych <= '`') goto yy1082;
7221         if (yych <= 'f') goto yy1096;
7222         goto yy1082;
7223     }
7224 yy1093:
7225     yych = *++YYCURSOR;
7226     if (yych <= '@') {
7227         if (yych <= '/') goto yy1082;
7228         if (yych <= '9') goto yy1097;
7229         goto yy1082;
7230     } else {
7231         if (yych <= 'F') goto yy1097;
7232         if (yych <= '`') goto yy1082;
7233         if (yych <= 'f') goto yy1097;
7234         goto yy1082;
7235     }
7236 yy1094:
7237     ++YYCURSOR;
7238     if (YYLIMIT <= YYCURSOR) YYFILL(1);
7239     yych = *YYCURSOR;
7240 yy1095:
7241     if (yybm[0+yych] & 128) {
7242         goto yy1094;
7243     }
7244     if (yych == '\'') goto yy1079;
7245     goto yy1082;
7246 yy1096:
7247     yych = *++YYCURSOR;
7248     if (yych <= '@') {
7249         if (yych <= '/') goto yy1082;
7250         if (yych <= '9') goto yy1098;
7251         goto yy1082;
7252     } else {
7253         if (yych <= 'F') goto yy1098;
7254         if (yych <= '`') goto yy1082;
7255         if (yych <= 'f') goto yy1098;
7256         goto yy1082;
7257     }
7258 yy1097:
7259     yych = *++YYCURSOR;
7260     if (yych <= '@') {
7261         if (yych <= '/') goto yy1082;
7262         if (yych <= '9') goto yy1099;
7263         goto yy1082;
7264     } else {
7265         if (yych <= 'F') goto yy1099;
7266         if (yych <= '`') goto yy1082;
7267         if (yych <= 'f') goto yy1099;
7268         goto yy1082;
7269     }
7270 yy1098:
7271     yych = *++YYCURSOR;
7272     if (yych <= '@') {
7273         if (yych <= '/') goto yy1082;
7274         if (yych <= '9') goto yy1087;
7275         goto yy1082;
7276     } else {
7277         if (yych <= 'F') goto yy1087;
7278         if (yych <= '`') goto yy1082;
7279         if (yych <= 'f') goto yy1087;
7280         goto yy1082;
7281     }
7282 yy1099:
7283     yych = *++YYCURSOR;
7284     if (yych <= '@') {
7285         if (yych <= '/') goto yy1082;
7286         if (yych <= '9') goto yy1083;
7287         goto yy1082;
7288     } else {
7289         if (yych <= 'F') goto yy1083;
7290         if (yych <= '`') goto yy1082;
7291         if (yych <= 'f') goto yy1083;
7292         goto yy1082;
7293     }
7294 }
7295 #line 525 "strict_cpp.re"
7296 
7297 }
7298 
7299 /* this subscanner is invoked for C++0x extended character string literals */
7300 extstringlit:
7301 {
7302     
7303 #line 7304 "strict_cpp_re.inc"
7304 {
7305     YYCTYPE yych;
7306     unsigned int yyaccept = 0;
7307     static const unsigned char yybm[] = {
7308           0,   0,   0,   0,   0,   0,   0,   0, 
7309           0,  32,   0,  32,  32,   0,   0,   0, 
7310           0,   0,   0,   0,   0,   0,   0,   0, 
7311           0,   0,   0,   0,   0,   0,   0,   0, 
7312          32,  32,   0,  32,  32,  32,  32,  32, 
7313          32,  32,  32,  32,  32,  32,  32,  32, 
7314          32,  32,  32,  32,  32,  32,  32,  32, 
7315          32,  32,  32,  32,  32,  32,  32,  64, 
7316          32,  32,  32,  32,  32,  32,  32,  32, 
7317          32,  32,  32,  32,  32,  32,  32,  32, 
7318          32,  32,  32,  32,  32,  32,  32,  32, 
7319          32,  32,  32,  32, 128,  32,  32,  32, 
7320          32,  32,  32,  32,  32,  32,  32,  32, 
7321          32,  32,  32,  32,  32,  32,  32,  32, 
7322          32,  32,  32,  32,  32,  32,  32,  32, 
7323          32,  32,  32,  32,  32,  32,  32,  32, 
7324          32,  32,  32,  32,  32,  32,  32,  32, 
7325          32,  32,  32,  32,  32,  32,  32,  32, 
7326          32,  32,  32,  32,  32,  32,  32,  32, 
7327          32,  32,  32,  32,  32,  32,  32,  32, 
7328          32,  32,  32,  32,  32,  32,  32,  32, 
7329          32,  32,  32,  32,  32,  32,  32,  32, 
7330          32,  32,  32,  32,  32,  32,  32,  32, 
7331          32,  32,  32,  32,  32,  32,  32,  32, 
7332          32,  32,  32,  32,  32,  32,  32,  32, 
7333          32,  32,  32,  32,  32,  32,  32,  32, 
7334          32,  32,  32,  32,  32,  32,  32,  32, 
7335          32,  32,  32,  32,  32,  32,  32,  32, 
7336          32,  32,  32,  32,  32,  32,  32,  32, 
7337          32,  32,  32,  32,  32,  32,  32,  32, 
7338          32,  32,  32,  32,  32,  32,  32,  32, 
7339          32,  32,  32,  32,  32,  32,  32,  32, 
7340     };
7341     if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
7342     yych = *YYCURSOR;
7343     if (yych <= 0x1F) {
7344         if (yych <= '\n') {
7345             if (yych <= 0x08) goto yy1102;
7346             if (yych <= '\t') goto yy1104;
7347             goto yy1106;
7348         } else {
7349             if (yych <= '\f') goto yy1104;
7350             if (yych <= '\r') goto yy1106;
7351         }
7352     } else {
7353         if (yych <= '>') {
7354             if (yych == '"') goto yy1107;
7355             goto yy1104;
7356         } else {
7357             if (yych <= '?') goto yy1109;
7358             if (yych == '\\') goto yy1110;
7359             goto yy1104;
7360         }
7361     }
7362 yy1102:
7363     ++YYCURSOR;
7364 #line 532 "strict_cpp.re"
7365     {
7366             (*s->error_proc)(s, lexing_exception::generic_lexing_error,
7367                 "Invalid character in raw string delimiter ('%c')", yych);
7368         }
7369 #line 7370 "strict_cpp_re.inc"
7370 yy1104:
7371     yyaccept = 0;
7372     yych = *(YYMARKER = ++YYCURSOR);
7373     if (yych <= '\n') {
7374         if (yych == '\t') goto yy1112;
7375     } else {
7376         if (yych <= '\f') goto yy1112;
7377         if (yych >= ' ') goto yy1112;
7378     }
7379 yy1105:
7380 #line 541 "strict_cpp.re"
7381     { BOOST_WAVE_RET(TOKEN_FROM_ID(*s->tok, UnknownTokenType)); }
7382 #line 7383 "strict_cpp_re.inc"
7383 yy1106:
7384     ++YYCURSOR;
7385     goto yy1105;
7386 yy1107:
7387     ++YYCURSOR;
7388 yy1108:
7389 #line 538 "strict_cpp.re"
7390     { BOOST_WAVE_RET(T_STRINGLIT); }
7391 #line 7392 "strict_cpp_re.inc"
7392 yy1109:
7393     yyaccept = 0;
7394     yych = *(YYMARKER = ++YYCURSOR);
7395     if (yybm[0+yych] & 64) {
7396         goto yy1116;
7397     }
7398     if (yych <= '\n') {
7399         if (yych == '\t') goto yy1112;
7400         goto yy1105;
7401     } else {
7402         if (yych <= '\f') goto yy1112;
7403         if (yych <= 0x1F) goto yy1105;
7404         goto yy1112;
7405     }
7406 yy1110:
7407     yyaccept = 0;
7408     yych = *(YYMARKER = ++YYCURSOR);
7409     if (yych <= '`') {
7410         if (yych <= '7') {
7411             if (yych <= '&') {
7412                 if (yych != '"') goto yy1105;
7413             } else {
7414                 if (yych <= '\'') goto yy1111;
7415                 if (yych <= '/') goto yy1105;
7416             }
7417         } else {
7418             if (yych <= 'T') {
7419                 if (yych != '?') goto yy1105;
7420             } else {
7421                 if (yych <= 'U') goto yy1118;
7422                 if (yych != '\\') goto yy1105;
7423             }
7424         }
7425     } else {
7426         if (yych <= 'r') {
7427             if (yych <= 'f') {
7428                 if (yych <= 'b') goto yy1111;
7429                 if (yych <= 'e') goto yy1105;
7430             } else {
7431                 if (yych == 'n') goto yy1111;
7432                 if (yych <= 'q') goto yy1105;
7433             }
7434         } else {
7435             if (yych <= 'u') {
7436                 if (yych <= 's') goto yy1105;
7437                 if (yych >= 'u') goto yy1119;
7438             } else {
7439                 if (yych <= 'v') goto yy1111;
7440                 if (yych == 'x') goto yy1120;
7441                 goto yy1105;
7442             }
7443         }
7444     }
7445 yy1111:
7446     ++YYCURSOR;
7447     if (YYLIMIT <= YYCURSOR) YYFILL(1);
7448     yych = *YYCURSOR;
7449 yy1112:
7450     if (yybm[0+yych] & 32) {
7451         goto yy1111;
7452     }
7453     if (yych <= 0x1F) goto yy1113;
7454     if (yych <= '"') goto yy1107;
7455     if (yych <= '?') goto yy1114;
7456     goto yy1115;
7457 yy1113:
7458     YYCURSOR = YYMARKER;
7459     if (yyaccept == 0) {
7460         goto yy1105;
7461     } else {
7462         goto yy1108;
7463     }
7464 yy1114:
7465     ++YYCURSOR;
7466     if (YYLIMIT <= YYCURSOR) YYFILL(1);
7467     yych = *YYCURSOR;
7468     if (yybm[0+yych] & 32) {
7469         goto yy1111;
7470     }
7471     if (yych <= 0x1F) goto yy1113;
7472     if (yych <= '"') goto yy1107;
7473     if (yych <= '?') goto yy1116;
7474 yy1115:
7475     ++YYCURSOR;
7476     if (YYLIMIT <= YYCURSOR) YYFILL(1);
7477     yych = *YYCURSOR;
7478     if (yych <= '`') {
7479         if (yych <= '7') {
7480             if (yych <= '&') {
7481                 if (yych == '"') goto yy1111;
7482                 goto yy1113;
7483             } else {
7484                 if (yych <= '\'') goto yy1111;
7485                 if (yych <= '/') goto yy1113;
7486                 goto yy1111;
7487             }
7488         } else {
7489             if (yych <= 'T') {
7490                 if (yych == '?') goto yy1111;
7491                 goto yy1113;
7492             } else {
7493                 if (yych <= 'U') goto yy1118;
7494                 if (yych == '\\') goto yy1111;
7495                 goto yy1113;
7496             }
7497         }
7498     } else {
7499         if (yych <= 'r') {
7500             if (yych <= 'f') {
7501                 if (yych <= 'b') goto yy1111;
7502                 if (yych <= 'e') goto yy1113;
7503                 goto yy1111;
7504             } else {
7505                 if (yych == 'n') goto yy1111;
7506                 if (yych <= 'q') goto yy1113;
7507                 goto yy1111;
7508             }
7509         } else {
7510             if (yych <= 'u') {
7511                 if (yych <= 's') goto yy1113;
7512                 if (yych <= 't') goto yy1111;
7513                 goto yy1119;
7514             } else {
7515                 if (yych <= 'v') goto yy1111;
7516                 if (yych == 'x') goto yy1120;
7517                 goto yy1113;
7518             }
7519         }
7520     }
7521 yy1116:
7522     ++YYCURSOR;
7523     if (YYLIMIT <= YYCURSOR) YYFILL(1);
7524     yych = *YYCURSOR;
7525     if (yybm[0+yych] & 64) {
7526         goto yy1116;
7527     }
7528     if (yych <= '!') {
7529         if (yych <= '\n') {
7530             if (yych == '\t') goto yy1111;
7531             goto yy1113;
7532         } else {
7533             if (yych <= '\f') goto yy1111;
7534             if (yych <= 0x1F) goto yy1113;
7535             goto yy1111;
7536         }
7537     } else {
7538         if (yych <= '/') {
7539             if (yych <= '"') goto yy1107;
7540             if (yych <= '.') goto yy1111;
7541             goto yy1121;
7542         } else {
7543             if (yych == '\\') goto yy1115;
7544             goto yy1111;
7545         }
7546     }
7547 yy1118:
7548     ++YYCURSOR;
7549     if (YYLIMIT <= YYCURSOR) YYFILL(1);
7550     yych = *YYCURSOR;
7551     if (yych <= '@') {
7552         if (yych <= '/') goto yy1113;
7553         if (yych <= '9') goto yy1123;
7554         goto yy1113;
7555     } else {
7556         if (yych <= 'F') goto yy1123;
7557         if (yych <= '`') goto yy1113;
7558         if (yych <= 'f') goto yy1123;
7559         goto yy1113;
7560     }
7561 yy1119:
7562     ++YYCURSOR;
7563     if (YYLIMIT <= YYCURSOR) YYFILL(1);
7564     yych = *YYCURSOR;
7565     if (yych <= '@') {
7566         if (yych <= '/') goto yy1113;
7567         if (yych <= '9') goto yy1124;
7568         goto yy1113;
7569     } else {
7570         if (yych <= 'F') goto yy1124;
7571         if (yych <= '`') goto yy1113;
7572         if (yych <= 'f') goto yy1124;
7573         goto yy1113;
7574     }
7575 yy1120:
7576     ++YYCURSOR;
7577     if (YYLIMIT <= YYCURSOR) YYFILL(1);
7578     yych = *YYCURSOR;
7579     if (yych <= '@') {
7580         if (yych <= '/') goto yy1113;
7581         if (yych <= '9') goto yy1111;
7582         goto yy1113;
7583     } else {
7584         if (yych <= 'F') goto yy1111;
7585         if (yych <= '`') goto yy1113;
7586         if (yych <= 'f') goto yy1111;
7587         goto yy1113;
7588     }
7589 yy1121:
7590     ++YYCURSOR;
7591     if (YYLIMIT <= YYCURSOR) YYFILL(1);
7592     yych = *YYCURSOR;
7593     if (yybm[0+yych] & 32) {
7594         goto yy1111;
7595     }
7596     if (yych <= 0x1F) goto yy1113;
7597     if (yych <= '"') goto yy1125;
7598     if (yych <= '?') goto yy1114;
7599     goto yy1121;
7600 yy1123:
7601     ++YYCURSOR;
7602     if (YYLIMIT <= YYCURSOR) YYFILL(1);
7603     yych = *YYCURSOR;
7604     if (yych <= '@') {
7605         if (yych <= '/') goto yy1113;
7606         if (yych <= '9') goto yy1126;
7607         goto yy1113;
7608     } else {
7609         if (yych <= 'F') goto yy1126;
7610         if (yych <= '`') goto yy1113;
7611         if (yych <= 'f') goto yy1126;
7612         goto yy1113;
7613     }
7614 yy1124:
7615     ++YYCURSOR;
7616     if (YYLIMIT <= YYCURSOR) YYFILL(1);
7617     yych = *YYCURSOR;
7618     if (yych <= '@') {
7619         if (yych <= '/') goto yy1113;
7620         if (yych <= '9') goto yy1127;
7621         goto yy1113;
7622     } else {
7623         if (yych <= 'F') goto yy1127;
7624         if (yych <= '`') goto yy1113;
7625         if (yych <= 'f') goto yy1127;
7626         goto yy1113;
7627     }
7628 yy1125:
7629     yyaccept = 1;
7630     YYMARKER = ++YYCURSOR;
7631     if (YYLIMIT <= YYCURSOR) YYFILL(1);
7632     yych = *YYCURSOR;
7633     if (yybm[0+yych] & 32) {
7634         goto yy1111;
7635     }
7636     if (yych <= 0x1F) goto yy1108;
7637     if (yych <= '"') goto yy1107;
7638     if (yych <= '?') goto yy1114;
7639     goto yy1115;
7640 yy1126:
7641     ++YYCURSOR;
7642     if (YYLIMIT <= YYCURSOR) YYFILL(1);
7643     yych = *YYCURSOR;
7644     if (yych <= '@') {
7645         if (yych <= '/') goto yy1113;
7646         if (yych <= '9') goto yy1128;
7647         goto yy1113;
7648     } else {
7649         if (yych <= 'F') goto yy1128;
7650         if (yych <= '`') goto yy1113;
7651         if (yych <= 'f') goto yy1128;
7652         goto yy1113;
7653     }
7654 yy1127:
7655     ++YYCURSOR;
7656     if (YYLIMIT <= YYCURSOR) YYFILL(1);
7657     yych = *YYCURSOR;
7658     if (yych <= '@') {
7659         if (yych <= '/') goto yy1113;
7660         if (yych <= '9') goto yy1120;
7661         goto yy1113;
7662     } else {
7663         if (yych <= 'F') goto yy1120;
7664         if (yych <= '`') goto yy1113;
7665         if (yych <= 'f') goto yy1120;
7666         goto yy1113;
7667     }
7668 yy1128:
7669     ++YYCURSOR;
7670     if (YYLIMIT <= YYCURSOR) YYFILL(1);
7671     yych = *YYCURSOR;
7672     if (yych <= '@') {
7673         if (yych <= '/') goto yy1113;
7674         if (yych <= '9') goto yy1119;
7675         goto yy1113;
7676     } else {
7677         if (yych <= 'F') goto yy1119;
7678         if (yych <= '`') goto yy1113;
7679         if (yych <= 'f') goto yy1119;
7680         goto yy1113;
7681     }
7682 }
7683 #line 542 "strict_cpp.re"
7684 
7685 }
7686 
7687 extrawstringlit:
7688 {
7689     // we have consumed the double quote but not the lparen
7690     // at this point we may see a delimiter
7691 
7692     
7693 #line 7694 "strict_cpp_re.inc"
7694 {
7695     YYCTYPE yych;
7696     if (YYLIMIT <= YYCURSOR) YYFILL(1);
7697     yych = *YYCURSOR;
7698     if (yych <= '(') {
7699         if (yych <= 0x1F) goto yy1131;
7700         if (yych <= '\'') goto yy1133;
7701         goto yy1135;
7702     } else {
7703         if (yych <= ')') goto yy1131;
7704         if (yych != '\\') goto yy1133;
7705     }
7706 yy1131:
7707     ++YYCURSOR;
7708 #line 551 "strict_cpp.re"
7709     {
7710             (*s->error_proc)(s, lexing_exception::generic_lexing_error,
7711                 "Invalid character in raw string delimiter ('%c')", yych);
7712         }
7713 #line 7714 "strict_cpp_re.inc"
7714 yy1133:
7715     ++YYCURSOR;
7716 #line 558 "strict_cpp.re"
7717     {
7718             rawstringdelim += yych;
7719             if (rawstringdelim.size() > 16)
7720             {
7721                 (*s->error_proc)(s, lexing_exception::generic_lexing_error,
7722                     "Raw string delimiter of excessive length (\"%s\") in input stream",
7723                     rawstringdelim.c_str());
7724             }
7725             goto extrawstringlit;
7726         }
7727 #line 7728 "strict_cpp_re.inc"
7728 yy1135:
7729     ++YYCURSOR;
7730 #line 570 "strict_cpp.re"
7731     {
7732             rawstringdelim = ")" + rawstringdelim;
7733             goto extrawstringbody;
7734         }
7735 #line 7736 "strict_cpp_re.inc"
7736 }
7737 #line 575 "strict_cpp.re"
7738 
7739 }
7740 
7741 extrawstringbody:
7742 {
7743     
7744 #line 7745 "strict_cpp_re.inc"
7745 {
7746     YYCTYPE yych;
7747     static const unsigned char yybm[] = {
7748           0,   0,   0,   0,   0,   0,   0,   0, 
7749           0,   0,   0,   0,   0,   0,   0,   0, 
7750           0,   0,   0,   0,   0,   0,   0,   0, 
7751           0,   0,   0,   0,   0,   0,   0,   0, 
7752           0,   0,   0,   0,   0,   0,   0,   0, 
7753           0,   0,   0,   0,   0,   0,   0,   0, 
7754         128, 128, 128, 128, 128, 128, 128, 128, 
7755         128, 128,   0,   0,   0,   0,   0,   0, 
7756           0, 128, 128, 128, 128, 128, 128,   0, 
7757           0,   0,   0,   0,   0,   0,   0,   0, 
7758           0,   0,   0,   0,   0,   0,   0,   0, 
7759           0,   0,   0,   0,   0,   0,   0,   0, 
7760           0, 128, 128, 128, 128, 128, 128,   0, 
7761           0,   0,   0,   0,   0,   0,   0,   0, 
7762           0,   0,   0,   0,   0,   0,   0,   0, 
7763           0,   0,   0,   0,   0,   0,   0,   0, 
7764           0,   0,   0,   0,   0,   0,   0,   0, 
7765           0,   0,   0,   0,   0,   0,   0,   0, 
7766           0,   0,   0,   0,   0,   0,   0,   0, 
7767           0,   0,   0,   0,   0,   0,   0,   0, 
7768           0,   0,   0,   0,   0,   0,   0,   0, 
7769           0,   0,   0,   0,   0,   0,   0,   0, 
7770           0,   0,   0,   0,   0,   0,   0,   0, 
7771           0,   0,   0,   0,   0,   0,   0,   0, 
7772           0,   0,   0,   0,   0,   0,   0,   0, 
7773           0,   0,   0,   0,   0,   0,   0,   0, 
7774           0,   0,   0,   0,   0,   0,   0,   0, 
7775           0,   0,   0,   0,   0,   0,   0,   0, 
7776           0,   0,   0,   0,   0,   0,   0,   0, 
7777           0,   0,   0,   0,   0,   0,   0,   0, 
7778           0,   0,   0,   0,   0,   0,   0,   0, 
7779           0,   0,   0,   0,   0,   0,   0,   0, 
7780     };
7781     if ((YYLIMIT - YYCURSOR) < 12) YYFILL(12);
7782     yych = *YYCURSOR;
7783     if (yych <= 0x1F) {
7784         if (yych <= '\n') {
7785             if (yych <= 0x08) goto yy1139;
7786             if (yych <= '\t') goto yy1141;
7787             goto yy1143;
7788         } else {
7789             if (yych <= '\f') goto yy1141;
7790             if (yych <= '\r') goto yy1145;
7791         }
7792     } else {
7793         if (yych <= '>') {
7794             if (yych == '"') goto yy1146;
7795             goto yy1141;
7796         } else {
7797             if (yych <= '?') goto yy1148;
7798             if (yych == '\\') goto yy1149;
7799             goto yy1141;
7800         }
7801     }
7802 yy1139:
7803     ++YYCURSOR;
7804 #line 582 "strict_cpp.re"
7805     {
7806             (*s->error_proc)(s, lexing_exception::generic_lexing_error,
7807                 "Invalid character in raw string body ('%c')", yych);
7808         }
7809 #line 7810 "strict_cpp_re.inc"
7810 yy1141:
7811     ++YYCURSOR;
7812 yy1142:
7813 #line 595 "strict_cpp.re"
7814     {
7815             goto extrawstringbody;
7816         }
7817 #line 7818 "strict_cpp_re.inc"
7818 yy1143:
7819     ++YYCURSOR;
7820 yy1144:
7821 #line 588 "strict_cpp.re"
7822     {
7823             s->line += count_backslash_newlines(s, cursor) +1;
7824             cursor.column = 1;
7825             goto extrawstringbody;
7826         }
7827 #line 7828 "strict_cpp_re.inc"
7828 yy1145:
7829     yych = *++YYCURSOR;
7830     if (yych == '\n') goto yy1143;
7831     goto yy1144;
7832 yy1146:
7833     ++YYCURSOR;
7834 #line 600 "strict_cpp.re"
7835     {
7836             // check to see if we have completed a delimiter
7837             if (string_type((char *)(YYCURSOR - rawstringdelim.size() - 1),
7838                              (char *)(YYCURSOR - 1)) == rawstringdelim)
7839             {
7840                  BOOST_WAVE_RET(T_RAWSTRINGLIT);
7841             } else {
7842                 goto extrawstringbody;
7843             }
7844         }
7845 #line 7846 "strict_cpp_re.inc"
7846 yy1148:
7847     yych = *(YYMARKER = ++YYCURSOR);
7848     if (yych == '?') goto yy1150;
7849     goto yy1142;
7850 yy1149:
7851     yych = *(YYMARKER = ++YYCURSOR);
7852     if (yych <= '`') {
7853         if (yych <= '7') {
7854             if (yych <= '&') {
7855                 if (yych == '"') goto yy1141;
7856                 goto yy1142;
7857             } else {
7858                 if (yych <= '\'') goto yy1141;
7859                 if (yych <= '/') goto yy1142;
7860                 goto yy1152;
7861             }
7862         } else {
7863             if (yych <= 'T') {
7864                 if (yych == '?') goto yy1153;
7865                 goto yy1142;
7866             } else {
7867                 if (yych <= 'U') goto yy1154;
7868                 if (yych == '\\') goto yy1141;
7869                 goto yy1142;
7870             }
7871         }
7872     } else {
7873         if (yych <= 'r') {
7874             if (yych <= 'f') {
7875                 if (yych <= 'b') goto yy1141;
7876                 if (yych <= 'e') goto yy1142;
7877                 goto yy1141;
7878             } else {
7879                 if (yych == 'n') goto yy1141;
7880                 if (yych <= 'q') goto yy1142;
7881                 goto yy1141;
7882             }
7883         } else {
7884             if (yych <= 'u') {
7885                 if (yych <= 's') goto yy1142;
7886                 if (yych <= 't') goto yy1141;
7887                 goto yy1155;
7888             } else {
7889                 if (yych <= 'v') goto yy1141;
7890                 if (yych == 'x') goto yy1156;
7891                 goto yy1142;
7892             }
7893         }
7894     }
7895 yy1150:
7896     yych = *++YYCURSOR;
7897     if (yych == '/') goto yy1157;
7898 yy1151:
7899     YYCURSOR = YYMARKER;
7900     goto yy1142;
7901 yy1152:
7902     yych = *++YYCURSOR;
7903     if (yych <= '/') goto yy1142;
7904     if (yych <= '7') goto yy1158;
7905     goto yy1142;
7906 yy1153:
7907     yych = *(YYMARKER = ++YYCURSOR);
7908     if (yych == '?') goto yy1159;
7909     goto yy1142;
7910 yy1154:
7911     yych = *++YYCURSOR;
7912     if (yych <= '@') {
7913         if (yych <= '/') goto yy1151;
7914         if (yych <= '9') goto yy1160;
7915         goto yy1151;
7916     } else {
7917         if (yych <= 'F') goto yy1160;
7918         if (yych <= '`') goto yy1151;
7919         if (yych <= 'f') goto yy1160;
7920         goto yy1151;
7921     }
7922 yy1155:
7923     yych = *++YYCURSOR;
7924     if (yych <= '@') {
7925         if (yych <= '/') goto yy1151;
7926         if (yych <= '9') goto yy1161;
7927         goto yy1151;
7928     } else {
7929         if (yych <= 'F') goto yy1161;
7930         if (yych <= '`') goto yy1151;
7931         if (yych <= 'f') goto yy1161;
7932         goto yy1151;
7933     }
7934 yy1156:
7935     yych = *++YYCURSOR;
7936     if (yybm[0+yych] & 128) {
7937         goto yy1162;
7938     }
7939     goto yy1151;
7940 yy1157:
7941     yych = *++YYCURSOR;
7942     if (yych <= '`') {
7943         if (yych <= '7') {
7944             if (yych <= '&') {
7945                 if (yych == '"') goto yy1141;
7946                 goto yy1151;
7947             } else {
7948                 if (yych <= '\'') goto yy1141;
7949                 if (yych <= '/') goto yy1151;
7950                 goto yy1152;
7951             }
7952         } else {
7953             if (yych <= 'T') {
7954                 if (yych == '?') goto yy1153;
7955                 goto yy1151;
7956             } else {
7957                 if (yych <= 'U') goto yy1154;
7958                 if (yych == '\\') goto yy1141;
7959                 goto yy1151;
7960             }
7961         }
7962     } else {
7963         if (yych <= 'r') {
7964             if (yych <= 'f') {
7965                 if (yych <= 'b') goto yy1141;
7966                 if (yych <= 'e') goto yy1151;
7967                 goto yy1141;
7968             } else {
7969                 if (yych == 'n') goto yy1141;
7970                 if (yych <= 'q') goto yy1151;
7971                 goto yy1141;
7972             }
7973         } else {
7974             if (yych <= 'u') {
7975                 if (yych <= 's') goto yy1151;
7976                 if (yych <= 't') goto yy1141;
7977                 goto yy1155;
7978             } else {
7979                 if (yych <= 'v') goto yy1141;
7980                 if (yych == 'x') goto yy1156;
7981                 goto yy1151;
7982             }
7983         }
7984     }
7985 yy1158:
7986     yych = *++YYCURSOR;
7987     if (yych <= '/') goto yy1142;
7988     if (yych <= '7') goto yy1141;
7989     goto yy1142;
7990 yy1159:
7991     yych = *++YYCURSOR;
7992     if (yych == '/') goto yy1141;
7993     goto yy1151;
7994 yy1160:
7995     yych = *++YYCURSOR;
7996     if (yych <= '@') {
7997         if (yych <= '/') goto yy1151;
7998         if (yych <= '9') goto yy1164;
7999         goto yy1151;
8000     } else {
8001         if (yych <= 'F') goto yy1164;
8002         if (yych <= '`') goto yy1151;
8003         if (yych <= 'f') goto yy1164;
8004         goto yy1151;
8005     }
8006 yy1161:
8007     yych = *++YYCURSOR;
8008     if (yych <= '@') {
8009         if (yych <= '/') goto yy1151;
8010         if (yych <= '9') goto yy1165;
8011         goto yy1151;
8012     } else {
8013         if (yych <= 'F') goto yy1165;
8014         if (yych <= '`') goto yy1151;
8015         if (yych <= 'f') goto yy1165;
8016         goto yy1151;
8017     }
8018 yy1162:
8019     ++YYCURSOR;
8020     if (YYLIMIT <= YYCURSOR) YYFILL(1);
8021     yych = *YYCURSOR;
8022     if (yybm[0+yych] & 128) {
8023         goto yy1162;
8024     }
8025     goto yy1142;
8026 yy1164:
8027     yych = *++YYCURSOR;
8028     if (yych <= '@') {
8029         if (yych <= '/') goto yy1151;
8030         if (yych <= '9') goto yy1166;
8031         goto yy1151;
8032     } else {
8033         if (yych <= 'F') goto yy1166;
8034         if (yych <= '`') goto yy1151;
8035         if (yych <= 'f') goto yy1166;
8036         goto yy1151;
8037     }
8038 yy1165:
8039     yych = *++YYCURSOR;
8040     if (yych <= '@') {
8041         if (yych <= '/') goto yy1151;
8042         if (yych <= '9') goto yy1167;
8043         goto yy1151;
8044     } else {
8045         if (yych <= 'F') goto yy1167;
8046         if (yych <= '`') goto yy1151;
8047         if (yych <= 'f') goto yy1167;
8048         goto yy1151;
8049     }
8050 yy1166:
8051     yych = *++YYCURSOR;
8052     if (yych <= '@') {
8053         if (yych <= '/') goto yy1151;
8054         if (yych <= '9') goto yy1155;
8055         goto yy1151;
8056     } else {
8057         if (yych <= 'F') goto yy1155;
8058         if (yych <= '`') goto yy1151;
8059         if (yych <= 'f') goto yy1155;
8060         goto yy1151;
8061     }
8062 yy1167:
8063     yych = *++YYCURSOR;
8064     if (yych <= '@') {
8065         if (yych <= '/') goto yy1151;
8066         if (yych <= '9') goto yy1141;
8067         goto yy1151;
8068     } else {
8069         if (yych <= 'F') goto yy1141;
8070         if (yych <= '`') goto yy1151;
8071         if (yych <= 'f') goto yy1141;
8072         goto yy1151;
8073     }
8074 }
8075 #line 610 "strict_cpp.re"
8076 
8077 }