summaryrefslogtreecommitdiff
path: root/boost/wave/cpplexer/re2clex/cpp_re.inc
diff options
context:
space:
mode:
Diffstat (limited to 'boost/wave/cpplexer/re2clex/cpp_re.inc')
-rw-r--r--boost/wave/cpplexer/re2clex/cpp_re.inc7749
1 files changed, 7749 insertions, 0 deletions
diff --git a/boost/wave/cpplexer/re2clex/cpp_re.inc b/boost/wave/cpplexer/re2clex/cpp_re.inc
new file mode 100644
index 0000000000..57a4a5cb88
--- /dev/null
+++ b/boost/wave/cpplexer/re2clex/cpp_re.inc
@@ -0,0 +1,7749 @@
+/* Generated by re2c 1.0.2 on Mon Nov 27 19:11:24 2017 */
+#line 1 "cpp.re"
+/*=============================================================================
+ Boost.Wave: A Standard compliant C++ preprocessor library
+
+ Copyright (c) 2001 Daniel C. Nuffer
+ Copyright (c) 2001-2013 Hartmut Kaiser.
+ Distributed under the Boost Software License, Version 1.0. (See accompanying
+ file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+
+ This is a lexer conforming to the Standard with a few exceptions.
+ So it does allow the '$' to be part of identifiers. If you need strict
+ Standards conforming behaviour, please include the lexer definition
+ provided in the file strict_cpp.re.
+
+ TODO:
+ handle errors better.
+=============================================================================*/
+
+#line 41 "cpp.re"
+
+
+
+#line 25 "cpp_re.inc"
+{
+ YYCTYPE yych;
+ unsigned int yyaccept = 0;
+ static const unsigned char yybm[] = {
+ /* table 1 .. 8: 0 */
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 203, 8, 203, 203, 8, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 203, 203, 138, 203, 203, 203, 203, 201,
+ 203, 203, 227, 203, 203, 203, 203, 203,
+ 203, 203, 203, 203, 203, 203, 203, 203,
+ 203, 203, 203, 203, 203, 203, 75, 204,
+ 203, 203, 203, 203, 203, 203, 203, 203,
+ 203, 203, 203, 203, 203, 203, 203, 203,
+ 203, 203, 203, 203, 203, 203, 203, 203,
+ 203, 203, 203, 203, 216, 203, 203, 203,
+ 203, 203, 203, 203, 203, 203, 203, 203,
+ 203, 203, 203, 203, 203, 203, 203, 203,
+ 203, 203, 203, 203, 203, 203, 203, 203,
+ 203, 203, 203, 203, 203, 203, 203, 203,
+ 203, 203, 203, 203, 203, 203, 203, 203,
+ 203, 203, 203, 203, 203, 203, 203, 203,
+ 203, 203, 203, 203, 203, 203, 203, 203,
+ 203, 203, 203, 203, 203, 203, 203, 203,
+ 203, 203, 203, 203, 203, 203, 203, 203,
+ 203, 203, 203, 203, 203, 203, 203, 203,
+ 203, 203, 203, 203, 203, 203, 203, 203,
+ 203, 203, 203, 203, 203, 203, 203, 203,
+ 203, 203, 203, 203, 203, 203, 203, 203,
+ 203, 203, 203, 203, 203, 203, 203, 203,
+ 203, 203, 203, 203, 203, 203, 203, 203,
+ 203, 203, 203, 203, 203, 203, 203, 203,
+ 203, 203, 203, 203, 203, 203, 203, 203,
+ 203, 203, 203, 203, 203, 203, 203, 203,
+ 203, 203, 203, 203, 203, 203, 203, 203,
+ 203, 203, 203, 203, 203, 203, 203, 203,
+ /* table 9 .. 10: 256 */
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 64, 0, 64, 64, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 64, 0, 0, 0, 128, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 0, 0, 0, 0, 0, 0,
+ 0, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 0, 0, 0, 0, 128,
+ 0, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ };
+ if ((YYLIMIT - YYCURSOR) < 17) YYFILL(17);
+ yych = *YYCURSOR;
+ if (yybm[256+yych] & 64) {
+ goto yy6;
+ }
+ switch (yych) {
+ case 0x00: goto yy2;
+ case 0x01:
+ case 0x02:
+ case 0x03:
+ case 0x04:
+ case 0x05:
+ case 0x06:
+ case 0x07:
+ case 0x08:
+ case 0x0E:
+ case 0x0F:
+ case 0x10:
+ case 0x11:
+ case 0x12:
+ case 0x13:
+ case 0x14:
+ case 0x15:
+ case 0x16:
+ case 0x17:
+ case 0x18:
+ case 0x19:
+ case 0x1A:
+ case 0x1B:
+ case 0x1C:
+ case 0x1D:
+ case 0x1E:
+ case 0x1F: goto yy4;
+ case '\t':
+ case '\n': goto yy9;
+ case '\v':
+ case '\f':
+ case '\r': goto yy11;
+ case ' ':
+ case '!': goto yy12;
+ case '"': goto yy14;
+ case '#': goto yy16;
+ case '$':
+ case 'A':
+ case 'B':
+ case 'C':
+ case 'D':
+ case 'E':
+ case 'F':
+ case 'G':
+ case 'H':
+ case 'I':
+ case 'J':
+ case 'K':
+ case 'M':
+ case 'N':
+ case 'O':
+ case 'P':
+ case 'Q':
+ case 'S':
+ case 'T':
+ case 'V':
+ case 'W':
+ case 'X':
+ case 'Y':
+ case 'Z':
+ case 'h':
+ case 'j':
+ case 'k':
+ case 'q':
+ case 'y':
+ case 'z': goto yy18;
+ case '%': goto yy21;
+ case '&': goto yy23;
+ case '\'': goto yy25;
+ case '(': goto yy26;
+ case ')': goto yy28;
+ case '*': goto yy30;
+ case '+': goto yy32;
+ case ',': goto yy34;
+ case '-': goto yy36;
+ case '.': goto yy38;
+ case '/': goto yy40;
+ case '0':
+ case '1':
+ case '2':
+ case '3':
+ case '4':
+ case '5':
+ case '6':
+ case '7':
+ case '8':
+ case '9': goto yy42;
+ case ':': goto yy44;
+ case ';': goto yy46;
+ case '<': goto yy48;
+ case '=': goto yy50;
+ case '>': goto yy52;
+ case '?': goto yy54;
+ case 'L': goto yy57;
+ case 'R': goto yy58;
+ case 'U': goto yy59;
+ case '[': goto yy60;
+ case '\\': goto yy62;
+ case ']': goto yy63;
+ case '^': goto yy65;
+ case '_': goto yy67;
+ case 'a': goto yy68;
+ case 'b': goto yy69;
+ case 'c': goto yy70;
+ case 'd': goto yy71;
+ case 'e': goto yy72;
+ case 'f': goto yy73;
+ case 'g': goto yy74;
+ case 'i': goto yy75;
+ case 'l': goto yy76;
+ case 'm': goto yy77;
+ case 'n': goto yy78;
+ case 'o': goto yy79;
+ case 'p': goto yy80;
+ case 'r': goto yy81;
+ case 's': goto yy82;
+ case 't': goto yy83;
+ case 'u': goto yy84;
+ case 'v': goto yy85;
+ case 'w': goto yy86;
+ case 'x': goto yy87;
+ case '{': goto yy88;
+ case '|': goto yy90;
+ case '}': goto yy92;
+ case '~': goto yy94;
+ default: goto yy56;
+ }
+yy2:
+ ++YYCURSOR;
+#line 336 "cpp.re"
+ {
+ if (s->eof && cursor != s->eof)
+ {
+ BOOST_WAVE_UPDATE_CURSOR(); // adjust the input cursor
+ (*s->error_proc)(s, lexing_exception::generic_lexing_error,
+ "invalid character '\\000' in input stream");
+ }
+ BOOST_WAVE_RET(T_EOF);
+ }
+#line 242 "cpp_re.inc"
+yy4:
+ ++YYCURSOR;
+#line 349 "cpp.re"
+ {
+ // flag the error
+ BOOST_WAVE_UPDATE_CURSOR(); // adjust the input cursor
+ (*s->error_proc)(s, lexing_exception::generic_lexing_error,
+ "invalid character '\\%03o' in input stream", *--YYCURSOR);
+ }
+#line 252 "cpp_re.inc"
+yy6:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yybm[256+yych] & 64) {
+ goto yy6;
+ }
+#line 326 "cpp.re"
+ { BOOST_WAVE_RET(T_SPACE); }
+#line 262 "cpp_re.inc"
+yy9:
+ ++YYCURSOR;
+yy10:
+#line 329 "cpp.re"
+ {
+ s->line++;
+ cursor.column = 1;
+ BOOST_WAVE_RET(T_NEWLINE);
+ }
+#line 272 "cpp_re.inc"
+yy11:
+ yych = *++YYCURSOR;
+ if (yych == '\n') goto yy9;
+ goto yy10;
+yy12:
+ yych = *++YYCURSOR;
+ if (yych == '=') goto yy96;
+#line 202 "cpp.re"
+ { BOOST_WAVE_RET(T_NOT); }
+#line 282 "cpp_re.inc"
+yy14:
+ yyaccept = 0;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy99;
+ } else {
+ if (yych <= '\f') goto yy99;
+ if (yych >= ' ') goto yy99;
+ }
+yy15:
+#line 346 "cpp.re"
+ { BOOST_WAVE_RET(TOKEN_FROM_ID(*s->tok, UnknownTokenType)); }
+#line 295 "cpp_re.inc"
+yy16:
+ yyaccept = 1;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= 'c') {
+ if (yych <= ' ') {
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy106;
+ } else {
+ if (yych <= '\f') goto yy106;
+ if (yych >= ' ') goto yy106;
+ }
+ } else {
+ if (yych <= '.') {
+ if (yych == '#') goto yy107;
+ } else {
+ if (yych <= '/') goto yy106;
+ if (yych == '?') goto yy110;
+ }
+ }
+ } else {
+ if (yych <= 'p') {
+ if (yych <= 'i') {
+ if (yych <= 'e') goto yy106;
+ if (yych >= 'i') goto yy106;
+ } else {
+ if (yych == 'l') goto yy106;
+ if (yych >= 'p') goto yy106;
+ }
+ } else {
+ if (yych <= 't') {
+ if (yych == 'r') goto yy106;
+ } else {
+ if (yych == 'v') goto yy17;
+ if (yych <= 'w') goto yy106;
+ }
+ }
+ }
+yy17:
+#line 151 "cpp.re"
+ { BOOST_WAVE_RET(T_POUND); }
+#line 336 "cpp_re.inc"
+yy18:
+ yyaccept = 2;
+ YYMARKER = ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+yy19:
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy20:
+#line 297 "cpp.re"
+ { BOOST_WAVE_RET(T_IDENTIFIER); }
+#line 351 "cpp_re.inc"
+yy21:
+ yych = *++YYCURSOR;
+ if (yych <= '<') {
+ if (yych == ':') goto yy121;
+ } else {
+ if (yych <= '=') goto yy123;
+ if (yych <= '>') goto yy125;
+ }
+#line 190 "cpp.re"
+ { BOOST_WAVE_RET(T_PERCENT); }
+#line 362 "cpp_re.inc"
+yy23:
+ yych = *++YYCURSOR;
+ if (yych == '&') goto yy127;
+ if (yych == '=') goto yy129;
+#line 194 "cpp.re"
+ { BOOST_WAVE_RET(T_AND); }
+#line 369 "cpp_re.inc"
+yy25:
+ yyaccept = 0;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy132;
+ if (yych <= '\n') goto yy15;
+ goto yy132;
+ } else {
+ if (yych <= 0x1F) goto yy15;
+ if (yych == '\'') goto yy15;
+ goto yy132;
+ }
+yy26:
+ ++YYCURSOR;
+#line 159 "cpp.re"
+ { BOOST_WAVE_RET(T_LEFTPAREN); }
+#line 386 "cpp_re.inc"
+yy28:
+ ++YYCURSOR;
+#line 160 "cpp.re"
+ { BOOST_WAVE_RET(T_RIGHTPAREN); }
+#line 391 "cpp_re.inc"
+yy30:
+ yych = *++YYCURSOR;
+ if (yych == '=') goto yy135;
+#line 188 "cpp.re"
+ { BOOST_WAVE_RET(T_STAR); }
+#line 397 "cpp_re.inc"
+yy32:
+ yych = *++YYCURSOR;
+ if (yych == '+') goto yy137;
+ if (yych == '=') goto yy139;
+#line 186 "cpp.re"
+ { BOOST_WAVE_RET(T_PLUS); }
+#line 404 "cpp_re.inc"
+yy34:
+ ++YYCURSOR;
+#line 238 "cpp.re"
+ { BOOST_WAVE_RET(T_COMMA); }
+#line 409 "cpp_re.inc"
+yy36:
+ yych = *++YYCURSOR;
+ if (yych <= '<') {
+ if (yych == '-') goto yy141;
+ } else {
+ if (yych <= '=') goto yy143;
+ if (yych <= '>') goto yy145;
+ }
+#line 187 "cpp.re"
+ { BOOST_WAVE_RET(T_MINUS); }
+#line 420 "cpp_re.inc"
+yy38:
+ yyaccept = 3;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '-') {
+ if (yych == '*') goto yy147;
+ } else {
+ if (yych <= '.') goto yy149;
+ if (yych <= '/') goto yy39;
+ if (yych <= '9') goto yy42;
+ }
+yy39:
+#line 175 "cpp.re"
+ { BOOST_WAVE_RET(T_DOT); }
+#line 434 "cpp_re.inc"
+yy40:
+ yych = *++YYCURSOR;
+ if (yych <= '.') {
+ if (yych == '*') goto yy150;
+ } else {
+ if (yych <= '/') goto yy152;
+ if (yych == '=') goto yy154;
+ }
+#line 189 "cpp.re"
+ { BOOST_WAVE_RET(T_DIVIDE); }
+#line 445 "cpp_re.inc"
+yy42:
+ ++YYCURSOR;
+#line 46 "cpp.re"
+ { goto pp_number; }
+#line 450 "cpp_re.inc"
+yy44:
+ yych = *++YYCURSOR;
+ if (yych == ':') goto yy156;
+ if (yych == '>') goto yy158;
+#line 162 "cpp.re"
+ { BOOST_WAVE_RET(T_COLON); }
+#line 457 "cpp_re.inc"
+yy46:
+ ++YYCURSOR;
+#line 161 "cpp.re"
+ { BOOST_WAVE_RET(T_SEMICOLON); }
+#line 462 "cpp_re.inc"
+yy48:
+ yych = *++YYCURSOR;
+ if (yych <= ':') {
+ if (yych == '%') goto yy160;
+ if (yych >= ':') goto yy162;
+ } else {
+ if (yych <= ';') goto yy49;
+ if (yych <= '<') goto yy164;
+ if (yych <= '=') goto yy166;
+ }
+yy49:
+#line 205 "cpp.re"
+ { BOOST_WAVE_RET(T_LESS); }
+#line 476 "cpp_re.inc"
+yy50:
+ yych = *++YYCURSOR;
+ if (yych == '=') goto yy168;
+#line 204 "cpp.re"
+ { BOOST_WAVE_RET(T_ASSIGN); }
+#line 482 "cpp_re.inc"
+yy52:
+ yych = *++YYCURSOR;
+ if (yych <= '<') goto yy53;
+ if (yych <= '=') goto yy170;
+ if (yych <= '>') goto yy172;
+yy53:
+#line 206 "cpp.re"
+ { BOOST_WAVE_RET(T_GREATER); }
+#line 491 "cpp_re.inc"
+yy54:
+ yyaccept = 4;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == '?') goto yy174;
+yy55:
+#line 164 "cpp.re"
+ { BOOST_WAVE_RET(T_QUESTION_MARK); }
+#line 499 "cpp_re.inc"
+yy56:
+ ++YYCURSOR;
+ goto yy15;
+yy57:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '&') {
+ if (yych == '"') goto yy98;
+ goto yy19;
+ } else {
+ if (yych <= '\'') goto yy175;
+ if (yych != 'R') goto yy19;
+ }
+yy58:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == '"') goto yy176;
+ goto yy19;
+yy59:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '&') {
+ if (yych == '"') goto yy178;
+ goto yy19;
+ } else {
+ if (yych <= '\'') goto yy180;
+ if (yych == 'R') goto yy182;
+ goto yy19;
+ }
+yy60:
+ ++YYCURSOR;
+#line 145 "cpp.re"
+ { BOOST_WAVE_RET(T_LEFTBRACKET); }
+#line 533 "cpp_re.inc"
+yy62:
+ yyaccept = 0;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'U') goto yy183;
+ if (yych == 'u') goto yy184;
+ goto yy15;
+yy63:
+ ++YYCURSOR;
+#line 148 "cpp.re"
+ { BOOST_WAVE_RET(T_RIGHTBRACKET); }
+#line 544 "cpp_re.inc"
+yy65:
+ yych = *++YYCURSOR;
+ if (yych == '=') goto yy185;
+#line 191 "cpp.re"
+ { BOOST_WAVE_RET(T_XOR); }
+#line 550 "cpp_re.inc"
+yy67:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ switch (yych) {
+ case '_': goto yy187;
+ case 'a': goto yy188;
+ case 'b': goto yy189;
+ case 'c': goto yy190;
+ case 'd': goto yy191;
+ case 'f': goto yy192;
+ case 'i': goto yy193;
+ case 's': goto yy194;
+ default: goto yy19;
+ }
+yy68:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ switch (yych) {
+ case 'l': goto yy195;
+ case 'n': goto yy196;
+ case 's': goto yy197;
+ case 'u': goto yy198;
+ default: goto yy19;
+ }
+yy69:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= 'n') {
+ if (yych == 'i') goto yy199;
+ goto yy19;
+ } else {
+ if (yych <= 'o') goto yy200;
+ if (yych == 'r') goto yy201;
+ goto yy19;
+ }
+yy70:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ switch (yych) {
+ case 'a': goto yy202;
+ case 'h': goto yy203;
+ case 'l': goto yy204;
+ case 'o': goto yy205;
+ default: goto yy19;
+ }
+yy71:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= 'n') {
+ if (yych == 'e') goto yy206;
+ goto yy19;
+ } else {
+ if (yych <= 'o') goto yy207;
+ if (yych == 'y') goto yy209;
+ goto yy19;
+ }
+yy72:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= 'm') {
+ if (yych == 'l') goto yy210;
+ goto yy19;
+ } else {
+ if (yych <= 'n') goto yy211;
+ if (yych == 'x') goto yy212;
+ goto yy19;
+ }
+yy73:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ switch (yych) {
+ case 'a': goto yy213;
+ case 'l': goto yy214;
+ case 'o': goto yy215;
+ case 'r': goto yy216;
+ default: goto yy19;
+ }
+yy74:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'o') goto yy217;
+ goto yy19;
+yy75:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= 'l') {
+ if (yych == 'f') goto yy218;
+ goto yy19;
+ } else {
+ if (yych <= 'm') goto yy220;
+ if (yych <= 'n') goto yy221;
+ goto yy19;
+ }
+yy76:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'o') goto yy222;
+ goto yy19;
+yy77:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'u') goto yy223;
+ goto yy19;
+yy78:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ switch (yych) {
+ case 'a': goto yy224;
+ case 'e': goto yy225;
+ case 'o': goto yy226;
+ case 'u': goto yy227;
+ default: goto yy19;
+ }
+yy79:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'p') goto yy228;
+ if (yych == 'r') goto yy229;
+ goto yy19;
+yy80:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'r') goto yy231;
+ if (yych == 'u') goto yy232;
+ goto yy19;
+yy81:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy233;
+ goto yy19;
+yy82:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= 's') {
+ if (yych <= 'g') goto yy19;
+ if (yych <= 'h') goto yy234;
+ if (yych <= 'i') goto yy235;
+ goto yy19;
+ } else {
+ if (yych <= 't') goto yy236;
+ if (yych == 'w') goto yy237;
+ goto yy19;
+ }
+yy83:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ switch (yych) {
+ case 'e': goto yy238;
+ case 'h': goto yy239;
+ case 'r': goto yy240;
+ case 'y': goto yy241;
+ default: goto yy19;
+ }
+yy84:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '8') {
+ if (yych <= '&') {
+ if (yych == '"') goto yy178;
+ goto yy19;
+ } else {
+ if (yych <= '\'') goto yy180;
+ if (yych <= '7') goto yy19;
+ goto yy242;
+ }
+ } else {
+ if (yych <= 'm') {
+ if (yych == 'R') goto yy182;
+ goto yy19;
+ } else {
+ if (yych <= 'n') goto yy243;
+ if (yych == 's') goto yy244;
+ goto yy19;
+ }
+ }
+yy85:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'i') goto yy245;
+ if (yych == 'o') goto yy246;
+ goto yy19;
+yy86:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'c') goto yy247;
+ if (yych == 'h') goto yy248;
+ goto yy19;
+yy87:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'o') goto yy249;
+ goto yy19;
+yy88:
+ ++YYCURSOR;
+#line 139 "cpp.re"
+ { BOOST_WAVE_RET(T_LEFTBRACE); }
+#line 747 "cpp_re.inc"
+yy90:
+ yyaccept = 5;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '>') {
+ if (yych == '=') goto yy250;
+ } else {
+ if (yych <= '?') goto yy252;
+ if (yych == '|') goto yy253;
+ }
+yy91:
+#line 196 "cpp.re"
+ { BOOST_WAVE_RET(T_OR); }
+#line 760 "cpp_re.inc"
+yy92:
+ ++YYCURSOR;
+#line 142 "cpp.re"
+ { BOOST_WAVE_RET(T_RIGHTBRACE); }
+#line 765 "cpp_re.inc"
+yy94:
+ ++YYCURSOR;
+#line 199 "cpp.re"
+ { BOOST_WAVE_RET(T_COMPL); }
+#line 770 "cpp_re.inc"
+yy96:
+ ++YYCURSOR;
+#line 225 "cpp.re"
+ { BOOST_WAVE_RET(T_NOTEQUAL); }
+#line 775 "cpp_re.inc"
+yy98:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+yy99:
+ if (yybm[0+yych] & 1) {
+ goto yy98;
+ }
+ if (yych <= 0x1F) goto yy100;
+ if (yych <= '"') goto yy101;
+ if (yych <= '?') goto yy103;
+ goto yy104;
+yy100:
+ YYCURSOR = YYMARKER;
+ if (yyaccept <= 56) {
+ if (yyaccept <= 28) {
+ if (yyaccept <= 14) {
+ if (yyaccept <= 7) {
+ if (yyaccept <= 3) {
+ if (yyaccept <= 1) {
+ if (yyaccept == 0) {
+ goto yy15;
+ } else {
+ goto yy17;
+ }
+ } else {
+ if (yyaccept == 2) {
+ goto yy20;
+ } else {
+ goto yy39;
+ }
+ }
+ } else {
+ if (yyaccept <= 5) {
+ if (yyaccept == 4) {
+ goto yy55;
+ } else {
+ goto yy91;
+ }
+ } else {
+ if (yyaccept == 6) {
+ goto yy122;
+ } else {
+ goto yy208;
+ }
+ }
+ }
+ } else {
+ if (yyaccept <= 11) {
+ if (yyaccept <= 9) {
+ if (yyaccept == 8) {
+ goto yy219;
+ } else {
+ goto yy230;
+ }
+ } else {
+ if (yyaccept == 10) {
+ goto yy268;
+ } else {
+ goto yy293;
+ }
+ }
+ } else {
+ if (yyaccept <= 13) {
+ if (yyaccept == 12) {
+ goto yy303;
+ } else {
+ goto yy307;
+ }
+ } else {
+ goto yy328;
+ }
+ }
+ }
+ } else {
+ if (yyaccept <= 21) {
+ if (yyaccept <= 18) {
+ if (yyaccept <= 16) {
+ if (yyaccept == 15) {
+ goto yy330;
+ } else {
+ goto yy353;
+ }
+ } else {
+ if (yyaccept == 17) {
+ goto yy359;
+ } else {
+ goto yy364;
+ }
+ }
+ } else {
+ if (yyaccept <= 20) {
+ if (yyaccept == 19) {
+ goto yy367;
+ } else {
+ goto yy388;
+ }
+ } else {
+ goto yy399;
+ }
+ }
+ } else {
+ if (yyaccept <= 25) {
+ if (yyaccept <= 23) {
+ if (yyaccept == 22) {
+ goto yy446;
+ } else {
+ goto yy456;
+ }
+ } else {
+ if (yyaccept == 24) {
+ goto yy460;
+ } else {
+ goto yy463;
+ }
+ }
+ } else {
+ if (yyaccept <= 27) {
+ if (yyaccept == 26) {
+ goto yy466;
+ } else {
+ goto yy477;
+ }
+ } else {
+ goto yy479;
+ }
+ }
+ }
+ }
+ } else {
+ if (yyaccept <= 42) {
+ if (yyaccept <= 35) {
+ if (yyaccept <= 32) {
+ if (yyaccept <= 30) {
+ if (yyaccept == 29) {
+ goto yy487;
+ } else {
+ goto yy491;
+ }
+ } else {
+ if (yyaccept == 31) {
+ goto yy513;
+ } else {
+ goto yy517;
+ }
+ }
+ } else {
+ if (yyaccept <= 34) {
+ if (yyaccept == 33) {
+ goto yy524;
+ } else {
+ goto yy102;
+ }
+ } else {
+ goto yy278;
+ }
+ }
+ } else {
+ if (yyaccept <= 39) {
+ if (yyaccept <= 37) {
+ if (yyaccept == 36) {
+ goto yy563;
+ } else {
+ goto yy574;
+ }
+ } else {
+ if (yyaccept == 38) {
+ goto yy576;
+ } else {
+ goto yy578;
+ }
+ }
+ } else {
+ if (yyaccept <= 41) {
+ if (yyaccept == 40) {
+ goto yy582;
+ } else {
+ goto yy584;
+ }
+ } else {
+ goto yy586;
+ }
+ }
+ }
+ } else {
+ if (yyaccept <= 49) {
+ if (yyaccept <= 46) {
+ if (yyaccept <= 44) {
+ if (yyaccept == 43) {
+ goto yy597;
+ } else {
+ goto yy599;
+ }
+ } else {
+ if (yyaccept == 45) {
+ goto yy610;
+ } else {
+ goto yy618;
+ }
+ }
+ } else {
+ if (yyaccept <= 48) {
+ if (yyaccept == 47) {
+ goto yy627;
+ } else {
+ goto yy632;
+ }
+ } else {
+ goto yy635;
+ }
+ }
+ } else {
+ if (yyaccept <= 53) {
+ if (yyaccept <= 51) {
+ if (yyaccept == 50) {
+ goto yy640;
+ } else {
+ goto yy669;
+ }
+ } else {
+ if (yyaccept == 52) {
+ goto yy672;
+ } else {
+ goto yy674;
+ }
+ }
+ } else {
+ if (yyaccept <= 55) {
+ if (yyaccept == 54) {
+ goto yy682;
+ } else {
+ goto yy684;
+ }
+ } else {
+ goto yy693;
+ }
+ }
+ }
+ }
+ }
+ } else {
+ if (yyaccept <= 85) {
+ if (yyaccept <= 71) {
+ if (yyaccept <= 64) {
+ if (yyaccept <= 60) {
+ if (yyaccept <= 58) {
+ if (yyaccept == 57) {
+ goto yy695;
+ } else {
+ goto yy699;
+ }
+ } else {
+ if (yyaccept == 59) {
+ goto yy701;
+ } else {
+ goto yy703;
+ }
+ }
+ } else {
+ if (yyaccept <= 62) {
+ if (yyaccept == 61) {
+ goto yy705;
+ } else {
+ goto yy707;
+ }
+ } else {
+ if (yyaccept == 63) {
+ goto yy712;
+ } else {
+ goto yy718;
+ }
+ }
+ }
+ } else {
+ if (yyaccept <= 68) {
+ if (yyaccept <= 66) {
+ if (yyaccept == 65) {
+ goto yy722;
+ } else {
+ goto yy724;
+ }
+ } else {
+ if (yyaccept == 67) {
+ goto yy726;
+ } else {
+ goto yy728;
+ }
+ }
+ } else {
+ if (yyaccept <= 70) {
+ if (yyaccept == 69) {
+ goto yy730;
+ } else {
+ goto yy732;
+ }
+ } else {
+ goto yy737;
+ }
+ }
+ }
+ } else {
+ if (yyaccept <= 78) {
+ if (yyaccept <= 75) {
+ if (yyaccept <= 73) {
+ if (yyaccept == 72) {
+ goto yy744;
+ } else {
+ goto yy759;
+ }
+ } else {
+ if (yyaccept == 74) {
+ goto yy761;
+ } else {
+ goto yy763;
+ }
+ }
+ } else {
+ if (yyaccept <= 77) {
+ if (yyaccept == 76) {
+ goto yy765;
+ } else {
+ goto yy769;
+ }
+ } else {
+ goto yy772;
+ }
+ }
+ } else {
+ if (yyaccept <= 82) {
+ if (yyaccept <= 80) {
+ if (yyaccept == 79) {
+ goto yy774;
+ } else {
+ goto yy782;
+ }
+ } else {
+ if (yyaccept == 81) {
+ goto yy786;
+ } else {
+ goto yy790;
+ }
+ }
+ } else {
+ if (yyaccept <= 84) {
+ if (yyaccept == 83) {
+ goto yy793;
+ } else {
+ goto yy801;
+ }
+ } else {
+ goto yy805;
+ }
+ }
+ }
+ }
+ } else {
+ if (yyaccept <= 99) {
+ if (yyaccept <= 92) {
+ if (yyaccept <= 89) {
+ if (yyaccept <= 87) {
+ if (yyaccept == 86) {
+ goto yy808;
+ } else {
+ goto yy811;
+ }
+ } else {
+ if (yyaccept == 88) {
+ goto yy815;
+ } else {
+ goto yy820;
+ }
+ }
+ } else {
+ if (yyaccept <= 91) {
+ if (yyaccept == 90) {
+ goto yy822;
+ } else {
+ goto yy824;
+ }
+ } else {
+ goto yy828;
+ }
+ }
+ } else {
+ if (yyaccept <= 96) {
+ if (yyaccept <= 94) {
+ if (yyaccept == 93) {
+ goto yy830;
+ } else {
+ goto yy833;
+ }
+ } else {
+ if (yyaccept == 95) {
+ goto yy836;
+ } else {
+ goto yy838;
+ }
+ }
+ } else {
+ if (yyaccept <= 98) {
+ if (yyaccept == 97) {
+ goto yy841;
+ } else {
+ goto yy846;
+ }
+ } else {
+ goto yy849;
+ }
+ }
+ }
+ } else {
+ if (yyaccept <= 106) {
+ if (yyaccept <= 103) {
+ if (yyaccept <= 101) {
+ if (yyaccept == 100) {
+ goto yy851;
+ } else {
+ goto yy853;
+ }
+ } else {
+ if (yyaccept == 102) {
+ goto yy862;
+ } else {
+ goto yy864;
+ }
+ }
+ } else {
+ if (yyaccept <= 105) {
+ if (yyaccept == 104) {
+ goto yy866;
+ } else {
+ goto yy869;
+ }
+ } else {
+ goto yy872;
+ }
+ }
+ } else {
+ if (yyaccept <= 110) {
+ if (yyaccept <= 108) {
+ if (yyaccept == 107) {
+ goto yy874;
+ } else {
+ goto yy889;
+ }
+ } else {
+ if (yyaccept == 109) {
+ goto yy906;
+ } else {
+ goto yy910;
+ }
+ }
+ } else {
+ if (yyaccept <= 112) {
+ if (yyaccept == 111) {
+ goto yy914;
+ } else {
+ goto yy917;
+ }
+ } else {
+ goto yy921;
+ }
+ }
+ }
+ }
+ }
+ }
+yy101:
+ ++YYCURSOR;
+yy102:
+#line 256 "cpp.re"
+ { BOOST_WAVE_RET(T_STRINGLIT); }
+#line 1248 "cpp_re.inc"
+yy103:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yybm[0+yych] & 1) {
+ goto yy98;
+ }
+ if (yych <= 0x1F) goto yy100;
+ if (yych <= '"') goto yy101;
+ if (yych <= '?') goto yy255;
+yy104:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '`') {
+ if (yych <= '7') {
+ if (yych <= '&') {
+ if (yych == '"') goto yy98;
+ goto yy100;
+ } else {
+ if (yych <= '\'') goto yy98;
+ if (yych <= '/') goto yy100;
+ goto yy98;
+ }
+ } else {
+ if (yych <= 'T') {
+ if (yych == '?') goto yy98;
+ goto yy100;
+ } else {
+ if (yych <= 'U') goto yy257;
+ if (yych == '\\') goto yy98;
+ goto yy100;
+ }
+ }
+ } else {
+ if (yych <= 'r') {
+ if (yych <= 'f') {
+ if (yych <= 'b') goto yy98;
+ if (yych <= 'e') goto yy100;
+ goto yy98;
+ } else {
+ if (yych == 'n') goto yy98;
+ if (yych <= 'q') goto yy100;
+ goto yy98;
+ }
+ } else {
+ if (yych <= 'u') {
+ if (yych <= 's') goto yy100;
+ if (yych <= 't') goto yy98;
+ goto yy258;
+ } else {
+ if (yych <= 'v') goto yy98;
+ if (yych == 'x') goto yy259;
+ goto yy100;
+ }
+ }
+ }
+yy105:
+ ++YYCURSOR;
+ if ((YYLIMIT - YYCURSOR) < 12) YYFILL(12);
+ yych = *YYCURSOR;
+yy106:
+ if (yych <= 'h') {
+ if (yych <= ' ') {
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy105;
+ goto yy100;
+ } else {
+ if (yych <= '\f') goto yy105;
+ if (yych <= 0x1F) goto yy100;
+ goto yy105;
+ }
+ } else {
+ if (yych <= 'c') {
+ if (yych == '/') goto yy109;
+ goto yy100;
+ } else {
+ if (yych <= 'd') goto yy111;
+ if (yych <= 'e') goto yy112;
+ goto yy100;
+ }
+ }
+ } else {
+ if (yych <= 'q') {
+ if (yych <= 'l') {
+ if (yych <= 'i') goto yy113;
+ if (yych <= 'k') goto yy100;
+ goto yy114;
+ } else {
+ if (yych == 'p') goto yy115;
+ goto yy100;
+ }
+ } else {
+ if (yych <= 'u') {
+ if (yych <= 'r') goto yy116;
+ if (yych <= 't') goto yy100;
+ goto yy117;
+ } else {
+ if (yych == 'w') goto yy118;
+ goto yy100;
+ }
+ }
+ }
+yy107:
+ ++YYCURSOR;
+#line 154 "cpp.re"
+ { BOOST_WAVE_RET(T_POUND_POUND); }
+#line 1356 "cpp_re.inc"
+yy109:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych == '*') goto yy260;
+ goto yy100;
+yy110:
+ yych = *++YYCURSOR;
+ if (yych == '?') goto yy262;
+ goto yy100;
+yy111:
+ yych = *++YYCURSOR;
+ if (yych == 'e') goto yy263;
+ goto yy100;
+yy112:
+ yych = *++YYCURSOR;
+ if (yych <= 'm') {
+ if (yych == 'l') goto yy264;
+ goto yy100;
+ } else {
+ if (yych <= 'n') goto yy265;
+ if (yych == 'r') goto yy266;
+ goto yy100;
+ }
+yy113:
+ yych = *++YYCURSOR;
+ if (yych == 'f') goto yy267;
+ if (yych == 'n') goto yy269;
+ goto yy100;
+yy114:
+ yych = *++YYCURSOR;
+ if (yych == 'i') goto yy270;
+ goto yy100;
+yy115:
+ yych = *++YYCURSOR;
+ if (yych == 'r') goto yy271;
+ goto yy100;
+yy116:
+ yych = *++YYCURSOR;
+ if (yych == 'e') goto yy272;
+ goto yy100;
+yy117:
+ yych = *++YYCURSOR;
+ if (yych == 'n') goto yy273;
+ goto yy100;
+yy118:
+ yych = *++YYCURSOR;
+ if (yych == 'a') goto yy274;
+ goto yy100;
+yy119:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych == '?') goto yy275;
+ goto yy100;
+yy120:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych == 'U') goto yy183;
+ if (yych == 'u') goto yy184;
+ goto yy100;
+yy121:
+ yyaccept = 6;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= 'e') {
+ if (yych <= ' ') {
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy106;
+ } else {
+ if (yych <= '\f') goto yy106;
+ if (yych >= ' ') goto yy106;
+ }
+ } else {
+ if (yych <= '.') {
+ if (yych == '%') goto yy276;
+ } else {
+ if (yych <= '/') goto yy106;
+ if (yych >= 'd') goto yy106;
+ }
+ }
+ } else {
+ if (yych <= 'p') {
+ if (yych <= 'k') {
+ if (yych == 'i') goto yy106;
+ } else {
+ if (yych <= 'l') goto yy106;
+ if (yych >= 'p') goto yy106;
+ }
+ } else {
+ if (yych <= 't') {
+ if (yych == 'r') goto yy106;
+ } else {
+ if (yych == 'v') goto yy122;
+ if (yych <= 'w') goto yy106;
+ }
+ }
+ }
+yy122:
+#line 152 "cpp.re"
+ { BOOST_WAVE_RET(T_POUND_ALT); }
+#line 1458 "cpp_re.inc"
+yy123:
+ ++YYCURSOR;
+#line 211 "cpp.re"
+ { BOOST_WAVE_RET(T_PERCENTASSIGN); }
+#line 1463 "cpp_re.inc"
+yy125:
+ ++YYCURSOR;
+#line 144 "cpp.re"
+ { BOOST_WAVE_RET(T_RIGHTBRACE_ALT); }
+#line 1468 "cpp_re.inc"
+yy127:
+ ++YYCURSOR;
+#line 229 "cpp.re"
+ { BOOST_WAVE_RET(T_ANDAND); }
+#line 1473 "cpp_re.inc"
+yy129:
+ ++YYCURSOR;
+#line 215 "cpp.re"
+ { BOOST_WAVE_RET(T_ANDASSIGN); }
+#line 1478 "cpp_re.inc"
+yy131:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+yy132:
+ if (yybm[0+yych] & 2) {
+ goto yy131;
+ }
+ if (yych <= 0x1F) goto yy100;
+ if (yych <= '\'') goto yy277;
+ if (yych >= '@') goto yy134;
+yy133:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yybm[0+yych] & 2) {
+ goto yy131;
+ }
+ if (yych <= 0x1F) goto yy100;
+ if (yych <= '\'') goto yy277;
+ if (yych <= '?') goto yy279;
+yy134:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '`') {
+ if (yych <= '7') {
+ if (yych <= '&') {
+ if (yych == '"') goto yy131;
+ goto yy100;
+ } else {
+ if (yych <= '\'') goto yy131;
+ if (yych <= '/') goto yy100;
+ goto yy131;
+ }
+ } else {
+ if (yych <= 'T') {
+ if (yych == '?') goto yy131;
+ goto yy100;
+ } else {
+ if (yych <= 'U') goto yy281;
+ if (yych == '\\') goto yy131;
+ goto yy100;
+ }
+ }
+ } else {
+ if (yych <= 'r') {
+ if (yych <= 'f') {
+ if (yych <= 'b') goto yy131;
+ if (yych <= 'e') goto yy100;
+ goto yy131;
+ } else {
+ if (yych == 'n') goto yy131;
+ if (yych <= 'q') goto yy100;
+ goto yy131;
+ }
+ } else {
+ if (yych <= 'u') {
+ if (yych <= 's') goto yy100;
+ if (yych <= 't') goto yy131;
+ goto yy282;
+ } else {
+ if (yych <= 'v') goto yy131;
+ if (yych == 'x') goto yy283;
+ goto yy100;
+ }
+ }
+ }
+yy135:
+ ++YYCURSOR;
+#line 209 "cpp.re"
+ { BOOST_WAVE_RET(T_STARASSIGN); }
+#line 1551 "cpp_re.inc"
+yy137:
+ ++YYCURSOR;
+#line 236 "cpp.re"
+ { BOOST_WAVE_RET(T_PLUSPLUS); }
+#line 1556 "cpp_re.inc"
+yy139:
+ ++YYCURSOR;
+#line 207 "cpp.re"
+ { BOOST_WAVE_RET(T_PLUSASSIGN); }
+#line 1561 "cpp_re.inc"
+yy141:
+ ++YYCURSOR;
+#line 237 "cpp.re"
+ { BOOST_WAVE_RET(T_MINUSMINUS); }
+#line 1566 "cpp_re.inc"
+yy143:
+ ++YYCURSOR;
+#line 208 "cpp.re"
+ { BOOST_WAVE_RET(T_MINUSASSIGN); }
+#line 1571 "cpp_re.inc"
+yy145:
+ yych = *++YYCURSOR;
+ if (yych == '*') goto yy284;
+#line 249 "cpp.re"
+ { BOOST_WAVE_RET(T_ARROW); }
+#line 1577 "cpp_re.inc"
+yy147:
+ ++YYCURSOR;
+#line 177 "cpp.re"
+ {
+ if (s->act_in_c99_mode) {
+ --YYCURSOR;
+ BOOST_WAVE_RET(T_DOT);
+ }
+ else {
+ BOOST_WAVE_RET(T_DOTSTAR);
+ }
+ }
+#line 1590 "cpp_re.inc"
+yy149:
+ yych = *++YYCURSOR;
+ if (yych == '.') goto yy286;
+ goto yy100;
+yy150:
+ ++YYCURSOR;
+#line 44 "cpp.re"
+ { goto ccomment; }
+#line 1599 "cpp_re.inc"
+yy152:
+ ++YYCURSOR;
+#line 45 "cpp.re"
+ { goto cppcomment; }
+#line 1604 "cpp_re.inc"
+yy154:
+ ++YYCURSOR;
+#line 210 "cpp.re"
+ { BOOST_WAVE_RET(T_DIVIDEASSIGN); }
+#line 1609 "cpp_re.inc"
+yy156:
+ ++YYCURSOR;
+#line 166 "cpp.re"
+ {
+ if (s->act_in_c99_mode) {
+ --YYCURSOR;
+ BOOST_WAVE_RET(T_COLON);
+ }
+ else {
+ BOOST_WAVE_RET(T_COLON_COLON);
+ }
+ }
+#line 1622 "cpp_re.inc"
+yy158:
+ ++YYCURSOR;
+#line 150 "cpp.re"
+ { BOOST_WAVE_RET(T_RIGHTBRACKET_ALT); }
+#line 1627 "cpp_re.inc"
+yy160:
+ ++YYCURSOR;
+#line 141 "cpp.re"
+ { BOOST_WAVE_RET(T_LEFTBRACE_ALT); }
+#line 1632 "cpp_re.inc"
+yy162:
+ ++YYCURSOR;
+#line 147 "cpp.re"
+ { BOOST_WAVE_RET(T_LEFTBRACKET_ALT); }
+#line 1637 "cpp_re.inc"
+yy164:
+ yych = *++YYCURSOR;
+ if (yych == '=') goto yy288;
+#line 220 "cpp.re"
+ { BOOST_WAVE_RET(T_SHIFTLEFT); }
+#line 1643 "cpp_re.inc"
+yy166:
+ ++YYCURSOR;
+#line 227 "cpp.re"
+ { BOOST_WAVE_RET(T_LESSEQUAL); }
+#line 1648 "cpp_re.inc"
+yy168:
+ ++YYCURSOR;
+#line 224 "cpp.re"
+ { BOOST_WAVE_RET(T_EQUAL); }
+#line 1653 "cpp_re.inc"
+yy170:
+ ++YYCURSOR;
+#line 228 "cpp.re"
+ { BOOST_WAVE_RET(T_GREATEREQUAL); }
+#line 1658 "cpp_re.inc"
+yy172:
+ yych = *++YYCURSOR;
+ if (yych == '=') goto yy290;
+#line 221 "cpp.re"
+ { BOOST_WAVE_RET(T_SHIFTRIGHT); }
+#line 1664 "cpp_re.inc"
+yy174:
+ yych = *++YYCURSOR;
+ switch (yych) {
+ case '!': goto yy292;
+ case '\'': goto yy294;
+ case '(': goto yy296;
+ case ')': goto yy298;
+ case '-': goto yy300;
+ case '/': goto yy302;
+ case '<': goto yy304;
+ case '=': goto yy306;
+ case '>': goto yy308;
+ default: goto yy100;
+ }
+yy175:
+ yych = *++YYCURSOR;
+ if (yych == '\'') goto yy100;
+ goto yy132;
+yy176:
+ ++YYCURSOR;
+#line 259 "cpp.re"
+ {
+ if (s->act_in_cpp0x_mode)
+ {
+ rawstringdelim = "";
+ goto extrawstringlit;
+ }
+ --YYCURSOR;
+ BOOST_WAVE_RET(T_IDENTIFIER);
+ }
+#line 1695 "cpp_re.inc"
+yy178:
+ ++YYCURSOR;
+#line 278 "cpp.re"
+ {
+ if (s->act_in_cpp0x_mode)
+ goto extstringlit;
+ --YYCURSOR;
+ BOOST_WAVE_RET(T_IDENTIFIER);
+ }
+#line 1705 "cpp_re.inc"
+yy180:
+ ++YYCURSOR;
+#line 270 "cpp.re"
+ {
+ if (s->act_in_cpp0x_mode)
+ goto extcharlit;
+ --YYCURSOR;
+ BOOST_WAVE_RET(T_IDENTIFIER);
+ }
+#line 1715 "cpp_re.inc"
+yy182:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == '"') goto yy310;
+ goto yy19;
+yy183:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy100;
+ if (yych <= '9') goto yy312;
+ goto yy100;
+ } else {
+ if (yych <= 'F') goto yy312;
+ if (yych <= '`') goto yy100;
+ if (yych <= 'f') goto yy312;
+ goto yy100;
+ }
+yy184:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy100;
+ if (yych <= '9') goto yy313;
+ goto yy100;
+ } else {
+ if (yych <= 'F') goto yy313;
+ if (yych <= '`') goto yy100;
+ if (yych <= 'f') goto yy313;
+ goto yy100;
+ }
+yy185:
+ ++YYCURSOR;
+#line 212 "cpp.re"
+ { BOOST_WAVE_RET(T_XORASSIGN); }
+#line 1753 "cpp_re.inc"
+yy187:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ switch (yych) {
+ case 'a': goto yy188;
+ case 'b': goto yy189;
+ case 'c': goto yy190;
+ case 'd': goto yy191;
+ case 'e': goto yy314;
+ case 'f': goto yy315;
+ case 'i': goto yy316;
+ case 'l': goto yy317;
+ case 's': goto yy194;
+ case 't': goto yy318;
+ default: goto yy19;
+ }
+yy188:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 's') goto yy319;
+ goto yy19;
+yy189:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'a') goto yy320;
+ goto yy19;
+yy190:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'd') goto yy321;
+ goto yy19;
+yy191:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy322;
+ goto yy19;
+yy192:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'a') goto yy323;
+ goto yy19;
+yy193:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'n') goto yy324;
+ goto yy19;
+yy194:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 't') goto yy325;
+ goto yy19;
+yy195:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'i') goto yy326;
+ goto yy19;
+yy196:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'd') goto yy327;
+ goto yy19;
+yy197:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'm') goto yy329;
+ goto yy19;
+yy198:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 't') goto yy331;
+ goto yy19;
+yy199:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 't') goto yy332;
+ goto yy19;
+yy200:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'o') goto yy333;
+ goto yy19;
+yy201:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy334;
+ goto yy19;
+yy202:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= 'r') goto yy19;
+ if (yych <= 's') goto yy335;
+ if (yych <= 't') goto yy336;
+ goto yy19;
+yy203:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'a') goto yy337;
+ goto yy19;
+yy204:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'a') goto yy338;
+ goto yy19;
+yy205:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= 'l') goto yy19;
+ if (yych <= 'm') goto yy339;
+ if (yych <= 'n') goto yy340;
+ goto yy19;
+yy206:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= 'e') {
+ if (yych == 'c') goto yy341;
+ goto yy19;
+ } else {
+ if (yych <= 'f') goto yy342;
+ if (yych == 'l') goto yy343;
+ goto yy19;
+ }
+yy207:
+ yyaccept = 7;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= 'Z') {
+ if (yych <= '9') {
+ if (yych == '$') goto yy18;
+ if (yych >= '0') goto yy18;
+ } else {
+ if (yych == '?') goto yy119;
+ if (yych >= 'A') goto yy18;
+ }
+ } else {
+ if (yych <= '_') {
+ if (yych == '\\') goto yy120;
+ if (yych >= '_') goto yy18;
+ } else {
+ if (yych <= 't') {
+ if (yych >= 'a') goto yy18;
+ } else {
+ if (yych <= 'u') goto yy344;
+ if (yych <= 'z') goto yy18;
+ }
+ }
+ }
+yy208:
+#line 67 "cpp.re"
+ { BOOST_WAVE_RET(T_DO); }
+#line 1902 "cpp_re.inc"
+yy209:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'n') goto yy345;
+ goto yy19;
+yy210:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 's') goto yy346;
+ goto yy19;
+yy211:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'u') goto yy347;
+ goto yy19;
+yy212:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'p') goto yy348;
+ if (yych == 't') goto yy349;
+ goto yy19;
+yy213:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'l') goto yy350;
+ goto yy19;
+yy214:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'o') goto yy351;
+ goto yy19;
+yy215:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'r') goto yy352;
+ goto yy19;
+yy216:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'i') goto yy354;
+ goto yy19;
+yy217:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 't') goto yy355;
+ goto yy19;
+yy218:
+ yyaccept = 8;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy219:
+#line 80 "cpp.re"
+ { BOOST_WAVE_RET(T_IF); }
+#line 1960 "cpp_re.inc"
+yy220:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'p') goto yy356;
+ goto yy19;
+yy221:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'l') goto yy357;
+ if (yych == 't') goto yy358;
+ goto yy19;
+yy222:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'n') goto yy360;
+ goto yy19;
+yy223:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 't') goto yy361;
+ goto yy19;
+yy224:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'm') goto yy362;
+ goto yy19;
+yy225:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'w') goto yy363;
+ goto yy19;
+yy226:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy365;
+ if (yych == 't') goto yy366;
+ goto yy19;
+yy227:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'l') goto yy368;
+ goto yy19;
+yy228:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy369;
+ goto yy19;
+yy229:
+ yyaccept = 9;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '@') {
+ if (yych <= '/') {
+ if (yych == '$') goto yy18;
+ } else {
+ if (yych <= '9') goto yy18;
+ if (yych == '?') goto yy119;
+ }
+ } else {
+ if (yych <= '^') {
+ if (yych <= 'Z') goto yy18;
+ if (yych == '\\') goto yy120;
+ } else {
+ if (yych <= '_') goto yy370;
+ if (yych <= '`') goto yy230;
+ if (yych <= 'z') goto yy18;
+ }
+ }
+yy230:
+#line 234 "cpp.re"
+ { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_OROR_ALT); }
+#line 2031 "cpp_re.inc"
+yy231:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'i') goto yy371;
+ if (yych == 'o') goto yy372;
+ goto yy19;
+yy232:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'b') goto yy373;
+ goto yy19;
+yy233:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= 'h') {
+ if (yych == 'g') goto yy374;
+ goto yy19;
+ } else {
+ if (yych <= 'i') goto yy375;
+ if (yych == 't') goto yy376;
+ goto yy19;
+ }
+yy234:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'o') goto yy377;
+ goto yy19;
+yy235:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'g') goto yy378;
+ if (yych == 'z') goto yy379;
+ goto yy19;
+yy236:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'a') goto yy380;
+ if (yych == 'r') goto yy381;
+ goto yy19;
+yy237:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'i') goto yy382;
+ goto yy19;
+yy238:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'm') goto yy383;
+ goto yy19;
+yy239:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'i') goto yy384;
+ if (yych == 'r') goto yy385;
+ goto yy19;
+yy240:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'u') goto yy386;
+ if (yych == 'y') goto yy387;
+ goto yy19;
+yy241:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'p') goto yy389;
+ goto yy19;
+yy242:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == '"') goto yy178;
+ if (yych == 'R') goto yy182;
+ goto yy19;
+yy243:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'i') goto yy390;
+ if (yych == 's') goto yy391;
+ goto yy19;
+yy244:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'i') goto yy392;
+ goto yy19;
+yy245:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'r') goto yy393;
+ goto yy19;
+yy246:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'i') goto yy394;
+ if (yych == 'l') goto yy395;
+ goto yy19;
+yy247:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'h') goto yy396;
+ goto yy19;
+yy248:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'i') goto yy397;
+ goto yy19;
+yy249:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'r') goto yy398;
+ goto yy19;
+yy250:
+ ++YYCURSOR;
+#line 217 "cpp.re"
+ { BOOST_WAVE_RET(T_ORASSIGN); }
+#line 2145 "cpp_re.inc"
+yy252:
+ yych = *++YYCURSOR;
+ if (yych == '?') goto yy400;
+ goto yy100;
+yy253:
+ ++YYCURSOR;
+#line 231 "cpp.re"
+ { BOOST_WAVE_RET(T_OROR); }
+#line 2154 "cpp_re.inc"
+yy255:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yybm[0+yych] & 4) {
+ goto yy255;
+ }
+ if (yych <= '!') {
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy98;
+ goto yy100;
+ } else {
+ if (yych <= '\f') goto yy98;
+ if (yych <= 0x1F) goto yy100;
+ goto yy98;
+ }
+ } else {
+ if (yych <= '/') {
+ if (yych <= '"') goto yy101;
+ if (yych <= '.') goto yy98;
+ goto yy401;
+ } else {
+ if (yych == '\\') goto yy104;
+ goto yy98;
+ }
+ }
+yy257:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy100;
+ if (yych <= '9') goto yy403;
+ goto yy100;
+ } else {
+ if (yych <= 'F') goto yy403;
+ if (yych <= '`') goto yy100;
+ if (yych <= 'f') goto yy403;
+ goto yy100;
+ }
+yy258:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy100;
+ if (yych <= '9') goto yy404;
+ goto yy100;
+ } else {
+ if (yych <= 'F') goto yy404;
+ if (yych <= '`') goto yy100;
+ if (yych <= 'f') goto yy404;
+ goto yy100;
+ }
+yy259:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy100;
+ if (yych <= '9') goto yy98;
+ goto yy100;
+ } else {
+ if (yych <= 'F') goto yy98;
+ if (yych <= '`') goto yy100;
+ if (yych <= 'f') goto yy98;
+ goto yy100;
+ }
+yy260:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yybm[0+yych] & 8) {
+ goto yy260;
+ }
+ if (yych <= 0x1F) goto yy100;
+ goto yy405;
+yy262:
+ yych = *++YYCURSOR;
+ if (yych == '=') goto yy407;
+ goto yy100;
+yy263:
+ yych = *++YYCURSOR;
+ if (yych == 'f') goto yy409;
+ goto yy100;
+yy264:
+ yych = *++YYCURSOR;
+ if (yych == 'i') goto yy410;
+ if (yych == 's') goto yy411;
+ goto yy100;
+yy265:
+ yych = *++YYCURSOR;
+ if (yych == 'd') goto yy412;
+ goto yy100;
+yy266:
+ yych = *++YYCURSOR;
+ if (yych == 'r') goto yy413;
+ goto yy100;
+yy267:
+ yyaccept = 10;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'd') goto yy414;
+ if (yych == 'n') goto yy415;
+yy268:
+#line 308 "cpp.re"
+ { BOOST_WAVE_RET(T_PP_IF); }
+#line 2261 "cpp_re.inc"
+yy269:
+ yych = *++YYCURSOR;
+ if (yych == 'c') goto yy416;
+ goto yy100;
+yy270:
+ yych = *++YYCURSOR;
+ if (yych == 'n') goto yy417;
+ goto yy100;
+yy271:
+ yych = *++YYCURSOR;
+ if (yych == 'a') goto yy418;
+ goto yy100;
+yy272:
+ yych = *++YYCURSOR;
+ if (yych == 'g') goto yy419;
+ goto yy100;
+yy273:
+ yych = *++YYCURSOR;
+ if (yych == 'd') goto yy420;
+ goto yy100;
+yy274:
+ yych = *++YYCURSOR;
+ if (yych == 'r') goto yy421;
+ goto yy100;
+yy275:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych == '/') goto yy120;
+ goto yy100;
+yy276:
+ yych = *++YYCURSOR;
+ if (yych == ':') goto yy422;
+ goto yy100;
+yy277:
+ ++YYCURSOR;
+yy278:
+#line 253 "cpp.re"
+ { BOOST_WAVE_RET(T_CHARLIT); }
+#line 2301 "cpp_re.inc"
+yy279:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '\'') {
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy131;
+ goto yy100;
+ } else {
+ if (yych <= '\f') goto yy131;
+ if (yych <= 0x1F) goto yy100;
+ if (yych <= '&') goto yy131;
+ goto yy277;
+ }
+ } else {
+ if (yych <= '>') {
+ if (yych == '/') goto yy424;
+ goto yy131;
+ } else {
+ if (yych <= '?') goto yy279;
+ if (yych == '\\') goto yy134;
+ goto yy131;
+ }
+ }
+yy281:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy100;
+ if (yych <= '9') goto yy426;
+ goto yy100;
+ } else {
+ if (yych <= 'F') goto yy426;
+ if (yych <= '`') goto yy100;
+ if (yych <= 'f') goto yy426;
+ goto yy100;
+ }
+yy282:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy100;
+ if (yych <= '9') goto yy427;
+ goto yy100;
+ } else {
+ if (yych <= 'F') goto yy427;
+ if (yych <= '`') goto yy100;
+ if (yych <= 'f') goto yy427;
+ goto yy100;
+ }
+yy283:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy100;
+ if (yych <= '9') goto yy131;
+ goto yy100;
+ } else {
+ if (yych <= 'F') goto yy131;
+ if (yych <= '`') goto yy100;
+ if (yych <= 'f') goto yy131;
+ goto yy100;
+ }
+yy284:
+ ++YYCURSOR;
+#line 240 "cpp.re"
+ {
+ if (s->act_in_c99_mode) {
+ --YYCURSOR;
+ BOOST_WAVE_RET(T_ARROW);
+ }
+ else {
+ BOOST_WAVE_RET(T_ARROWSTAR);
+ }
+ }
+#line 2380 "cpp_re.inc"
+yy286:
+ ++YYCURSOR;
+#line 163 "cpp.re"
+ { BOOST_WAVE_RET(T_ELLIPSIS); }
+#line 2385 "cpp_re.inc"
+yy288:
+ ++YYCURSOR;
+#line 223 "cpp.re"
+ { BOOST_WAVE_RET(T_SHIFTLEFTASSIGN); }
+#line 2390 "cpp_re.inc"
+yy290:
+ ++YYCURSOR;
+#line 222 "cpp.re"
+ { BOOST_WAVE_RET(T_SHIFTRIGHTASSIGN); }
+#line 2395 "cpp_re.inc"
+yy292:
+ yyaccept = 11;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '>') {
+ if (yych == '=') goto yy428;
+ } else {
+ if (yych <= '?') goto yy430;
+ if (yych == '|') goto yy431;
+ }
+yy293:
+#line 198 "cpp.re"
+ { BOOST_WAVE_RET(T_OR_TRIGRAPH); }
+#line 2408 "cpp_re.inc"
+yy294:
+ yych = *++YYCURSOR;
+ if (yych == '=') goto yy433;
+#line 192 "cpp.re"
+ { BOOST_WAVE_RET(T_XOR_TRIGRAPH); }
+#line 2414 "cpp_re.inc"
+yy296:
+ ++YYCURSOR;
+#line 146 "cpp.re"
+ { BOOST_WAVE_RET(T_LEFTBRACKET_TRIGRAPH); }
+#line 2419 "cpp_re.inc"
+yy298:
+ ++YYCURSOR;
+#line 149 "cpp.re"
+ { BOOST_WAVE_RET(T_RIGHTBRACKET_TRIGRAPH); }
+#line 2424 "cpp_re.inc"
+yy300:
+ ++YYCURSOR;
+#line 200 "cpp.re"
+ { BOOST_WAVE_RET(T_COMPL_TRIGRAPH); }
+#line 2429 "cpp_re.inc"
+yy302:
+ yyaccept = 12;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'U') goto yy183;
+ if (yych == 'u') goto yy184;
+yy303:
+#line 250 "cpp.re"
+ { BOOST_WAVE_RET(T_ANY_TRIGRAPH); }
+#line 2438 "cpp_re.inc"
+yy304:
+ ++YYCURSOR;
+#line 140 "cpp.re"
+ { BOOST_WAVE_RET(T_LEFTBRACE_TRIGRAPH); }
+#line 2443 "cpp_re.inc"
+yy306:
+ yyaccept = 13;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= 'c') {
+ if (yych <= ' ') {
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy106;
+ } else {
+ if (yych <= '\f') goto yy106;
+ if (yych >= ' ') goto yy106;
+ }
+ } else {
+ if (yych <= '.') {
+ if (yych == '#') goto yy435;
+ } else {
+ if (yych <= '/') goto yy106;
+ if (yych == '?') goto yy437;
+ }
+ }
+ } else {
+ if (yych <= 'p') {
+ if (yych <= 'i') {
+ if (yych <= 'e') goto yy106;
+ if (yych >= 'i') goto yy106;
+ } else {
+ if (yych == 'l') goto yy106;
+ if (yych >= 'p') goto yy106;
+ }
+ } else {
+ if (yych <= 't') {
+ if (yych == 'r') goto yy106;
+ } else {
+ if (yych == 'v') goto yy307;
+ if (yych <= 'w') goto yy106;
+ }
+ }
+ }
+yy307:
+#line 153 "cpp.re"
+ { BOOST_WAVE_RET(T_POUND_TRIGRAPH); }
+#line 2484 "cpp_re.inc"
+yy308:
+ ++YYCURSOR;
+#line 143 "cpp.re"
+ { BOOST_WAVE_RET(T_RIGHTBRACE_TRIGRAPH); }
+#line 2489 "cpp_re.inc"
+yy310:
+ ++YYCURSOR;
+#line 286 "cpp.re"
+ {
+ if (s->act_in_cpp0x_mode)
+ {
+ rawstringdelim = "";
+ goto extrawstringlit;
+ }
+ --YYCURSOR;
+ BOOST_WAVE_RET(T_IDENTIFIER);
+ }
+#line 2502 "cpp_re.inc"
+yy312:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy100;
+ if (yych <= '9') goto yy438;
+ goto yy100;
+ } else {
+ if (yych <= 'F') goto yy438;
+ if (yych <= '`') goto yy100;
+ if (yych <= 'f') goto yy438;
+ goto yy100;
+ }
+yy313:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy100;
+ if (yych <= '9') goto yy439;
+ goto yy100;
+ } else {
+ if (yych <= 'F') goto yy439;
+ if (yych <= '`') goto yy100;
+ if (yych <= 'f') goto yy439;
+ goto yy100;
+ }
+yy314:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'x') goto yy440;
+ goto yy19;
+yy315:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'a') goto yy323;
+ if (yych == 'i') goto yy441;
+ goto yy19;
+yy316:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'n') goto yy442;
+ goto yy19;
+yy317:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy443;
+ goto yy19;
+yy318:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'r') goto yy444;
+ goto yy19;
+yy319:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'm') goto yy445;
+ goto yy19;
+yy320:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 's') goto yy447;
+ goto yy19;
+yy321:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy448;
+ goto yy19;
+yy322:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'c') goto yy449;
+ goto yy19;
+yy323:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 's') goto yy450;
+ goto yy19;
+yy324:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'l') goto yy451;
+ goto yy19;
+yy325:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'd') goto yy452;
+ goto yy19;
+yy326:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'g') goto yy453;
+ goto yy19;
+yy327:
+ yyaccept = 14;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '@') {
+ if (yych <= '/') {
+ if (yych == '$') goto yy18;
+ } else {
+ if (yych <= '9') goto yy18;
+ if (yych == '?') goto yy119;
+ }
+ } else {
+ if (yych <= '^') {
+ if (yych <= 'Z') goto yy18;
+ if (yych == '\\') goto yy120;
+ } else {
+ if (yych <= '_') goto yy454;
+ if (yych <= '`') goto yy328;
+ if (yych <= 'z') goto yy18;
+ }
+ }
+yy328:
+#line 230 "cpp.re"
+ { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_ANDAND_ALT); }
+#line 2620 "cpp_re.inc"
+yy329:
+ yyaccept = 15;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy330:
+#line 50 "cpp.re"
+ { BOOST_WAVE_RET(T_ASM); }
+#line 2632 "cpp_re.inc"
+yy331:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'o') goto yy455;
+ goto yy19;
+yy332:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'a') goto yy457;
+ if (yych == 'o') goto yy458;
+ goto yy19;
+yy333:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'l') goto yy459;
+ goto yy19;
+yy334:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'a') goto yy461;
+ goto yy19;
+yy335:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy462;
+ goto yy19;
+yy336:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'c') goto yy464;
+ goto yy19;
+yy337:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'r') goto yy465;
+ goto yy19;
+yy338:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 's') goto yy467;
+ goto yy19;
+yy339:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'p') goto yy468;
+ goto yy19;
+yy340:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= 'r') goto yy19;
+ if (yych <= 's') goto yy469;
+ if (yych <= 't') goto yy470;
+ goto yy19;
+yy341:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'l') goto yy471;
+ goto yy19;
+yy342:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'a') goto yy472;
+ goto yy19;
+yy343:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy473;
+ goto yy19;
+yy344:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'b') goto yy474;
+ goto yy19;
+yy345:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'a') goto yy475;
+ goto yy19;
+yy346:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy476;
+ goto yy19;
+yy347:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'm') goto yy478;
+ goto yy19;
+yy348:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'l') goto yy480;
+ if (yych == 'o') goto yy481;
+ goto yy19;
+yy349:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy482;
+ goto yy19;
+yy350:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 's') goto yy483;
+ goto yy19;
+yy351:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'a') goto yy484;
+ goto yy19;
+yy352:
+ yyaccept = 16;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy353:
+#line 77 "cpp.re"
+ { BOOST_WAVE_RET(T_FOR); }
+#line 2753 "cpp_re.inc"
+yy354:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy485;
+ goto yy19;
+yy355:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'o') goto yy486;
+ goto yy19;
+yy356:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'o') goto yy488;
+ goto yy19;
+yy357:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'i') goto yy489;
+ goto yy19;
+yy358:
+ yyaccept = 17;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy359:
+#line 83 "cpp.re"
+ { BOOST_WAVE_RET(T_INT); }
+#line 2785 "cpp_re.inc"
+yy360:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'g') goto yy490;
+ goto yy19;
+yy361:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'a') goto yy492;
+ goto yy19;
+yy362:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy493;
+ goto yy19;
+yy363:
+ yyaccept = 18;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy364:
+#line 87 "cpp.re"
+ { BOOST_WAVE_RET(T_NEW); }
+#line 2812 "cpp_re.inc"
+yy365:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'x') goto yy494;
+ goto yy19;
+yy366:
+ yyaccept = 19;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '@') {
+ if (yych <= '/') {
+ if (yych == '$') goto yy18;
+ } else {
+ if (yych <= '9') goto yy18;
+ if (yych == '?') goto yy119;
+ }
+ } else {
+ if (yych <= '^') {
+ if (yych <= 'Z') goto yy18;
+ if (yych == '\\') goto yy120;
+ } else {
+ if (yych <= '_') goto yy495;
+ if (yych <= '`') goto yy367;
+ if (yych <= 'z') goto yy18;
+ }
+ }
+yy367:
+#line 203 "cpp.re"
+ { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_NOT_ALT); }
+#line 2841 "cpp_re.inc"
+yy368:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'l') goto yy496;
+ goto yy19;
+yy369:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'r') goto yy497;
+ goto yy19;
+yy370:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy498;
+ goto yy19;
+yy371:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'v') goto yy499;
+ goto yy19;
+yy372:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 't') goto yy500;
+ goto yy19;
+yy373:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'l') goto yy501;
+ goto yy19;
+yy374:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'i') goto yy502;
+ goto yy19;
+yy375:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'n') goto yy503;
+ goto yy19;
+yy376:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'u') goto yy504;
+ goto yy19;
+yy377:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'r') goto yy505;
+ goto yy19;
+yy378:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'n') goto yy506;
+ goto yy19;
+yy379:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy507;
+ goto yy19;
+yy380:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 't') goto yy508;
+ goto yy19;
+yy381:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'u') goto yy509;
+ goto yy19;
+yy382:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 't') goto yy510;
+ goto yy19;
+yy383:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'p') goto yy511;
+ goto yy19;
+yy384:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 's') goto yy512;
+ goto yy19;
+yy385:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy514;
+ if (yych == 'o') goto yy515;
+ goto yy19;
+yy386:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy516;
+ goto yy19;
+yy387:
+ yyaccept = 20;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy388:
+#line 110 "cpp.re"
+ { BOOST_WAVE_RET(T_TRY); }
+#line 2949 "cpp_re.inc"
+yy389:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy518;
+ goto yy19;
+yy390:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'o') goto yy519;
+ goto yy19;
+yy391:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'i') goto yy520;
+ goto yy19;
+yy392:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'n') goto yy521;
+ goto yy19;
+yy393:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 't') goto yy522;
+ goto yy19;
+yy394:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'd') goto yy523;
+ goto yy19;
+yy395:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'a') goto yy525;
+ goto yy19;
+yy396:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'a') goto yy526;
+ goto yy19;
+yy397:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'l') goto yy527;
+ goto yy19;
+yy398:
+ yyaccept = 21;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '@') {
+ if (yych <= '/') {
+ if (yych == '$') goto yy18;
+ } else {
+ if (yych <= '9') goto yy18;
+ if (yych == '?') goto yy119;
+ }
+ } else {
+ if (yych <= '^') {
+ if (yych <= 'Z') goto yy18;
+ if (yych == '\\') goto yy120;
+ } else {
+ if (yych <= '_') goto yy528;
+ if (yych <= '`') goto yy399;
+ if (yych <= 'z') goto yy18;
+ }
+ }
+yy399:
+#line 193 "cpp.re"
+ { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_XOR_ALT); }
+#line 3018 "cpp_re.inc"
+yy400:
+ yych = *++YYCURSOR;
+ if (yych == '!') goto yy529;
+ goto yy100;
+yy401:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yybm[0+yych] & 1) {
+ goto yy98;
+ }
+ if (yych <= 0x1F) goto yy100;
+ if (yych <= '"') goto yy531;
+ if (yych <= '?') goto yy103;
+ goto yy401;
+yy403:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy100;
+ if (yych <= '9') goto yy532;
+ goto yy100;
+ } else {
+ if (yych <= 'F') goto yy532;
+ if (yych <= '`') goto yy100;
+ if (yych <= 'f') goto yy532;
+ goto yy100;
+ }
+yy404:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy100;
+ if (yych <= '9') goto yy533;
+ goto yy100;
+ } else {
+ if (yych <= 'F') goto yy533;
+ if (yych <= '`') goto yy100;
+ if (yych <= 'f') goto yy533;
+ goto yy100;
+ }
+yy405:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yybm[0+yych] & 32) {
+ goto yy405;
+ }
+ if (yych <= 0x1F) {
+ if (yych <= 0x08) goto yy100;
+ if (yych <= '\r') goto yy260;
+ goto yy100;
+ } else {
+ if (yych == '/') goto yy105;
+ goto yy260;
+ }
+yy407:
+ ++YYCURSOR;
+#line 155 "cpp.re"
+ { BOOST_WAVE_RET(T_POUND_POUND_TRIGRAPH); }
+#line 3081 "cpp_re.inc"
+yy409:
+ yych = *++YYCURSOR;
+ if (yych == 'i') goto yy534;
+ goto yy100;
+yy410:
+ yych = *++YYCURSOR;
+ if (yych == 'f') goto yy535;
+ goto yy100;
+yy411:
+ yych = *++YYCURSOR;
+ if (yych == 'e') goto yy537;
+ goto yy100;
+yy412:
+ yych = *++YYCURSOR;
+ if (yych == 'i') goto yy539;
+ if (yych == 'r') goto yy540;
+ goto yy100;
+yy413:
+ yych = *++YYCURSOR;
+ if (yych == 'o') goto yy541;
+ goto yy100;
+yy414:
+ yych = *++YYCURSOR;
+ if (yych == 'e') goto yy542;
+ goto yy100;
+yy415:
+ yych = *++YYCURSOR;
+ if (yych == 'd') goto yy543;
+ goto yy100;
+yy416:
+ yych = *++YYCURSOR;
+ if (yych == 'l') goto yy544;
+ goto yy100;
+yy417:
+ yych = *++YYCURSOR;
+ if (yych == 'e') goto yy545;
+ goto yy100;
+yy418:
+ yych = *++YYCURSOR;
+ if (yych == 'g') goto yy547;
+ goto yy100;
+yy419:
+ yych = *++YYCURSOR;
+ if (yych == 'i') goto yy548;
+ goto yy100;
+yy420:
+ yych = *++YYCURSOR;
+ if (yych == 'e') goto yy549;
+ goto yy100;
+yy421:
+ yych = *++YYCURSOR;
+ if (yych == 'n') goto yy550;
+ goto yy100;
+yy422:
+ ++YYCURSOR;
+#line 158 "cpp.re"
+ { BOOST_WAVE_RET(T_POUND_POUND_ALT); }
+#line 3139 "cpp_re.inc"
+yy424:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yybm[0+yych] & 2) {
+ goto yy131;
+ }
+ if (yych <= 0x1F) goto yy100;
+ if (yych <= '\'') goto yy551;
+ if (yych <= '?') goto yy133;
+ goto yy424;
+yy426:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy100;
+ if (yych <= '9') goto yy552;
+ goto yy100;
+ } else {
+ if (yych <= 'F') goto yy552;
+ if (yych <= '`') goto yy100;
+ if (yych <= 'f') goto yy552;
+ goto yy100;
+ }
+yy427:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy100;
+ if (yych <= '9') goto yy553;
+ goto yy100;
+ } else {
+ if (yych <= 'F') goto yy553;
+ if (yych <= '`') goto yy100;
+ if (yych <= 'f') goto yy553;
+ goto yy100;
+ }
+yy428:
+ ++YYCURSOR;
+#line 219 "cpp.re"
+ { BOOST_WAVE_RET(T_ORASSIGN_TRIGRAPH); }
+#line 3183 "cpp_re.inc"
+yy430:
+ yych = *++YYCURSOR;
+ if (yych == '?') goto yy554;
+ goto yy100;
+yy431:
+ ++YYCURSOR;
+#line 232 "cpp.re"
+ { BOOST_WAVE_RET(T_OROR_TRIGRAPH); }
+#line 3192 "cpp_re.inc"
+yy433:
+ ++YYCURSOR;
+#line 214 "cpp.re"
+ { BOOST_WAVE_RET(T_XORASSIGN_TRIGRAPH); }
+#line 3197 "cpp_re.inc"
+yy435:
+ ++YYCURSOR;
+#line 156 "cpp.re"
+ { BOOST_WAVE_RET(T_POUND_POUND_TRIGRAPH); }
+#line 3202 "cpp_re.inc"
+yy437:
+ yych = *++YYCURSOR;
+ if (yych == '?') goto yy555;
+ goto yy100;
+yy438:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy100;
+ if (yych <= '9') goto yy556;
+ goto yy100;
+ } else {
+ if (yych <= 'F') goto yy556;
+ if (yych <= '`') goto yy100;
+ if (yych <= 'f') goto yy556;
+ goto yy100;
+ }
+yy439:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy100;
+ if (yych <= '9') goto yy557;
+ goto yy100;
+ } else {
+ if (yych <= 'F') goto yy557;
+ if (yych <= '`') goto yy100;
+ if (yych <= 'f') goto yy557;
+ goto yy100;
+ }
+yy440:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'c') goto yy558;
+ goto yy19;
+yy441:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'n') goto yy559;
+ goto yy19;
+yy442:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'l') goto yy451;
+ if (yych == 't') goto yy560;
+ goto yy19;
+yy443:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'a') goto yy561;
+ goto yy19;
+yy444:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'y') goto yy562;
+ goto yy19;
+yy445:
+ yyaccept = 22;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy446:
+#line 137 "cpp.re"
+ { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_ASM : T_IDENTIFIER); }
+#line 3272 "cpp_re.inc"
+yy447:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy564;
+ goto yy19;
+yy448:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'c') goto yy565;
+ goto yy19;
+yy449:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'l') goto yy566;
+ goto yy19;
+yy450:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 't') goto yy567;
+ goto yy19;
+yy451:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'i') goto yy568;
+ goto yy19;
+yy452:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'c') goto yy569;
+ goto yy19;
+yy453:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'n') goto yy570;
+ goto yy19;
+yy454:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy571;
+ goto yy19;
+yy455:
+ yyaccept = 23;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy456:
+#line 51 "cpp.re"
+ { BOOST_WAVE_RET(T_AUTO); }
+#line 3324 "cpp_re.inc"
+yy457:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'n') goto yy572;
+ goto yy19;
+yy458:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'r') goto yy573;
+ goto yy19;
+yy459:
+ yyaccept = 24;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy460:
+#line 52 "cpp.re"
+ { BOOST_WAVE_RET(T_BOOL); }
+#line 3346 "cpp_re.inc"
+yy461:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'k') goto yy575;
+ goto yy19;
+yy462:
+ yyaccept = 25;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy463:
+#line 54 "cpp.re"
+ { BOOST_WAVE_RET(T_CASE); }
+#line 3363 "cpp_re.inc"
+yy464:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'h') goto yy577;
+ goto yy19;
+yy465:
+ yyaccept = 26;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '>') {
+ if (yych <= '0') {
+ if (yych == '$') goto yy18;
+ if (yych >= '0') goto yy18;
+ } else {
+ if (yych <= '2') {
+ if (yych <= '1') goto yy579;
+ goto yy18;
+ } else {
+ if (yych <= '3') goto yy580;
+ if (yych <= '9') goto yy18;
+ }
+ }
+ } else {
+ if (yych <= '\\') {
+ if (yych <= '@') {
+ if (yych <= '?') goto yy119;
+ } else {
+ if (yych <= 'Z') goto yy18;
+ if (yych >= '\\') goto yy120;
+ }
+ } else {
+ if (yych <= '_') {
+ if (yych >= '_') goto yy18;
+ } else {
+ if (yych <= '`') goto yy466;
+ if (yych <= 'z') goto yy18;
+ }
+ }
+ }
+yy466:
+#line 56 "cpp.re"
+ { BOOST_WAVE_RET(T_CHAR); }
+#line 3405 "cpp_re.inc"
+yy467:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 's') goto yy581;
+ goto yy19;
+yy468:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'l') goto yy583;
+ goto yy19;
+yy469:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 't') goto yy585;
+ goto yy19;
+yy470:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'i') goto yy587;
+ goto yy19;
+yy471:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 't') goto yy588;
+ goto yy19;
+yy472:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'u') goto yy589;
+ goto yy19;
+yy473:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 't') goto yy590;
+ goto yy19;
+yy474:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'l') goto yy591;
+ goto yy19;
+yy475:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'm') goto yy592;
+ goto yy19;
+yy476:
+ yyaccept = 27;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy477:
+#line 70 "cpp.re"
+ { BOOST_WAVE_RET(T_ELSE); }
+#line 3462 "cpp_re.inc"
+yy478:
+ yyaccept = 28;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy479:
+#line 71 "cpp.re"
+ { BOOST_WAVE_RET(T_ENUM); }
+#line 3474 "cpp_re.inc"
+yy480:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'i') goto yy593;
+ goto yy19;
+yy481:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'r') goto yy594;
+ goto yy19;
+yy482:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'r') goto yy595;
+ goto yy19;
+yy483:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy596;
+ goto yy19;
+yy484:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 't') goto yy598;
+ goto yy19;
+yy485:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'n') goto yy600;
+ goto yy19;
+yy486:
+ yyaccept = 29;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy487:
+#line 79 "cpp.re"
+ { BOOST_WAVE_RET(T_GOTO); }
+#line 3516 "cpp_re.inc"
+yy488:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'r') goto yy601;
+ goto yy19;
+yy489:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'n') goto yy602;
+ goto yy19;
+yy490:
+ yyaccept = 30;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy491:
+#line 84 "cpp.re"
+ { BOOST_WAVE_RET(T_LONG); }
+#line 3538 "cpp_re.inc"
+yy492:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'b') goto yy603;
+ goto yy19;
+yy493:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 's') goto yy604;
+ goto yy19;
+yy494:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'c') goto yy605;
+ goto yy19;
+yy495:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy606;
+ goto yy19;
+yy496:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'p') goto yy607;
+ goto yy19;
+yy497:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'a') goto yy608;
+ goto yy19;
+yy498:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'q') goto yy609;
+ goto yy19;
+yy499:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'a') goto yy611;
+ goto yy19;
+yy500:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy612;
+ goto yy19;
+yy501:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'i') goto yy613;
+ goto yy19;
+yy502:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 's') goto yy614;
+ goto yy19;
+yy503:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 't') goto yy615;
+ goto yy19;
+yy504:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'r') goto yy616;
+ goto yy19;
+yy505:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 't') goto yy617;
+ goto yy19;
+yy506:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy619;
+ goto yy19;
+yy507:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'o') goto yy620;
+ goto yy19;
+yy508:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'i') goto yy621;
+ goto yy19;
+yy509:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'c') goto yy622;
+ goto yy19;
+yy510:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'c') goto yy623;
+ goto yy19;
+yy511:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'l') goto yy624;
+ goto yy19;
+yy512:
+ yyaccept = 31;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy513:
+#line 106 "cpp.re"
+ { BOOST_WAVE_RET(T_THIS); }
+#line 3650 "cpp_re.inc"
+yy514:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'a') goto yy625;
+ goto yy19;
+yy515:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'w') goto yy626;
+ goto yy19;
+yy516:
+ yyaccept = 32;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy517:
+#line 109 "cpp.re"
+ { BOOST_WAVE_RET(T_TRUE); }
+#line 3672 "cpp_re.inc"
+yy518:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= 'h') {
+ if (yych == 'd') goto yy628;
+ goto yy19;
+ } else {
+ if (yych <= 'i') goto yy629;
+ if (yych == 'n') goto yy630;
+ goto yy19;
+ }
+yy519:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'n') goto yy631;
+ goto yy19;
+yy520:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'g') goto yy633;
+ goto yy19;
+yy521:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'g') goto yy634;
+ goto yy19;
+yy522:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'u') goto yy636;
+ goto yy19;
+yy523:
+ yyaccept = 33;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy524:
+#line 118 "cpp.re"
+ { BOOST_WAVE_RET(T_VOID); }
+#line 3715 "cpp_re.inc"
+yy525:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 't') goto yy637;
+ goto yy19;
+yy526:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'r') goto yy638;
+ goto yy19;
+yy527:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy639;
+ goto yy19;
+yy528:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy641;
+ goto yy19;
+yy529:
+ ++YYCURSOR;
+#line 233 "cpp.re"
+ { BOOST_WAVE_RET(T_OROR_TRIGRAPH); }
+#line 3740 "cpp_re.inc"
+yy531:
+ yyaccept = 34;
+ YYMARKER = ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yybm[0+yych] & 1) {
+ goto yy98;
+ }
+ if (yych <= 0x1F) goto yy102;
+ if (yych <= '"') goto yy101;
+ if (yych <= '?') goto yy103;
+ goto yy104;
+yy532:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy100;
+ if (yych <= '9') goto yy642;
+ goto yy100;
+ } else {
+ if (yych <= 'F') goto yy642;
+ if (yych <= '`') goto yy100;
+ if (yych <= 'f') goto yy642;
+ goto yy100;
+ }
+yy533:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy100;
+ if (yych <= '9') goto yy259;
+ goto yy100;
+ } else {
+ if (yych <= 'F') goto yy259;
+ if (yych <= '`') goto yy100;
+ if (yych <= 'f') goto yy259;
+ goto yy100;
+ }
+yy534:
+ yych = *++YYCURSOR;
+ if (yych == 'n') goto yy643;
+ goto yy100;
+yy535:
+ ++YYCURSOR;
+#line 312 "cpp.re"
+ { BOOST_WAVE_RET(T_PP_ELIF); }
+#line 3789 "cpp_re.inc"
+yy537:
+ ++YYCURSOR;
+#line 311 "cpp.re"
+ { BOOST_WAVE_RET(T_PP_ELSE); }
+#line 3794 "cpp_re.inc"
+yy539:
+ yych = *++YYCURSOR;
+ if (yych == 'f') goto yy644;
+ goto yy100;
+yy540:
+ yych = *++YYCURSOR;
+ if (yych == 'e') goto yy646;
+ goto yy100;
+yy541:
+ yych = *++YYCURSOR;
+ if (yych == 'r') goto yy647;
+ goto yy100;
+yy542:
+ yych = *++YYCURSOR;
+ if (yych == 'f') goto yy649;
+ goto yy100;
+yy543:
+ yych = *++YYCURSOR;
+ if (yych == 'e') goto yy651;
+ goto yy100;
+yy544:
+ yych = *++YYCURSOR;
+ if (yych == 'u') goto yy652;
+ goto yy100;
+yy545:
+ ++YYCURSOR;
+#line 316 "cpp.re"
+ { BOOST_WAVE_RET(T_PP_LINE); }
+#line 3823 "cpp_re.inc"
+yy547:
+ yych = *++YYCURSOR;
+ if (yych == 'm') goto yy653;
+ goto yy100;
+yy548:
+ yych = *++YYCURSOR;
+ if (yych == 'o') goto yy654;
+ goto yy100;
+yy549:
+ yych = *++YYCURSOR;
+ if (yych == 'f') goto yy655;
+ goto yy100;
+yy550:
+ yych = *++YYCURSOR;
+ if (yych == 'i') goto yy657;
+ goto yy100;
+yy551:
+ yyaccept = 35;
+ YYMARKER = ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yybm[0+yych] & 2) {
+ goto yy131;
+ }
+ if (yych <= 0x1F) goto yy278;
+ if (yych <= '\'') goto yy277;
+ if (yych <= '?') goto yy133;
+ goto yy134;
+yy552:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy100;
+ if (yych <= '9') goto yy658;
+ goto yy100;
+ } else {
+ if (yych <= 'F') goto yy658;
+ if (yych <= '`') goto yy100;
+ if (yych <= 'f') goto yy658;
+ goto yy100;
+ }
+yy553:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy100;
+ if (yych <= '9') goto yy283;
+ goto yy100;
+ } else {
+ if (yych <= 'F') goto yy283;
+ if (yych <= '`') goto yy100;
+ if (yych <= 'f') goto yy283;
+ goto yy100;
+ }
+yy554:
+ yych = *++YYCURSOR;
+ if (yych == '!') goto yy659;
+ goto yy100;
+yy555:
+ yych = *++YYCURSOR;
+ if (yych == '=') goto yy661;
+ goto yy100;
+yy556:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy100;
+ if (yych <= '9') goto yy184;
+ goto yy100;
+ } else {
+ if (yych <= 'F') goto yy184;
+ if (yych <= '`') goto yy100;
+ if (yych <= 'f') goto yy184;
+ goto yy100;
+ }
+yy557:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy100;
+ if (yych <= '9') goto yy18;
+ goto yy100;
+ } else {
+ if (yych <= 'F') goto yy18;
+ if (yych <= '`') goto yy100;
+ if (yych <= 'f') goto yy18;
+ goto yy100;
+ }
+yy558:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy663;
+ goto yy19;
+yy559:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'a') goto yy664;
+ goto yy19;
+yy560:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ switch (yych) {
+ case '1': goto yy665;
+ case '3': goto yy666;
+ case '6': goto yy667;
+ case '8': goto yy668;
+ default: goto yy19;
+ }
+yy561:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'v') goto yy670;
+ goto yy19;
+yy562:
+ yyaccept = 36;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy563:
+#line 132 "cpp.re"
+ { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_TRY : T_IDENTIFIER); }
+#line 3952 "cpp_re.inc"
+yy564:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'd') goto yy671;
+ goto yy19;
+yy565:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'l') goto yy673;
+ goto yy19;
+yy566:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 's') goto yy675;
+ goto yy19;
+yy567:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'c') goto yy676;
+ goto yy19;
+yy568:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'n') goto yy677;
+ goto yy19;
+yy569:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'a') goto yy678;
+ goto yy19;
+yy570:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'a') goto yy679;
+ if (yych == 'o') goto yy680;
+ goto yy19;
+yy571:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'q') goto yy681;
+ goto yy19;
+yy572:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'd') goto yy683;
+ goto yy19;
+yy573:
+ yyaccept = 37;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy574:
+#line 197 "cpp.re"
+ { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_OR_ALT); }
+#line 4010 "cpp_re.inc"
+yy575:
+ yyaccept = 38;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy576:
+#line 53 "cpp.re"
+ { BOOST_WAVE_RET(T_BREAK); }
+#line 4022 "cpp_re.inc"
+yy577:
+ yyaccept = 39;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy578:
+#line 55 "cpp.re"
+ { BOOST_WAVE_RET(T_CATCH); }
+#line 4034 "cpp_re.inc"
+yy579:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == '6') goto yy685;
+ goto yy19;
+yy580:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == '2') goto yy686;
+ goto yy19;
+yy581:
+ yyaccept = 40;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy582:
+#line 59 "cpp.re"
+ { BOOST_WAVE_RET(T_CLASS); }
+#line 4056 "cpp_re.inc"
+yy583:
+ yyaccept = 41;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy584:
+#line 201 "cpp.re"
+ { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_COMPL_ALT); }
+#line 4068 "cpp_re.inc"
+yy585:
+ yyaccept = 42;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= 'Z') {
+ if (yych <= '9') {
+ if (yych == '$') goto yy18;
+ if (yych >= '0') goto yy18;
+ } else {
+ if (yych == '?') goto yy119;
+ if (yych >= 'A') goto yy18;
+ }
+ } else {
+ if (yych <= '_') {
+ if (yych == '\\') goto yy120;
+ if (yych >= '_') goto yy687;
+ } else {
+ if (yych <= 'd') {
+ if (yych >= 'a') goto yy18;
+ } else {
+ if (yych <= 'e') goto yy688;
+ if (yych <= 'z') goto yy18;
+ }
+ }
+ }
+yy586:
+#line 60 "cpp.re"
+ { BOOST_WAVE_RET(T_CONST); }
+#line 4096 "cpp_re.inc"
+yy587:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'n') goto yy689;
+ goto yy19;
+yy588:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'y') goto yy690;
+ goto yy19;
+yy589:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'l') goto yy691;
+ goto yy19;
+yy590:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy692;
+ goto yy19;
+yy591:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy694;
+ goto yy19;
+yy592:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'i') goto yy696;
+ goto yy19;
+yy593:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'c') goto yy697;
+ goto yy19;
+yy594:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 't') goto yy698;
+ goto yy19;
+yy595:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'n') goto yy700;
+ goto yy19;
+yy596:
+ yyaccept = 43;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy597:
+#line 75 "cpp.re"
+ { BOOST_WAVE_RET(T_FALSE); }
+#line 4153 "cpp_re.inc"
+yy598:
+ yyaccept = 44;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy599:
+#line 76 "cpp.re"
+ { BOOST_WAVE_RET(T_FLOAT); }
+#line 4165 "cpp_re.inc"
+yy600:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'd') goto yy702;
+ goto yy19;
+yy601:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 't') goto yy704;
+ goto yy19;
+yy602:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy706;
+ goto yy19;
+yy603:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'l') goto yy708;
+ goto yy19;
+yy604:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'p') goto yy709;
+ goto yy19;
+yy605:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy710;
+ goto yy19;
+yy606:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'q') goto yy711;
+ goto yy19;
+yy607:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 't') goto yy713;
+ goto yy19;
+yy608:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 't') goto yy714;
+ goto yy19;
+yy609:
+ yyaccept = 45;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy610:
+#line 218 "cpp.re"
+ { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_ORASSIGN_ALT); }
+#line 4222 "cpp_re.inc"
+yy611:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 't') goto yy715;
+ goto yy19;
+yy612:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'c') goto yy716;
+ goto yy19;
+yy613:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'c') goto yy717;
+ goto yy19;
+yy614:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 't') goto yy719;
+ goto yy19;
+yy615:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy720;
+ goto yy19;
+yy616:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'n') goto yy721;
+ goto yy19;
+yy617:
+ yyaccept = 46;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy618:
+#line 97 "cpp.re"
+ { BOOST_WAVE_RET(T_SHORT); }
+#line 4264 "cpp_re.inc"
+yy619:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'd') goto yy723;
+ goto yy19;
+yy620:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'f') goto yy725;
+ goto yy19;
+yy621:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'c') goto yy727;
+ goto yy19;
+yy622:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 't') goto yy729;
+ goto yy19;
+yy623:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'h') goto yy731;
+ goto yy19;
+yy624:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'a') goto yy733;
+ goto yy19;
+yy625:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'd') goto yy734;
+ goto yy19;
+yy626:
+ yyaccept = 47;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy627:
+#line 108 "cpp.re"
+ { BOOST_WAVE_RET(T_THROW); }
+#line 4311 "cpp_re.inc"
+yy628:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy735;
+ goto yy19;
+yy629:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'd') goto yy736;
+ goto yy19;
+yy630:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'a') goto yy738;
+ goto yy19;
+yy631:
+ yyaccept = 48;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy632:
+#line 114 "cpp.re"
+ { BOOST_WAVE_RET(T_UNION); }
+#line 4338 "cpp_re.inc"
+yy633:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'n') goto yy739;
+ goto yy19;
+yy634:
+ yyaccept = 49;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy635:
+#line 116 "cpp.re"
+ { BOOST_WAVE_RET(T_USING); }
+#line 4355 "cpp_re.inc"
+yy636:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'a') goto yy740;
+ goto yy19;
+yy637:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'i') goto yy741;
+ goto yy19;
+yy638:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == '_') goto yy742;
+ goto yy19;
+yy639:
+ yyaccept = 50;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy640:
+#line 121 "cpp.re"
+ { BOOST_WAVE_RET(T_WHILE); }
+#line 4382 "cpp_re.inc"
+yy641:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'q') goto yy743;
+ goto yy19;
+yy642:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy100;
+ if (yych <= '9') goto yy258;
+ goto yy100;
+ } else {
+ if (yych <= 'F') goto yy258;
+ if (yych <= '`') goto yy100;
+ if (yych <= 'f') goto yy258;
+ goto yy100;
+ }
+yy643:
+ yych = *++YYCURSOR;
+ if (yych == 'e') goto yy745;
+ goto yy100;
+yy644:
+ ++YYCURSOR;
+#line 313 "cpp.re"
+ { BOOST_WAVE_RET(T_PP_ENDIF); }
+#line 4410 "cpp_re.inc"
+yy646:
+ yych = *++YYCURSOR;
+ if (yych == 'g') goto yy747;
+ goto yy100;
+yy647:
+ ++YYCURSOR;
+#line 317 "cpp.re"
+ { BOOST_WAVE_RET(T_PP_ERROR); }
+#line 4419 "cpp_re.inc"
+yy649:
+ ++YYCURSOR;
+#line 309 "cpp.re"
+ { BOOST_WAVE_RET(T_PP_IFDEF); }
+#line 4424 "cpp_re.inc"
+yy651:
+ yych = *++YYCURSOR;
+ if (yych == 'f') goto yy748;
+ goto yy100;
+yy652:
+ yych = *++YYCURSOR;
+ if (yych == 'd') goto yy750;
+ goto yy100;
+yy653:
+ yych = *++YYCURSOR;
+ if (yych == 'a') goto yy751;
+ goto yy100;
+yy654:
+ yych = *++YYCURSOR;
+ if (yych == 'n') goto yy753;
+ goto yy100;
+yy655:
+ ++YYCURSOR;
+#line 315 "cpp.re"
+ { BOOST_WAVE_RET(T_PP_UNDEF); }
+#line 4445 "cpp_re.inc"
+yy657:
+ yych = *++YYCURSOR;
+ if (yych == 'n') goto yy755;
+ goto yy100;
+yy658:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy100;
+ if (yych <= '9') goto yy282;
+ goto yy100;
+ } else {
+ if (yych <= 'F') goto yy282;
+ if (yych <= '`') goto yy100;
+ if (yych <= 'f') goto yy282;
+ goto yy100;
+ }
+yy659:
+ ++YYCURSOR;
+#line 235 "cpp.re"
+ { BOOST_WAVE_RET(T_OROR_TRIGRAPH); }
+#line 4468 "cpp_re.inc"
+yy661:
+ ++YYCURSOR;
+#line 157 "cpp.re"
+ { BOOST_WAVE_RET(T_POUND_POUND_TRIGRAPH); }
+#line 4473 "cpp_re.inc"
+yy663:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'p') goto yy756;
+ goto yy19;
+yy664:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'l') goto yy757;
+ goto yy19;
+yy665:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == '6') goto yy758;
+ goto yy19;
+yy666:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == '2') goto yy760;
+ goto yy19;
+yy667:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == '4') goto yy762;
+ goto yy19;
+yy668:
+ yyaccept = 51;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy669:
+#line 123 "cpp.re"
+ { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_INT8 : T_IDENTIFIER); }
+#line 4510 "cpp_re.inc"
+yy670:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy764;
+ goto yy19;
+yy671:
+ yyaccept = 52;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy672:
+#line 127 "cpp.re"
+ { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_BASED : T_IDENTIFIER); }
+#line 4527 "cpp_re.inc"
+yy673:
+ yyaccept = 53;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy674:
+#line 129 "cpp.re"
+ { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_CDECL : T_IDENTIFIER); }
+#line 4539 "cpp_re.inc"
+yy675:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'p') goto yy766;
+ goto yy19;
+yy676:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'a') goto yy767;
+ goto yy19;
+yy677:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy768;
+ goto yy19;
+yy678:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'l') goto yy770;
+ goto yy19;
+yy679:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 's') goto yy771;
+ goto yy19;
+yy680:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'f') goto yy773;
+ goto yy19;
+yy681:
+ yyaccept = 54;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy682:
+#line 216 "cpp.re"
+ { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_ANDASSIGN_ALT); }
+#line 4581 "cpp_re.inc"
+yy683:
+ yyaccept = 55;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy684:
+#line 195 "cpp.re"
+ { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_AND_ALT); }
+#line 4593 "cpp_re.inc"
+yy685:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == '_') goto yy775;
+ goto yy19;
+yy686:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == '_') goto yy776;
+ goto yy19;
+yy687:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'c') goto yy777;
+ goto yy19;
+yy688:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'x') goto yy778;
+ goto yy19;
+yy689:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'u') goto yy779;
+ goto yy19;
+yy690:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'p') goto yy780;
+ goto yy19;
+yy691:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 't') goto yy781;
+ goto yy19;
+yy692:
+ yyaccept = 56;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy693:
+#line 66 "cpp.re"
+ { BOOST_WAVE_RET(T_DELETE); }
+#line 4640 "cpp_re.inc"
+yy694:
+ yyaccept = 57;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy695:
+#line 68 "cpp.re"
+ { BOOST_WAVE_RET(T_DOUBLE); }
+#line 4652 "cpp_re.inc"
+yy696:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'c') goto yy783;
+ goto yy19;
+yy697:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'i') goto yy784;
+ goto yy19;
+yy698:
+ yyaccept = 58;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy699:
+#line 73 "cpp.re"
+ { BOOST_WAVE_RET(T_EXPORT); }
+#line 4674 "cpp_re.inc"
+yy700:
+ yyaccept = 59;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy701:
+#line 74 "cpp.re"
+ { BOOST_WAVE_RET(T_EXTERN); }
+#line 4686 "cpp_re.inc"
+yy702:
+ yyaccept = 60;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy703:
+#line 78 "cpp.re"
+ { BOOST_WAVE_RET(T_FRIEND); }
+#line 4698 "cpp_re.inc"
+yy704:
+ yyaccept = 61;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy705:
+#line 81 "cpp.re"
+ { BOOST_WAVE_RET(s->enable_import_keyword ? T_IMPORT : T_IDENTIFIER); }
+#line 4710 "cpp_re.inc"
+yy706:
+ yyaccept = 62;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy707:
+#line 82 "cpp.re"
+ { BOOST_WAVE_RET(T_INLINE); }
+#line 4722 "cpp_re.inc"
+yy708:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy785;
+ goto yy19;
+yy709:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'a') goto yy787;
+ goto yy19;
+yy710:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'p') goto yy788;
+ goto yy19;
+yy711:
+ yyaccept = 63;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy712:
+#line 226 "cpp.re"
+ { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_NOTEQUAL_ALT); }
+#line 4749 "cpp_re.inc"
+yy713:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'r') goto yy789;
+ goto yy19;
+yy714:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'o') goto yy791;
+ goto yy19;
+yy715:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy792;
+ goto yy19;
+yy716:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 't') goto yy794;
+ goto yy19;
+yy717:
+ yyaccept = 64;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy718:
+#line 93 "cpp.re"
+ { BOOST_WAVE_RET(T_PUBLIC); }
+#line 4781 "cpp_re.inc"
+yy719:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy795;
+ goto yy19;
+yy720:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'r') goto yy796;
+ goto yy19;
+yy721:
+ yyaccept = 65;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy722:
+#line 96 "cpp.re"
+ { BOOST_WAVE_RET(T_RETURN); }
+#line 4803 "cpp_re.inc"
+yy723:
+ yyaccept = 66;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy724:
+#line 98 "cpp.re"
+ { BOOST_WAVE_RET(T_SIGNED); }
+#line 4815 "cpp_re.inc"
+yy725:
+ yyaccept = 67;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy726:
+#line 99 "cpp.re"
+ { BOOST_WAVE_RET(T_SIZEOF); }
+#line 4827 "cpp_re.inc"
+yy727:
+ yyaccept = 68;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '@') {
+ if (yych <= '/') {
+ if (yych == '$') goto yy18;
+ } else {
+ if (yych <= '9') goto yy18;
+ if (yych == '?') goto yy119;
+ }
+ } else {
+ if (yych <= '^') {
+ if (yych <= 'Z') goto yy18;
+ if (yych == '\\') goto yy120;
+ } else {
+ if (yych <= '_') goto yy797;
+ if (yych <= '`') goto yy728;
+ if (yych <= 'z') goto yy18;
+ }
+ }
+yy728:
+#line 100 "cpp.re"
+ { BOOST_WAVE_RET(T_STATIC); }
+#line 4851 "cpp_re.inc"
+yy729:
+ yyaccept = 69;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy730:
+#line 103 "cpp.re"
+ { BOOST_WAVE_RET(T_STRUCT); }
+#line 4863 "cpp_re.inc"
+yy731:
+ yyaccept = 70;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy732:
+#line 104 "cpp.re"
+ { BOOST_WAVE_RET(T_SWITCH); }
+#line 4875 "cpp_re.inc"
+yy733:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 't') goto yy798;
+ goto yy19;
+yy734:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == '_') goto yy799;
+ goto yy19;
+yy735:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'f') goto yy800;
+ goto yy19;
+yy736:
+ yyaccept = 71;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy737:
+#line 112 "cpp.re"
+ { BOOST_WAVE_RET(T_TYPEID); }
+#line 4902 "cpp_re.inc"
+yy738:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'm') goto yy802;
+ goto yy19;
+yy739:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy803;
+ goto yy19;
+yy740:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'l') goto yy804;
+ goto yy19;
+yy741:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'l') goto yy806;
+ goto yy19;
+yy742:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 't') goto yy807;
+ goto yy19;
+yy743:
+ yyaccept = 72;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy744:
+#line 213 "cpp.re"
+ { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_XORASSIGN_ALT); }
+#line 4939 "cpp_re.inc"
+yy745:
+ ++YYCURSOR;
+#line 314 "cpp.re"
+ { BOOST_WAVE_RET(T_PP_DEFINE); }
+#line 4944 "cpp_re.inc"
+yy747:
+ yych = *++YYCURSOR;
+ if (yych == 'i') goto yy809;
+ goto yy100;
+yy748:
+ ++YYCURSOR;
+#line 310 "cpp.re"
+ { BOOST_WAVE_RET(T_PP_IFNDEF); }
+#line 4953 "cpp_re.inc"
+yy750:
+ yych = *++YYCURSOR;
+ if (yych == 'e') goto yy810;
+ goto yy100;
+yy751:
+ ++YYCURSOR;
+#line 318 "cpp.re"
+ { BOOST_WAVE_RET(T_PP_PRAGMA); }
+#line 4962 "cpp_re.inc"
+yy753:
+ ++YYCURSOR;
+#line 322 "cpp.re"
+ { BOOST_WAVE_RET(T_MSEXT_PP_REGION); }
+#line 4967 "cpp_re.inc"
+yy755:
+ yych = *++YYCURSOR;
+ if (yych == 'g') goto yy812;
+ goto yy100;
+yy756:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 't') goto yy814;
+ goto yy19;
+yy757:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'l') goto yy816;
+ goto yy19;
+yy758:
+ yyaccept = 73;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy759:
+#line 124 "cpp.re"
+ { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_INT16 : T_IDENTIFIER); }
+#line 4993 "cpp_re.inc"
+yy760:
+ yyaccept = 74;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy761:
+#line 125 "cpp.re"
+ { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_INT32 : T_IDENTIFIER); }
+#line 5005 "cpp_re.inc"
+yy762:
+ yyaccept = 75;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy763:
+#line 126 "cpp.re"
+ { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_INT64 : T_IDENTIFIER); }
+#line 5017 "cpp_re.inc"
+yy764:
+ yyaccept = 76;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy765:
+#line 135 "cpp.re"
+ { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_LEAVE : T_IDENTIFIER); }
+#line 5029 "cpp_re.inc"
+yy766:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy817;
+ goto yy19;
+yy767:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'l') goto yy818;
+ goto yy19;
+yy768:
+ yyaccept = 77;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy769:
+#line 136 "cpp.re"
+ { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_INLINE : T_IDENTIFIER); }
+#line 5051 "cpp_re.inc"
+yy770:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'l') goto yy819;
+ goto yy19;
+yy771:
+ yyaccept = 78;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy772:
+#line 48 "cpp.re"
+ { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_ALIGNAS : T_IDENTIFIER); }
+#line 5068 "cpp_re.inc"
+yy773:
+ yyaccept = 79;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy774:
+#line 49 "cpp.re"
+ { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_ALIGNOF : T_IDENTIFIER); }
+#line 5080 "cpp_re.inc"
+yy775:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 't') goto yy821;
+ goto yy19;
+yy776:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 't') goto yy823;
+ goto yy19;
+yy777:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'a') goto yy825;
+ goto yy19;
+yy778:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'p') goto yy826;
+ goto yy19;
+yy779:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy827;
+ goto yy19;
+yy780:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy829;
+ goto yy19;
+yy781:
+ yyaccept = 80;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy782:
+#line 65 "cpp.re"
+ { BOOST_WAVE_RET(T_DEFAULT); }
+#line 5122 "cpp_re.inc"
+yy783:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == '_') goto yy831;
+ goto yy19;
+yy784:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 't') goto yy832;
+ goto yy19;
+yy785:
+ yyaccept = 81;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy786:
+#line 85 "cpp.re"
+ { BOOST_WAVE_RET(T_MUTABLE); }
+#line 5144 "cpp_re.inc"
+yy787:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'c') goto yy834;
+ goto yy19;
+yy788:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 't') goto yy835;
+ goto yy19;
+yy789:
+ yyaccept = 82;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy790:
+#line 89 "cpp.re"
+ { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_NULLPTR : T_IDENTIFIER); }
+#line 5166 "cpp_re.inc"
+yy791:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'r') goto yy837;
+ goto yy19;
+yy792:
+ yyaccept = 83;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy793:
+#line 91 "cpp.re"
+ { BOOST_WAVE_RET(T_PRIVATE); }
+#line 5183 "cpp_re.inc"
+yy794:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy839;
+ goto yy19;
+yy795:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'r') goto yy840;
+ goto yy19;
+yy796:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'p') goto yy842;
+ goto yy19;
+yy797:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'a') goto yy843;
+ if (yych == 'c') goto yy844;
+ goto yy19;
+yy798:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy845;
+ goto yy19;
+yy799:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'l') goto yy847;
+ goto yy19;
+yy800:
+ yyaccept = 84;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy801:
+#line 111 "cpp.re"
+ { BOOST_WAVE_RET(T_TYPEDEF); }
+#line 5226 "cpp_re.inc"
+yy802:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy848;
+ goto yy19;
+yy803:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'd') goto yy850;
+ goto yy19;
+yy804:
+ yyaccept = 85;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy805:
+#line 117 "cpp.re"
+ { BOOST_WAVE_RET(T_VIRTUAL); }
+#line 5248 "cpp_re.inc"
+yy806:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy852;
+ goto yy19;
+yy807:
+ yyaccept = 86;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy808:
+#line 120 "cpp.re"
+ { BOOST_WAVE_RET(T_WCHART); }
+#line 5265 "cpp_re.inc"
+yy809:
+ yych = *++YYCURSOR;
+ if (yych == 'o') goto yy854;
+ goto yy100;
+yy810:
+ yyaccept = 87;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == '_') goto yy860;
+ goto yy856;
+yy811:
+#line 306 "cpp.re"
+ { BOOST_WAVE_RET(T_PP_INCLUDE); }
+#line 5278 "cpp_re.inc"
+yy812:
+ ++YYCURSOR;
+#line 320 "cpp.re"
+ { BOOST_WAVE_RET(T_PP_WARNING); }
+#line 5283 "cpp_re.inc"
+yy814:
+ yyaccept = 88;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy815:
+#line 133 "cpp.re"
+ { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_EXCEPT : T_IDENTIFIER); }
+#line 5295 "cpp_re.inc"
+yy816:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'y') goto yy861;
+ goto yy19;
+yy817:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'c') goto yy863;
+ goto yy19;
+yy818:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'l') goto yy865;
+ goto yy19;
+yy819:
+ yyaccept = 89;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy820:
+#line 131 "cpp.re"
+ { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_STDCALL : T_IDENTIFIER); }
+#line 5322 "cpp_re.inc"
+yy821:
+ yyaccept = 90;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy822:
+#line 57 "cpp.re"
+ { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_CHAR16_T : T_IDENTIFIER); }
+#line 5334 "cpp_re.inc"
+yy823:
+ yyaccept = 91;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy824:
+#line 58 "cpp.re"
+ { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_CHAR32_T : T_IDENTIFIER); }
+#line 5346 "cpp_re.inc"
+yy825:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 's') goto yy867;
+ goto yy19;
+yy826:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'r') goto yy868;
+ goto yy19;
+yy827:
+ yyaccept = 92;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy828:
+#line 63 "cpp.re"
+ { BOOST_WAVE_RET(T_CONTINUE); }
+#line 5368 "cpp_re.inc"
+yy829:
+ yyaccept = 93;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy830:
+#line 64 "cpp.re"
+ { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_DECLTYPE : T_IDENTIFIER); }
+#line 5380 "cpp_re.inc"
+yy831:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'c') goto yy870;
+ goto yy19;
+yy832:
+ yyaccept = 94;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy833:
+#line 72 "cpp.re"
+ { BOOST_WAVE_RET(T_EXPLICIT); }
+#line 5397 "cpp_re.inc"
+yy834:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy871;
+ goto yy19;
+yy835:
+ yyaccept = 95;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy836:
+#line 88 "cpp.re"
+ { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_NOEXCEPT : T_IDENTIFIER); }
+#line 5414 "cpp_re.inc"
+yy837:
+ yyaccept = 96;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy838:
+#line 90 "cpp.re"
+ { BOOST_WAVE_RET(T_OPERATOR); }
+#line 5426 "cpp_re.inc"
+yy839:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'd') goto yy873;
+ goto yy19;
+yy840:
+ yyaccept = 97;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy841:
+#line 94 "cpp.re"
+ { BOOST_WAVE_RET(T_REGISTER); }
+#line 5443 "cpp_re.inc"
+yy842:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'r') goto yy875;
+ goto yy19;
+yy843:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 's') goto yy876;
+ goto yy19;
+yy844:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'a') goto yy877;
+ goto yy19;
+yy845:
+ yyaccept = 98;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy846:
+#line 105 "cpp.re"
+ { BOOST_WAVE_RET(T_TEMPLATE); }
+#line 5470 "cpp_re.inc"
+yy847:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'o') goto yy878;
+ goto yy19;
+yy848:
+ yyaccept = 99;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy849:
+#line 113 "cpp.re"
+ { BOOST_WAVE_RET(T_TYPENAME); }
+#line 5487 "cpp_re.inc"
+yy850:
+ yyaccept = 100;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy851:
+#line 115 "cpp.re"
+ { BOOST_WAVE_RET(T_UNSIGNED); }
+#line 5499 "cpp_re.inc"
+yy852:
+ yyaccept = 101;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy853:
+#line 119 "cpp.re"
+ { BOOST_WAVE_RET(T_VOLATILE); }
+#line 5511 "cpp_re.inc"
+yy854:
+ yych = *++YYCURSOR;
+ if (yych == 'n') goto yy879;
+ goto yy100;
+yy855:
+ yyaccept = 87;
+ YYMARKER = ++YYCURSOR;
+ if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
+ yych = *YYCURSOR;
+yy856:
+ if (yych <= ' ') {
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy855;
+ goto yy811;
+ } else {
+ if (yych <= '\f') goto yy855;
+ if (yych <= 0x1F) goto yy811;
+ goto yy855;
+ }
+ } else {
+ if (yych <= '.') {
+ if (yych != '"') goto yy811;
+ } else {
+ if (yych <= '/') goto yy858;
+ if (yych == '<') goto yy859;
+ goto yy811;
+ }
+ }
+ yych = *++YYCURSOR;
+ if (yych == '"') goto yy100;
+ goto yy882;
+yy858:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych == '*') goto yy883;
+ goto yy100;
+yy859:
+ yych = *++YYCURSOR;
+ if (yych == '>') goto yy100;
+ goto yy886;
+yy860:
+ yych = *++YYCURSOR;
+ if (yych == 'n') goto yy887;
+ goto yy100;
+yy861:
+ yyaccept = 102;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy862:
+#line 134 "cpp.re"
+ { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_FINALLY : T_IDENTIFIER); }
+#line 5568 "cpp_re.inc"
+yy863:
+ yyaccept = 103;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy864:
+#line 128 "cpp.re"
+ { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_DECLSPEC : T_IDENTIFIER); }
+#line 5580 "cpp_re.inc"
+yy865:
+ yyaccept = 104;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy866:
+#line 130 "cpp.re"
+ { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_FASTCALL : T_IDENTIFIER); }
+#line 5592 "cpp_re.inc"
+yy867:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 't') goto yy888;
+ goto yy19;
+yy868:
+ yyaccept = 105;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy869:
+#line 61 "cpp.re"
+ { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_CONSTEXPR : T_IDENTIFIER); }
+#line 5609 "cpp_re.inc"
+yy870:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'a') goto yy890;
+ goto yy19;
+yy871:
+ yyaccept = 106;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy872:
+#line 86 "cpp.re"
+ { BOOST_WAVE_RET(T_NAMESPACE); }
+#line 5626 "cpp_re.inc"
+yy873:
+ yyaccept = 107;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy874:
+#line 92 "cpp.re"
+ { BOOST_WAVE_RET(T_PROTECTED); }
+#line 5638 "cpp_re.inc"
+yy875:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy891;
+ goto yy19;
+yy876:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 's') goto yy892;
+ goto yy19;
+yy877:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 's') goto yy893;
+ goto yy19;
+yy878:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'c') goto yy894;
+ goto yy19;
+yy879:
+ ++YYCURSOR;
+#line 323 "cpp.re"
+ { BOOST_WAVE_RET(T_MSEXT_PP_ENDREGION); }
+#line 5663 "cpp_re.inc"
+yy881:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+yy882:
+ if (yybm[0+yych] & 64) {
+ goto yy881;
+ }
+ if (yych <= 0x1F) goto yy100;
+ goto yy895;
+yy883:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= 0x1F) {
+ if (yych <= 0x08) goto yy100;
+ if (yych <= '\r') goto yy883;
+ goto yy100;
+ } else {
+ if (yych == '*') goto yy897;
+ goto yy883;
+ }
+yy885:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+yy886:
+ if (yybm[0+yych] & 128) {
+ goto yy885;
+ }
+ if (yych <= 0x1F) goto yy100;
+ goto yy899;
+yy887:
+ yych = *++YYCURSOR;
+ if (yych == 'e') goto yy901;
+ goto yy100;
+yy888:
+ yyaccept = 108;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy889:
+#line 62 "cpp.re"
+ { BOOST_WAVE_RET(T_CONSTCAST); }
+#line 5711 "cpp_re.inc"
+yy890:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 's') goto yy902;
+ goto yy19;
+yy891:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 't') goto yy903;
+ goto yy19;
+yy892:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy904;
+ goto yy19;
+yy893:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 't') goto yy905;
+ goto yy19;
+yy894:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'a') goto yy907;
+ goto yy19;
+yy895:
+ ++YYCURSOR;
+#line 303 "cpp.re"
+ { BOOST_WAVE_RET(T_PP_QHEADER); }
+#line 5741 "cpp_re.inc"
+yy897:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= ')') {
+ if (yych <= 0x08) goto yy100;
+ if (yych <= '\r') goto yy883;
+ if (yych <= 0x1F) goto yy100;
+ goto yy883;
+ } else {
+ if (yych <= '*') goto yy897;
+ if (yych == '/') goto yy855;
+ goto yy883;
+ }
+yy899:
+ ++YYCURSOR;
+#line 300 "cpp.re"
+ { BOOST_WAVE_RET(T_PP_HHEADER); }
+#line 5760 "cpp_re.inc"
+yy901:
+ yych = *++YYCURSOR;
+ if (yych == 'x') goto yy908;
+ goto yy100;
+yy902:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 't') goto yy909;
+ goto yy19;
+yy903:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == '_') goto yy911;
+ goto yy19;
+yy904:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'r') goto yy912;
+ goto yy19;
+yy905:
+ yyaccept = 109;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy906:
+#line 101 "cpp.re"
+ { BOOST_WAVE_RET(T_STATICCAST); }
+#line 5791 "cpp_re.inc"
+yy907:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'l') goto yy913;
+ goto yy19;
+yy908:
+ yych = *++YYCURSOR;
+ if (yych == 't') goto yy855;
+ goto yy100;
+yy909:
+ yyaccept = 110;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy910:
+#line 69 "cpp.re"
+ { BOOST_WAVE_RET(T_DYNAMICCAST); }
+#line 5812 "cpp_re.inc"
+yy911:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'c') goto yy915;
+ goto yy19;
+yy912:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 't') goto yy916;
+ goto yy19;
+yy913:
+ yyaccept = 111;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy914:
+#line 107 "cpp.re"
+ { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_THREADLOCAL : T_IDENTIFIER); }
+#line 5834 "cpp_re.inc"
+yy915:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'a') goto yy918;
+ goto yy19;
+yy916:
+ yyaccept = 112;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy917:
+#line 102 "cpp.re"
+ { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_STATICASSERT : T_IDENTIFIER); }
+#line 5851 "cpp_re.inc"
+yy918:
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych != 's') goto yy19;
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych != 't') goto yy19;
+ yyaccept = 113;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[256+yych] & 128) {
+ goto yy18;
+ }
+ if (yych == '?') goto yy119;
+ if (yych == '\\') goto yy120;
+yy921:
+#line 95 "cpp.re"
+ { BOOST_WAVE_RET(T_REINTERPRETCAST); }
+#line 5869 "cpp_re.inc"
+}
+#line 355 "cpp.re"
+
+
+ccomment:
+
+#line 5876 "cpp_re.inc"
+{
+ YYCTYPE yych;
+ if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
+ yych = *YYCURSOR;
+ if (yych <= '\f') {
+ if (yych <= 0x08) {
+ if (yych >= 0x01) goto yy926;
+ } else {
+ if (yych == '\n') goto yy930;
+ goto yy928;
+ }
+ } else {
+ if (yych <= 0x1F) {
+ if (yych <= '\r') goto yy932;
+ goto yy926;
+ } else {
+ if (yych == '*') goto yy933;
+ goto yy928;
+ }
+ }
+ ++YYCURSOR;
+#line 373 "cpp.re"
+ {
+ if(cursor == s->eof)
+ {
+ BOOST_WAVE_UPDATE_CURSOR(); // adjust the input cursor
+ (*s->error_proc)(s, lexing_exception::generic_lexing_warning,
+ "Unterminated 'C' style comment");
+ }
+ else
+ {
+ --YYCURSOR; // next call returns T_EOF
+ BOOST_WAVE_UPDATE_CURSOR(); // adjust the input cursor
+ (*s->error_proc)(s, lexing_exception::generic_lexing_error,
+ "invalid character: '\\000' in input stream");
+ }
+ }
+#line 5914 "cpp_re.inc"
+yy926:
+ ++YYCURSOR;
+#line 390 "cpp.re"
+ {
+ // flag the error
+ BOOST_WAVE_UPDATE_CURSOR(); // adjust the input cursor
+ (*s->error_proc)(s, lexing_exception::generic_lexing_error,
+ "invalid character '\\%03o' in input stream", *--YYCURSOR);
+ }
+#line 5924 "cpp_re.inc"
+yy928:
+ ++YYCURSOR;
+yy929:
+#line 370 "cpp.re"
+ { goto ccomment; }
+#line 5930 "cpp_re.inc"
+yy930:
+ ++YYCURSOR;
+yy931:
+#line 362 "cpp.re"
+ {
+ /*if(cursor == s->eof) BOOST_WAVE_RET(T_EOF);*/
+ /*s->tok = cursor; */
+ s->line += count_backslash_newlines(s, cursor) +1;
+ cursor.column = 1;
+ goto ccomment;
+ }
+#line 5942 "cpp_re.inc"
+yy932:
+ yych = *++YYCURSOR;
+ if (yych == '\n') goto yy930;
+ goto yy931;
+yy933:
+ yych = *++YYCURSOR;
+ if (yych != '/') goto yy929;
+ ++YYCURSOR;
+#line 359 "cpp.re"
+ { BOOST_WAVE_RET(T_CCOMMENT); }
+#line 5953 "cpp_re.inc"
+}
+#line 396 "cpp.re"
+
+
+cppcomment:
+
+#line 5960 "cpp_re.inc"
+{
+ YYCTYPE yych;
+ if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
+ yych = *YYCURSOR;
+ if (yych <= '\n') {
+ if (yych <= 0x00) goto yy938;
+ if (yych <= 0x08) goto yy940;
+ if (yych <= '\t') goto yy942;
+ goto yy944;
+ } else {
+ if (yych <= '\f') goto yy942;
+ if (yych <= '\r') goto yy946;
+ if (yych <= 0x1F) goto yy940;
+ goto yy942;
+ }
+yy938:
+ ++YYCURSOR;
+#line 412 "cpp.re"
+ {
+ if (s->eof && cursor != s->eof)
+ {
+ --YYCURSOR; // next call returns T_EOF
+ BOOST_WAVE_UPDATE_CURSOR(); // adjust the input cursor
+ (*s->error_proc)(s, lexing_exception::generic_lexing_error,
+ "invalid character '\\000' in input stream");
+ }
+
+ --YYCURSOR; // next call returns T_EOF
+ if (!s->single_line_only)
+ {
+ BOOST_WAVE_UPDATE_CURSOR(); // adjust the input cursor
+ (*s->error_proc)(s, lexing_exception::generic_lexing_warning,
+ "Unterminated 'C++' style comment");
+ }
+ BOOST_WAVE_RET(T_CPPCOMMENT);
+ }
+#line 5997 "cpp_re.inc"
+yy940:
+ ++YYCURSOR;
+#line 432 "cpp.re"
+ {
+ // flag the error
+ BOOST_WAVE_UPDATE_CURSOR(); // adjust the input cursor
+ (*s->error_proc)(s, lexing_exception::generic_lexing_error,
+ "invalid character '\\%03o' in input stream", *--YYCURSOR);
+ }
+#line 6007 "cpp_re.inc"
+yy942:
+ ++YYCURSOR;
+#line 409 "cpp.re"
+ { goto cppcomment; }
+#line 6012 "cpp_re.inc"
+yy944:
+ ++YYCURSOR;
+yy945:
+#line 401 "cpp.re"
+ {
+ /*if(cursor == s->eof) BOOST_WAVE_RET(T_EOF); */
+ /*s->tok = cursor; */
+ s->line++;
+ cursor.column = 1;
+ BOOST_WAVE_RET(T_CPPCOMMENT);
+ }
+#line 6024 "cpp_re.inc"
+yy946:
+ yych = *++YYCURSOR;
+ if (yych == '\n') goto yy944;
+ goto yy945;
+}
+#line 438 "cpp.re"
+
+
+/* this subscanner is called whenever a pp_number has been started */
+pp_number:
+{
+ cursor = uchar_wrapper(s->tok = s->cur, s->column = s->curr_column);
+ marker = uchar_wrapper(s->ptr);
+ limit = uchar_wrapper(s->lim);
+
+ if (s->detect_pp_numbers) {
+
+#line 6042 "cpp_re.inc"
+{
+ YYCTYPE yych;
+ static const unsigned char yybm[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 64, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 64, 0,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 0, 0, 0, 0, 0, 0,
+ 0, 64, 64, 64, 64, 128, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 0, 0, 0, 0, 64,
+ 0, 64, 64, 64, 64, 128, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ };
+ if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
+ yych = *YYCURSOR;
+ if (yych == '.') goto yy950;
+ if (yych <= '/') goto yy949;
+ if (yych <= '9') goto yy951;
+yy949:
+ YYCURSOR = YYMARKER;
+ goto yy953;
+yy950:
+ yych = *++YYCURSOR;
+ if (yych <= '/') goto yy949;
+ if (yych >= ':') goto yy949;
+yy951:
+ YYMARKER = ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yybm[0+yych] & 64) {
+ goto yy951;
+ }
+ if (yych <= 'E') {
+ if (yych == '?') goto yy954;
+ if (yych >= 'A') goto yy955;
+ } else {
+ if (yych <= '\\') {
+ if (yych >= '\\') goto yy957;
+ } else {
+ if (yych <= '`') goto yy953;
+ if (yych <= 'e') goto yy955;
+ }
+ }
+yy953:
+#line 450 "cpp.re"
+ { BOOST_WAVE_RET(T_PP_NUMBER); }
+#line 6112 "cpp_re.inc"
+yy954:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych == '?') goto yy958;
+ goto yy949;
+yy955:
+ YYMARKER = ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yybm[0+yych] & 128) {
+ goto yy955;
+ }
+ if (yych <= '>') {
+ if (yych <= '+') {
+ if (yych == '$') goto yy951;
+ if (yych <= '*') goto yy953;
+ goto yy951;
+ } else {
+ if (yych <= '.') {
+ if (yych <= ',') goto yy953;
+ goto yy951;
+ } else {
+ if (yych <= '/') goto yy953;
+ if (yych <= '9') goto yy951;
+ goto yy953;
+ }
+ }
+ } else {
+ if (yych <= '\\') {
+ if (yych <= '@') {
+ if (yych <= '?') goto yy954;
+ goto yy953;
+ } else {
+ if (yych <= 'Z') goto yy951;
+ if (yych <= '[') goto yy953;
+ }
+ } else {
+ if (yych <= '_') {
+ if (yych <= '^') goto yy953;
+ goto yy951;
+ } else {
+ if (yych <= '`') goto yy953;
+ if (yych <= 'z') goto yy951;
+ goto yy953;
+ }
+ }
+ }
+yy957:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych == 'U') goto yy959;
+ if (yych == 'u') goto yy960;
+ goto yy949;
+yy958:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych == '/') goto yy957;
+ goto yy949;
+yy959:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy949;
+ if (yych <= '9') goto yy961;
+ goto yy949;
+ } else {
+ if (yych <= 'F') goto yy961;
+ if (yych <= '`') goto yy949;
+ if (yych <= 'f') goto yy961;
+ goto yy949;
+ }
+yy960:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy949;
+ if (yych <= '9') goto yy962;
+ goto yy949;
+ } else {
+ if (yych <= 'F') goto yy962;
+ if (yych <= '`') goto yy949;
+ if (yych <= 'f') goto yy962;
+ goto yy949;
+ }
+yy961:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy949;
+ if (yych <= '9') goto yy963;
+ goto yy949;
+ } else {
+ if (yych <= 'F') goto yy963;
+ if (yych <= '`') goto yy949;
+ if (yych <= 'f') goto yy963;
+ goto yy949;
+ }
+yy962:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy949;
+ if (yych <= '9') goto yy964;
+ goto yy949;
+ } else {
+ if (yych <= 'F') goto yy964;
+ if (yych <= '`') goto yy949;
+ if (yych <= 'f') goto yy964;
+ goto yy949;
+ }
+yy963:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy949;
+ if (yych <= '9') goto yy965;
+ goto yy949;
+ } else {
+ if (yych <= 'F') goto yy965;
+ if (yych <= '`') goto yy949;
+ if (yych <= 'f') goto yy965;
+ goto yy949;
+ }
+yy964:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy949;
+ if (yych <= '9') goto yy966;
+ goto yy949;
+ } else {
+ if (yych <= 'F') goto yy966;
+ if (yych <= '`') goto yy949;
+ if (yych <= 'f') goto yy966;
+ goto yy949;
+ }
+yy965:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy949;
+ if (yych <= '9') goto yy960;
+ goto yy949;
+ } else {
+ if (yych <= 'F') goto yy960;
+ if (yych <= '`') goto yy949;
+ if (yych <= 'f') goto yy960;
+ goto yy949;
+ }
+yy966:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy949;
+ if (yych <= '9') goto yy951;
+ goto yy949;
+ } else {
+ if (yych <= 'F') goto yy951;
+ if (yych <= '`') goto yy949;
+ if (yych <= 'f') goto yy951;
+ goto yy949;
+ }
+}
+#line 451 "cpp.re"
+
+ }
+ else {
+
+#line 6292 "cpp_re.inc"
+{
+ YYCTYPE yych;
+ unsigned int yyaccept = 0;
+ static const unsigned char yybm[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 224, 224, 224, 224, 224, 224, 224, 224,
+ 160, 160, 0, 0, 0, 0, 0, 0,
+ 0, 128, 128, 128, 128, 128, 128, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 128, 128, 128, 128, 128, 128, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ };
+ if ((YYLIMIT - YYCURSOR) < 4) YYFILL(4);
+ yych = *YYCURSOR;
+ if (yych <= '/') {
+ if (yych == '.') goto yy970;
+ } else {
+ if (yych <= '0') goto yy971;
+ if (yych <= '9') goto yy973;
+ }
+yy969:
+ YYCURSOR = YYMARKER;
+ if (yyaccept == 0) {
+ goto yy972;
+ } else {
+ goto yy977;
+ }
+yy970:
+ yych = *++YYCURSOR;
+ if (yych <= '/') goto yy969;
+ if (yych <= '9') goto yy975;
+ goto yy969;
+yy971:
+ yyaccept = 0;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == 'X') goto yy983;
+ if (yych == 'x') goto yy983;
+ goto yy979;
+yy972:
+#line 458 "cpp.re"
+ { goto integer_suffix; }
+#line 6359 "cpp_re.inc"
+yy973:
+ yyaccept = 0;
+ YYMARKER = ++YYCURSOR;
+ if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3);
+ yych = *YYCURSOR;
+ if (yybm[0+yych] & 32) {
+ goto yy973;
+ }
+ if (yych <= 'D') {
+ if (yych != '.') goto yy972;
+ } else {
+ if (yych <= 'E') goto yy982;
+ if (yych == 'e') goto yy982;
+ goto yy972;
+ }
+yy975:
+ yyaccept = 1;
+ YYMARKER = ++YYCURSOR;
+ if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3);
+ yych = *YYCURSOR;
+ if (yych <= 'K') {
+ if (yych <= 'D') {
+ if (yych <= '/') goto yy977;
+ if (yych <= '9') goto yy975;
+ } else {
+ if (yych <= 'E') goto yy982;
+ if (yych <= 'F') goto yy984;
+ }
+ } else {
+ if (yych <= 'e') {
+ if (yych <= 'L') goto yy985;
+ if (yych >= 'e') goto yy982;
+ } else {
+ if (yych <= 'f') goto yy984;
+ if (yych == 'l') goto yy985;
+ }
+ }
+yy977:
+#line 456 "cpp.re"
+ { BOOST_WAVE_RET(T_FLOATLIT); }
+#line 6400 "cpp_re.inc"
+yy978:
+ yyaccept = 0;
+ YYMARKER = ++YYCURSOR;
+ if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3);
+ yych = *YYCURSOR;
+yy979:
+ if (yybm[0+yych] & 64) {
+ goto yy978;
+ }
+ if (yych <= '9') {
+ if (yych == '.') goto yy975;
+ if (yych <= '/') goto yy972;
+ } else {
+ if (yych <= 'E') {
+ if (yych <= 'D') goto yy972;
+ goto yy982;
+ } else {
+ if (yych == 'e') goto yy982;
+ goto yy972;
+ }
+ }
+yy980:
+ ++YYCURSOR;
+ if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3);
+ yych = *YYCURSOR;
+ if (yych <= '9') {
+ if (yych == '.') goto yy975;
+ if (yych <= '/') goto yy969;
+ goto yy980;
+ } else {
+ if (yych <= 'E') {
+ if (yych <= 'D') goto yy969;
+ } else {
+ if (yych != 'e') goto yy969;
+ }
+ }
+yy982:
+ yych = *++YYCURSOR;
+ if (yych <= ',') {
+ if (yych == '+') goto yy986;
+ goto yy969;
+ } else {
+ if (yych <= '-') goto yy986;
+ if (yych <= '/') goto yy969;
+ if (yych <= '9') goto yy987;
+ goto yy969;
+ }
+yy983:
+ yych = *++YYCURSOR;
+ if (yybm[0+yych] & 128) {
+ goto yy989;
+ }
+ goto yy969;
+yy984:
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy991;
+ if (yych == 'l') goto yy991;
+ goto yy977;
+yy985:
+ yych = *++YYCURSOR;
+ if (yych == 'F') goto yy991;
+ if (yych == 'f') goto yy991;
+ goto yy977;
+yy986:
+ yych = *++YYCURSOR;
+ if (yych <= '/') goto yy969;
+ if (yych >= ':') goto yy969;
+yy987:
+ ++YYCURSOR;
+ if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
+ yych = *YYCURSOR;
+ if (yych <= 'K') {
+ if (yych <= '9') {
+ if (yych <= '/') goto yy977;
+ goto yy987;
+ } else {
+ if (yych == 'F') goto yy984;
+ goto yy977;
+ }
+ } else {
+ if (yych <= 'f') {
+ if (yych <= 'L') goto yy985;
+ if (yych <= 'e') goto yy977;
+ goto yy984;
+ } else {
+ if (yych == 'l') goto yy985;
+ goto yy977;
+ }
+ }
+yy989:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yybm[0+yych] & 128) {
+ goto yy989;
+ }
+ goto yy972;
+yy991:
+ ++YYCURSOR;
+ goto yy977;
+}
+#line 459 "cpp.re"
+
+ }
+}
+
+/* this subscanner is called, whenever an Integer was recognized */
+integer_suffix:
+{
+ if (s->enable_ms_extensions) {
+
+#line 6512 "cpp_re.inc"
+{
+ YYCTYPE yych;
+ if ((YYLIMIT - YYCURSOR) < 4) YYFILL(4);
+ yych = *(YYMARKER = YYCURSOR);
+ if (yych <= 'h') {
+ if (yych <= 'L') {
+ if (yych >= 'L') goto yy995;
+ } else {
+ if (yych == 'U') goto yy996;
+ }
+ } else {
+ if (yych <= 'l') {
+ if (yych <= 'i') goto yy997;
+ if (yych >= 'l') goto yy995;
+ } else {
+ if (yych == 'u') goto yy999;
+ }
+ }
+yy994:
+#line 472 "cpp.re"
+ { BOOST_WAVE_RET(T_INTLIT); }
+#line 6534 "cpp_re.inc"
+yy995:
+ yych = *++YYCURSOR;
+ if (yych <= 'U') {
+ if (yych == 'L') goto yy1000;
+ if (yych <= 'T') goto yy994;
+ goto yy1002;
+ } else {
+ if (yych <= 'l') {
+ if (yych <= 'k') goto yy994;
+ goto yy1000;
+ } else {
+ if (yych == 'u') goto yy1002;
+ goto yy994;
+ }
+ }
+yy996:
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy1003;
+ if (yych == 'l') goto yy1003;
+ goto yy994;
+yy997:
+ yych = *++YYCURSOR;
+ if (yych == '6') goto yy1004;
+yy998:
+ YYCURSOR = YYMARKER;
+ goto yy994;
+yy999:
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= 'h') {
+ if (yych == 'L') goto yy1003;
+ goto yy994;
+ } else {
+ if (yych <= 'i') goto yy997;
+ if (yych == 'l') goto yy1003;
+ goto yy994;
+ }
+yy1000:
+ yych = *++YYCURSOR;
+ if (yych == 'U') goto yy1005;
+ if (yych == 'u') goto yy1005;
+yy1001:
+#line 469 "cpp.re"
+ { BOOST_WAVE_RET(T_LONGINTLIT); }
+#line 6578 "cpp_re.inc"
+yy1002:
+ ++YYCURSOR;
+ goto yy994;
+yy1003:
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy1005;
+ if (yych == 'l') goto yy1005;
+ goto yy994;
+yy1004:
+ yych = *++YYCURSOR;
+ if (yych != '4') goto yy998;
+yy1005:
+ ++YYCURSOR;
+ goto yy1001;
+}
+#line 473 "cpp.re"
+
+ }
+ else {
+
+#line 6599 "cpp_re.inc"
+{
+ YYCTYPE yych;
+ if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3);
+ yych = *YYCURSOR;
+ if (yych <= 'U') {
+ if (yych == 'L') goto yy1009;
+ if (yych >= 'U') goto yy1010;
+ } else {
+ if (yych <= 'l') {
+ if (yych >= 'l') goto yy1009;
+ } else {
+ if (yych == 'u') goto yy1010;
+ }
+ }
+yy1008:
+#line 481 "cpp.re"
+ { BOOST_WAVE_RET(T_INTLIT); }
+#line 6617 "cpp_re.inc"
+yy1009:
+ yych = *++YYCURSOR;
+ if (yych <= 'U') {
+ if (yych == 'L') goto yy1011;
+ if (yych <= 'T') goto yy1008;
+ goto yy1013;
+ } else {
+ if (yych <= 'l') {
+ if (yych <= 'k') goto yy1008;
+ goto yy1011;
+ } else {
+ if (yych == 'u') goto yy1013;
+ goto yy1008;
+ }
+ }
+yy1010:
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy1014;
+ if (yych == 'l') goto yy1014;
+ goto yy1008;
+yy1011:
+ yych = *++YYCURSOR;
+ if (yych == 'U') goto yy1015;
+ if (yych == 'u') goto yy1015;
+yy1012:
+#line 478 "cpp.re"
+ { BOOST_WAVE_RET(T_LONGINTLIT); }
+#line 6645 "cpp_re.inc"
+yy1013:
+ ++YYCURSOR;
+ goto yy1008;
+yy1014:
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy1015;
+ if (yych != 'l') goto yy1008;
+yy1015:
+ ++YYCURSOR;
+ goto yy1012;
+}
+#line 482 "cpp.re"
+
+ }
+}
+
+/* this subscanner is invoked for C++0x extended character literals */
+extcharlit:
+{
+
+#line 6666 "cpp_re.inc"
+{
+ YYCTYPE yych;
+ static const unsigned char yybm[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 0, 0, 0, 0, 0, 0,
+ 0, 128, 128, 128, 128, 128, 128, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 128, 128, 128, 128, 128, 128, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ };
+ if ((YYLIMIT - YYCURSOR) < 13) YYFILL(13);
+ yych = *YYCURSOR;
+ if (yych <= 0x1F) {
+ if (yych <= '\n') {
+ if (yych <= 0x08) goto yy1018;
+ if (yych <= '\t') goto yy1019;
+ goto yy1021;
+ } else {
+ if (yych <= '\f') goto yy1019;
+ if (yych <= '\r') goto yy1021;
+ }
+ } else {
+ if (yych <= '>') {
+ if (yych == '\'') goto yy1021;
+ goto yy1019;
+ } else {
+ if (yych <= '?') goto yy1022;
+ if (yych == '\\') goto yy1023;
+ goto yy1019;
+ }
+ }
+yy1018:
+ YYCURSOR = YYMARKER;
+ goto yy1020;
+yy1019:
+ yych = *++YYCURSOR;
+ if (yych == '\'') goto yy1024;
+yy1020:
+#line 494 "cpp.re"
+ { BOOST_WAVE_RET(TOKEN_FROM_ID(*s->tok, UnknownTokenType)); }
+#line 6733 "cpp_re.inc"
+yy1021:
+ ++YYCURSOR;
+ goto yy1020;
+yy1022:
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == '\'') goto yy1024;
+ if (yych == '?') goto yy1026;
+ goto yy1020;
+yy1023:
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '`') {
+ if (yych <= '7') {
+ if (yych <= '&') {
+ if (yych == '"') goto yy1027;
+ goto yy1020;
+ } else {
+ if (yych <= '\'') goto yy1027;
+ if (yych <= '/') goto yy1020;
+ goto yy1028;
+ }
+ } else {
+ if (yych <= 'T') {
+ if (yych == '?') goto yy1029;
+ goto yy1020;
+ } else {
+ if (yych <= 'U') goto yy1030;
+ if (yych == '\\') goto yy1027;
+ goto yy1020;
+ }
+ }
+ } else {
+ if (yych <= 'r') {
+ if (yych <= 'f') {
+ if (yych <= 'b') goto yy1027;
+ if (yych <= 'e') goto yy1020;
+ goto yy1027;
+ } else {
+ if (yych == 'n') goto yy1027;
+ if (yych <= 'q') goto yy1020;
+ goto yy1027;
+ }
+ } else {
+ if (yych <= 'u') {
+ if (yych <= 's') goto yy1020;
+ if (yych <= 't') goto yy1027;
+ goto yy1031;
+ } else {
+ if (yych <= 'v') goto yy1027;
+ if (yych == 'x') goto yy1032;
+ goto yy1020;
+ }
+ }
+ }
+yy1024:
+ ++YYCURSOR;
+#line 491 "cpp.re"
+ { BOOST_WAVE_RET(T_CHARLIT); }
+#line 6791 "cpp_re.inc"
+yy1026:
+ yych = *++YYCURSOR;
+ if (yych == '/') goto yy1033;
+ goto yy1018;
+yy1027:
+ yych = *++YYCURSOR;
+ if (yych == '\'') goto yy1024;
+ goto yy1018;
+yy1028:
+ yych = *++YYCURSOR;
+ if (yych == '\'') goto yy1024;
+ if (yych <= '/') goto yy1018;
+ if (yych <= '7') goto yy1034;
+ goto yy1018;
+yy1029:
+ yych = *++YYCURSOR;
+ if (yych == '\'') goto yy1024;
+ if (yych == '?') goto yy1035;
+ goto yy1018;
+yy1030:
+ yych = *++YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy1018;
+ if (yych <= '9') goto yy1036;
+ goto yy1018;
+ } else {
+ if (yych <= 'F') goto yy1036;
+ if (yych <= '`') goto yy1018;
+ if (yych <= 'f') goto yy1036;
+ goto yy1018;
+ }
+yy1031:
+ yych = *++YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy1018;
+ if (yych <= '9') goto yy1037;
+ goto yy1018;
+ } else {
+ if (yych <= 'F') goto yy1037;
+ if (yych <= '`') goto yy1018;
+ if (yych <= 'f') goto yy1037;
+ goto yy1018;
+ }
+yy1032:
+ yych = *++YYCURSOR;
+ if (yych == '\'') goto yy1018;
+ goto yy1039;
+yy1033:
+ yych = *++YYCURSOR;
+ if (yych <= '`') {
+ if (yych <= '7') {
+ if (yych <= '&') {
+ if (yych == '"') goto yy1027;
+ goto yy1018;
+ } else {
+ if (yych <= '\'') goto yy1027;
+ if (yych <= '/') goto yy1018;
+ goto yy1028;
+ }
+ } else {
+ if (yych <= 'T') {
+ if (yych == '?') goto yy1029;
+ goto yy1018;
+ } else {
+ if (yych <= 'U') goto yy1030;
+ if (yych == '\\') goto yy1027;
+ goto yy1018;
+ }
+ }
+ } else {
+ if (yych <= 'r') {
+ if (yych <= 'f') {
+ if (yych <= 'b') goto yy1027;
+ if (yych <= 'e') goto yy1018;
+ goto yy1027;
+ } else {
+ if (yych == 'n') goto yy1027;
+ if (yych <= 'q') goto yy1018;
+ goto yy1027;
+ }
+ } else {
+ if (yych <= 'u') {
+ if (yych <= 's') goto yy1018;
+ if (yych <= 't') goto yy1027;
+ goto yy1031;
+ } else {
+ if (yych <= 'v') goto yy1027;
+ if (yych == 'x') goto yy1032;
+ goto yy1018;
+ }
+ }
+ }
+yy1034:
+ yych = *++YYCURSOR;
+ if (yych == '\'') goto yy1024;
+ if (yych <= '/') goto yy1018;
+ if (yych <= '7') goto yy1027;
+ goto yy1018;
+yy1035:
+ yych = *++YYCURSOR;
+ if (yych == '/') goto yy1027;
+ goto yy1018;
+yy1036:
+ yych = *++YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy1018;
+ if (yych <= '9') goto yy1040;
+ goto yy1018;
+ } else {
+ if (yych <= 'F') goto yy1040;
+ if (yych <= '`') goto yy1018;
+ if (yych <= 'f') goto yy1040;
+ goto yy1018;
+ }
+yy1037:
+ yych = *++YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy1018;
+ if (yych <= '9') goto yy1041;
+ goto yy1018;
+ } else {
+ if (yych <= 'F') goto yy1041;
+ if (yych <= '`') goto yy1018;
+ if (yych <= 'f') goto yy1041;
+ goto yy1018;
+ }
+yy1038:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+yy1039:
+ if (yybm[0+yych] & 128) {
+ goto yy1038;
+ }
+ if (yych == '\'') goto yy1024;
+ goto yy1018;
+yy1040:
+ yych = *++YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy1018;
+ if (yych <= '9') goto yy1042;
+ goto yy1018;
+ } else {
+ if (yych <= 'F') goto yy1042;
+ if (yych <= '`') goto yy1018;
+ if (yych <= 'f') goto yy1042;
+ goto yy1018;
+ }
+yy1041:
+ yych = *++YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy1018;
+ if (yych <= '9') goto yy1043;
+ goto yy1018;
+ } else {
+ if (yych <= 'F') goto yy1043;
+ if (yych <= '`') goto yy1018;
+ if (yych <= 'f') goto yy1043;
+ goto yy1018;
+ }
+yy1042:
+ yych = *++YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy1018;
+ if (yych <= '9') goto yy1031;
+ goto yy1018;
+ } else {
+ if (yych <= 'F') goto yy1031;
+ if (yych <= '`') goto yy1018;
+ if (yych <= 'f') goto yy1031;
+ goto yy1018;
+ }
+yy1043:
+ yych = *++YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy1018;
+ if (yych <= '9') goto yy1027;
+ goto yy1018;
+ } else {
+ if (yych <= 'F') goto yy1027;
+ if (yych <= '`') goto yy1018;
+ if (yych <= 'f') goto yy1027;
+ goto yy1018;
+ }
+}
+#line 495 "cpp.re"
+
+}
+
+/* this subscanner is invoked for C++0x extended character string literals */
+extstringlit:
+{
+
+#line 6985 "cpp_re.inc"
+{
+ YYCTYPE yych;
+ unsigned int yyaccept = 0;
+ static const unsigned char yybm[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 32, 0, 32, 32, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 32, 32, 0, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 64,
+ 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 128, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 32, 32, 32, 32,
+ };
+ if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
+ yych = *YYCURSOR;
+ if (yych <= 0x1F) {
+ if (yych <= '\n') {
+ if (yych <= 0x08) goto yy1046;
+ if (yych <= '\t') goto yy1047;
+ goto yy1049;
+ } else {
+ if (yych <= '\f') goto yy1047;
+ if (yych <= '\r') goto yy1049;
+ }
+ } else {
+ if (yych <= '>') {
+ if (yych == '"') goto yy1050;
+ goto yy1047;
+ } else {
+ if (yych <= '?') goto yy1052;
+ if (yych == '\\') goto yy1053;
+ goto yy1047;
+ }
+ }
+yy1046:
+ YYCURSOR = YYMARKER;
+ if (yyaccept == 0) {
+ goto yy1048;
+ } else {
+ goto yy1051;
+ }
+yy1047:
+ yyaccept = 0;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy1055;
+ } else {
+ if (yych <= '\f') goto yy1055;
+ if (yych >= ' ') goto yy1055;
+ }
+yy1048:
+#line 506 "cpp.re"
+ { BOOST_WAVE_RET(TOKEN_FROM_ID(*s->tok, UnknownTokenType)); }
+#line 7063 "cpp_re.inc"
+yy1049:
+ ++YYCURSOR;
+ goto yy1048;
+yy1050:
+ ++YYCURSOR;
+yy1051:
+#line 503 "cpp.re"
+ { BOOST_WAVE_RET(T_STRINGLIT); }
+#line 7072 "cpp_re.inc"
+yy1052:
+ yyaccept = 0;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[0+yych] & 64) {
+ goto yy1058;
+ }
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy1055;
+ goto yy1048;
+ } else {
+ if (yych <= '\f') goto yy1055;
+ if (yych <= 0x1F) goto yy1048;
+ goto yy1055;
+ }
+yy1053:
+ yyaccept = 0;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '`') {
+ if (yych <= '7') {
+ if (yych <= '&') {
+ if (yych != '"') goto yy1048;
+ } else {
+ if (yych <= '\'') goto yy1054;
+ if (yych <= '/') goto yy1048;
+ }
+ } else {
+ if (yych <= 'T') {
+ if (yych != '?') goto yy1048;
+ } else {
+ if (yych <= 'U') goto yy1060;
+ if (yych != '\\') goto yy1048;
+ }
+ }
+ } else {
+ if (yych <= 'r') {
+ if (yych <= 'f') {
+ if (yych <= 'b') goto yy1054;
+ if (yych <= 'e') goto yy1048;
+ } else {
+ if (yych == 'n') goto yy1054;
+ if (yych <= 'q') goto yy1048;
+ }
+ } else {
+ if (yych <= 'u') {
+ if (yych <= 's') goto yy1048;
+ if (yych >= 'u') goto yy1061;
+ } else {
+ if (yych <= 'v') goto yy1054;
+ if (yych == 'x') goto yy1062;
+ goto yy1048;
+ }
+ }
+ }
+yy1054:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+yy1055:
+ if (yybm[0+yych] & 32) {
+ goto yy1054;
+ }
+ if (yych <= 0x1F) goto yy1046;
+ if (yych <= '"') goto yy1050;
+ if (yych >= '@') goto yy1057;
+yy1056:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yybm[0+yych] & 32) {
+ goto yy1054;
+ }
+ if (yych <= 0x1F) goto yy1046;
+ if (yych <= '"') goto yy1050;
+ if (yych <= '?') goto yy1058;
+yy1057:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '`') {
+ if (yych <= '7') {
+ if (yych <= '&') {
+ if (yych == '"') goto yy1054;
+ goto yy1046;
+ } else {
+ if (yych <= '\'') goto yy1054;
+ if (yych <= '/') goto yy1046;
+ goto yy1054;
+ }
+ } else {
+ if (yych <= 'T') {
+ if (yych == '?') goto yy1054;
+ goto yy1046;
+ } else {
+ if (yych <= 'U') goto yy1060;
+ if (yych == '\\') goto yy1054;
+ goto yy1046;
+ }
+ }
+ } else {
+ if (yych <= 'r') {
+ if (yych <= 'f') {
+ if (yych <= 'b') goto yy1054;
+ if (yych <= 'e') goto yy1046;
+ goto yy1054;
+ } else {
+ if (yych == 'n') goto yy1054;
+ if (yych <= 'q') goto yy1046;
+ goto yy1054;
+ }
+ } else {
+ if (yych <= 'u') {
+ if (yych <= 's') goto yy1046;
+ if (yych <= 't') goto yy1054;
+ goto yy1061;
+ } else {
+ if (yych <= 'v') goto yy1054;
+ if (yych == 'x') goto yy1062;
+ goto yy1046;
+ }
+ }
+ }
+yy1058:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yybm[0+yych] & 64) {
+ goto yy1058;
+ }
+ if (yych <= '!') {
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy1054;
+ goto yy1046;
+ } else {
+ if (yych <= '\f') goto yy1054;
+ if (yych <= 0x1F) goto yy1046;
+ goto yy1054;
+ }
+ } else {
+ if (yych <= '/') {
+ if (yych <= '"') goto yy1050;
+ if (yych <= '.') goto yy1054;
+ goto yy1063;
+ } else {
+ if (yych == '\\') goto yy1057;
+ goto yy1054;
+ }
+ }
+yy1060:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy1046;
+ if (yych <= '9') goto yy1065;
+ goto yy1046;
+ } else {
+ if (yych <= 'F') goto yy1065;
+ if (yych <= '`') goto yy1046;
+ if (yych <= 'f') goto yy1065;
+ goto yy1046;
+ }
+yy1061:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy1046;
+ if (yych <= '9') goto yy1066;
+ goto yy1046;
+ } else {
+ if (yych <= 'F') goto yy1066;
+ if (yych <= '`') goto yy1046;
+ if (yych <= 'f') goto yy1066;
+ goto yy1046;
+ }
+yy1062:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy1046;
+ if (yych <= '9') goto yy1054;
+ goto yy1046;
+ } else {
+ if (yych <= 'F') goto yy1054;
+ if (yych <= '`') goto yy1046;
+ if (yych <= 'f') goto yy1054;
+ goto yy1046;
+ }
+yy1063:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yybm[0+yych] & 32) {
+ goto yy1054;
+ }
+ if (yych <= 0x1F) goto yy1046;
+ if (yych <= '"') goto yy1067;
+ if (yych <= '?') goto yy1056;
+ goto yy1063;
+yy1065:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy1046;
+ if (yych <= '9') goto yy1068;
+ goto yy1046;
+ } else {
+ if (yych <= 'F') goto yy1068;
+ if (yych <= '`') goto yy1046;
+ if (yych <= 'f') goto yy1068;
+ goto yy1046;
+ }
+yy1066:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy1046;
+ if (yych <= '9') goto yy1069;
+ goto yy1046;
+ } else {
+ if (yych <= 'F') goto yy1069;
+ if (yych <= '`') goto yy1046;
+ if (yych <= 'f') goto yy1069;
+ goto yy1046;
+ }
+yy1067:
+ yyaccept = 1;
+ YYMARKER = ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yybm[0+yych] & 32) {
+ goto yy1054;
+ }
+ if (yych <= 0x1F) goto yy1051;
+ if (yych <= '"') goto yy1050;
+ if (yych <= '?') goto yy1056;
+ goto yy1057;
+yy1068:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy1046;
+ if (yych <= '9') goto yy1070;
+ goto yy1046;
+ } else {
+ if (yych <= 'F') goto yy1070;
+ if (yych <= '`') goto yy1046;
+ if (yych <= 'f') goto yy1070;
+ goto yy1046;
+ }
+yy1069:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy1046;
+ if (yych <= '9') goto yy1062;
+ goto yy1046;
+ } else {
+ if (yych <= 'F') goto yy1062;
+ if (yych <= '`') goto yy1046;
+ if (yych <= 'f') goto yy1062;
+ goto yy1046;
+ }
+yy1070:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy1046;
+ if (yych <= '9') goto yy1061;
+ goto yy1046;
+ } else {
+ if (yych <= 'F') goto yy1061;
+ if (yych <= '`') goto yy1046;
+ if (yych <= 'f') goto yy1061;
+ goto yy1046;
+ }
+}
+#line 507 "cpp.re"
+
+}
+
+extrawstringlit:
+{
+ // we have consumed the double quote but not the lparen
+ // at this point we may see a delimiter
+
+
+#line 7366 "cpp_re.inc"
+{
+ YYCTYPE yych;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '(') {
+ if (yych <= 0x1F) goto yy1073;
+ if (yych <= '\'') goto yy1075;
+ goto yy1077;
+ } else {
+ if (yych <= ')') goto yy1073;
+ if (yych != '\\') goto yy1075;
+ }
+yy1073:
+ ++YYCURSOR;
+#line 516 "cpp.re"
+ {
+ (*s->error_proc)(s, lexing_exception::generic_lexing_error,
+ "Invalid character in raw string delimiter ('%c')", yych);
+ }
+#line 7386 "cpp_re.inc"
+yy1075:
+ ++YYCURSOR;
+#line 523 "cpp.re"
+ {
+ rawstringdelim += yych;
+ if (rawstringdelim.size() > 16)
+ {
+ (*s->error_proc)(s, lexing_exception::generic_lexing_error,
+ "Raw string delimiter of excessive length (\"%s\") in input stream",
+ rawstringdelim.c_str());
+ }
+ goto extrawstringlit;
+ }
+#line 7400 "cpp_re.inc"
+yy1077:
+ ++YYCURSOR;
+#line 535 "cpp.re"
+ {
+ rawstringdelim = ")" + rawstringdelim;
+ goto extrawstringbody;
+ }
+#line 7408 "cpp_re.inc"
+}
+#line 540 "cpp.re"
+
+}
+
+extrawstringbody:
+{
+
+#line 7417 "cpp_re.inc"
+{
+ YYCTYPE yych;
+ static const unsigned char yybm[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 0, 0, 0, 0, 0, 0,
+ 0, 128, 128, 128, 128, 128, 128, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 128, 128, 128, 128, 128, 128, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ };
+ if ((YYLIMIT - YYCURSOR) < 12) YYFILL(12);
+ yych = *YYCURSOR;
+ if (yych <= 0x1F) {
+ if (yych <= '\n') {
+ if (yych <= 0x08) goto yy1081;
+ if (yych <= '\t') goto yy1083;
+ goto yy1085;
+ } else {
+ if (yych <= '\f') goto yy1083;
+ if (yych <= '\r') goto yy1087;
+ }
+ } else {
+ if (yych <= '>') {
+ if (yych == '"') goto yy1088;
+ goto yy1083;
+ } else {
+ if (yych <= '?') goto yy1090;
+ if (yych == '\\') goto yy1091;
+ goto yy1083;
+ }
+ }
+yy1081:
+ ++YYCURSOR;
+#line 547 "cpp.re"
+ {
+ (*s->error_proc)(s, lexing_exception::generic_lexing_error,
+ "Invalid character in raw string body ('%c')", yych);
+ }
+#line 7482 "cpp_re.inc"
+yy1083:
+ ++YYCURSOR;
+yy1084:
+#line 560 "cpp.re"
+ {
+ goto extrawstringbody;
+ }
+#line 7490 "cpp_re.inc"
+yy1085:
+ ++YYCURSOR;
+yy1086:
+#line 553 "cpp.re"
+ {
+ s->line += count_backslash_newlines(s, cursor) +1;
+ cursor.column = 1;
+ goto extrawstringbody;
+ }
+#line 7500 "cpp_re.inc"
+yy1087:
+ yych = *++YYCURSOR;
+ if (yych == '\n') goto yy1085;
+ goto yy1086;
+yy1088:
+ ++YYCURSOR;
+#line 565 "cpp.re"
+ {
+ // check to see if we have completed a delimiter
+ if (string_type((char *)(YYCURSOR - rawstringdelim.size() - 1),
+ (char *)(YYCURSOR - 1)) == rawstringdelim)
+ {
+ BOOST_WAVE_RET(T_RAWSTRINGLIT);
+ } else {
+ goto extrawstringbody;
+ }
+ }
+#line 7518 "cpp_re.inc"
+yy1090:
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == '?') goto yy1092;
+ goto yy1084;
+yy1091:
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '`') {
+ if (yych <= '7') {
+ if (yych <= '&') {
+ if (yych == '"') goto yy1083;
+ goto yy1084;
+ } else {
+ if (yych <= '\'') goto yy1083;
+ if (yych <= '/') goto yy1084;
+ goto yy1094;
+ }
+ } else {
+ if (yych <= 'T') {
+ if (yych == '?') goto yy1095;
+ goto yy1084;
+ } else {
+ if (yych <= 'U') goto yy1096;
+ if (yych == '\\') goto yy1083;
+ goto yy1084;
+ }
+ }
+ } else {
+ if (yych <= 'r') {
+ if (yych <= 'f') {
+ if (yych <= 'b') goto yy1083;
+ if (yych <= 'e') goto yy1084;
+ goto yy1083;
+ } else {
+ if (yych == 'n') goto yy1083;
+ if (yych <= 'q') goto yy1084;
+ goto yy1083;
+ }
+ } else {
+ if (yych <= 'u') {
+ if (yych <= 's') goto yy1084;
+ if (yych <= 't') goto yy1083;
+ goto yy1097;
+ } else {
+ if (yych <= 'v') goto yy1083;
+ if (yych == 'x') goto yy1098;
+ goto yy1084;
+ }
+ }
+ }
+yy1092:
+ yych = *++YYCURSOR;
+ if (yych == '/') goto yy1099;
+yy1093:
+ YYCURSOR = YYMARKER;
+ goto yy1084;
+yy1094:
+ yych = *++YYCURSOR;
+ if (yych <= '/') goto yy1084;
+ if (yych <= '7') goto yy1100;
+ goto yy1084;
+yy1095:
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == '?') goto yy1101;
+ goto yy1084;
+yy1096:
+ yych = *++YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy1093;
+ if (yych <= '9') goto yy1102;
+ goto yy1093;
+ } else {
+ if (yych <= 'F') goto yy1102;
+ if (yych <= '`') goto yy1093;
+ if (yych <= 'f') goto yy1102;
+ goto yy1093;
+ }
+yy1097:
+ yych = *++YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy1093;
+ if (yych <= '9') goto yy1103;
+ goto yy1093;
+ } else {
+ if (yych <= 'F') goto yy1103;
+ if (yych <= '`') goto yy1093;
+ if (yych <= 'f') goto yy1103;
+ goto yy1093;
+ }
+yy1098:
+ yych = *++YYCURSOR;
+ if (yybm[0+yych] & 128) {
+ goto yy1104;
+ }
+ goto yy1093;
+yy1099:
+ yych = *++YYCURSOR;
+ if (yych <= '`') {
+ if (yych <= '7') {
+ if (yych <= '&') {
+ if (yych == '"') goto yy1083;
+ goto yy1093;
+ } else {
+ if (yych <= '\'') goto yy1083;
+ if (yych <= '/') goto yy1093;
+ goto yy1094;
+ }
+ } else {
+ if (yych <= 'T') {
+ if (yych == '?') goto yy1095;
+ goto yy1093;
+ } else {
+ if (yych <= 'U') goto yy1096;
+ if (yych == '\\') goto yy1083;
+ goto yy1093;
+ }
+ }
+ } else {
+ if (yych <= 'r') {
+ if (yych <= 'f') {
+ if (yych <= 'b') goto yy1083;
+ if (yych <= 'e') goto yy1093;
+ goto yy1083;
+ } else {
+ if (yych == 'n') goto yy1083;
+ if (yych <= 'q') goto yy1093;
+ goto yy1083;
+ }
+ } else {
+ if (yych <= 'u') {
+ if (yych <= 's') goto yy1093;
+ if (yych <= 't') goto yy1083;
+ goto yy1097;
+ } else {
+ if (yych <= 'v') goto yy1083;
+ if (yych == 'x') goto yy1098;
+ goto yy1093;
+ }
+ }
+ }
+yy1100:
+ yych = *++YYCURSOR;
+ if (yych <= '/') goto yy1084;
+ if (yych <= '7') goto yy1083;
+ goto yy1084;
+yy1101:
+ yych = *++YYCURSOR;
+ if (yych == '/') goto yy1083;
+ goto yy1093;
+yy1102:
+ yych = *++YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy1093;
+ if (yych <= '9') goto yy1106;
+ goto yy1093;
+ } else {
+ if (yych <= 'F') goto yy1106;
+ if (yych <= '`') goto yy1093;
+ if (yych <= 'f') goto yy1106;
+ goto yy1093;
+ }
+yy1103:
+ yych = *++YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy1093;
+ if (yych <= '9') goto yy1107;
+ goto yy1093;
+ } else {
+ if (yych <= 'F') goto yy1107;
+ if (yych <= '`') goto yy1093;
+ if (yych <= 'f') goto yy1107;
+ goto yy1093;
+ }
+yy1104:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yybm[0+yych] & 128) {
+ goto yy1104;
+ }
+ goto yy1084;
+yy1106:
+ yych = *++YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy1093;
+ if (yych <= '9') goto yy1108;
+ goto yy1093;
+ } else {
+ if (yych <= 'F') goto yy1108;
+ if (yych <= '`') goto yy1093;
+ if (yych <= 'f') goto yy1108;
+ goto yy1093;
+ }
+yy1107:
+ yych = *++YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy1093;
+ if (yych <= '9') goto yy1109;
+ goto yy1093;
+ } else {
+ if (yych <= 'F') goto yy1109;
+ if (yych <= '`') goto yy1093;
+ if (yych <= 'f') goto yy1109;
+ goto yy1093;
+ }
+yy1108:
+ yych = *++YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy1093;
+ if (yych <= '9') goto yy1097;
+ goto yy1093;
+ } else {
+ if (yych <= 'F') goto yy1097;
+ if (yych <= '`') goto yy1093;
+ if (yych <= 'f') goto yy1097;
+ goto yy1093;
+ }
+yy1109:
+ yych = *++YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy1093;
+ if (yych <= '9') goto yy1083;
+ goto yy1093;
+ } else {
+ if (yych <= 'F') goto yy1083;
+ if (yych <= '`') goto yy1093;
+ if (yych <= 'f') goto yy1083;
+ goto yy1093;
+ }
+}
+#line 575 "cpp.re"
+
+}