diff --git a/include/boost/wave/cpplexer/re2clex/cpp.re b/include/boost/wave/cpplexer/re2clex/cpp.re index b63c4ba8e..d3cfecc0b 100644 --- a/include/boost/wave/cpplexer/re2clex/cpp.re +++ b/include/boost/wave/cpplexer/re2clex/cpp.re @@ -22,13 +22,16 @@ anyctrl = [\001-\037]; OctalDigit = [0-7]; Digit = [0-9]; HexDigit = [a-fA-F0-9]; -Integer = (("0" [xX] HexDigit+) | ("0" OctalDigit*) | ([1-9] Digit*)); +BinaryDigit = [01]; +Integer = (("0" [xX] HexDigit ([']? HexDigit)*) | ("0" ([']? OctalDigit)*) | ([1-9] ([']? Digit)*) | ("0" [bB] BinaryDigit ([']? BinaryDigit)*)); ExponentStart = [Ee] [+-]; -ExponentPart = [Ee] [+-]? Digit+; -FractionalConstant = (Digit* "." Digit+) | (Digit+ "."); +SeparatedDigits = Digit ([']? Digit)*; +ExponentPart = [Ee] [+-]? SeparatedDigits; +FractionalConstant = (SeparatedDigits? "." SeparatedDigits) | (SeparatedDigits "."); FloatingSuffix = [fF] [lL]? | [lL] [fF]?; IntegerSuffix = [uU] [lL]? | [lL] [uU]?; LongIntegerSuffix = [uU] ("ll" | "LL") | ("ll" | "LL") [uU]?; +SizeTSuffix = ([uU]? [zZ]) | ([zZ] [uU]?); MSLongIntegerSuffix = "u"? "i64"; Backslash = [\\] | "??/"; EscapeSequence = Backslash ([abeEfnrtv?'"] | Backslash | "x" HexDigit+ | OctalDigit OctalDigit? OctalDigit?); @@ -89,6 +92,7 @@ NonDigit = [a-zA-Z_$] | UniversalChar; "inline" { BOOST_WAVE_RET(T_INLINE); } "int" { BOOST_WAVE_RET(T_INT); } "long" { BOOST_WAVE_RET(T_LONG); } + "module" { BOOST_WAVE_RET(s->act_in_cpp2a_mode ? T_MODULE : T_IDENTIFIER); } "mutable" { BOOST_WAVE_RET(T_MUTABLE); } "namespace" { BOOST_WAVE_RET(T_NAMESPACE); } "new" { BOOST_WAVE_RET(T_NEW); } @@ -488,24 +492,34 @@ pp_number: /* this subscanner is called, whenever an Integer was recognized */ integer_suffix: { - if (s->enable_ms_extensions) { + auto suffix_start = YYCURSOR; + /*!re2c - LongIntegerSuffix | MSLongIntegerSuffix - { BOOST_WAVE_RET(T_LONGINTLIT); } + LongIntegerSuffix + { BOOST_WAVE_RET(T_LONGINTLIT); } + + MSLongIntegerSuffix { + if (s->enable_ms_extensions) { + BOOST_WAVE_RET(T_LONGINTLIT); + } else { + YYCURSOR = suffix_start; + BOOST_WAVE_RET(T_INTLIT); + } + } - IntegerSuffix? - { BOOST_WAVE_RET(T_INTLIT); } - */ + SizeTSuffix { + if (s->act_in_cpp2b_mode) { + BOOST_WAVE_RET(T_SIZETLIT); + } else { + YYCURSOR = suffix_start; + BOOST_WAVE_RET(T_INTLIT); + } } - else { - /*!re2c - LongIntegerSuffix - { BOOST_WAVE_RET(T_LONGINTLIT); } - IntegerSuffix? - { BOOST_WAVE_RET(T_INTLIT); } + IntegerSuffix? + { BOOST_WAVE_RET(T_INTLIT); } + */ - } // re2c will complain about -Wmatch-empty-string above // it's OK because we've already matched an integer diff --git a/include/boost/wave/cpplexer/re2clex/cpp_re.inc b/include/boost/wave/cpplexer/re2clex/cpp_re.inc index d71915ceb..995c170f0 100644 --- a/include/boost/wave/cpplexer/re2clex/cpp_re.inc +++ b/include/boost/wave/cpplexer/re2clex/cpp_re.inc @@ -1,4 +1,4 @@ -/* Generated by re2c 1.0.2 on Mon Nov 7 21:56:07 2022 */ +/* Generated by re2c 1.0.2 on Sun Oct 26 21:28:12 2025 */ #line 1 "cpp.re" /*============================================================================= Boost.Wave: A Standard compliant C++ preprocessor library @@ -17,7 +17,7 @@ handle errors better. =============================================================================*/ -#line 41 "cpp.re" +#line 44 "cpp.re" @@ -228,7 +228,7 @@ } yy2: ++YYCURSOR; -#line 354 "cpp.re" +#line 358 "cpp.re" { if (s->eof && cursor != s->eof) { @@ -241,7 +241,7 @@ yy2: #line 242 "cpp_re.inc" yy4: ++YYCURSOR; -#line 367 "cpp.re" +#line 371 "cpp.re" { // flag the error BOOST_WAVE_UPDATE_CURSOR(); // adjust the input cursor @@ -256,13 +256,13 @@ yy6: if (yybm[256+yych] & 64) { goto yy6; } -#line 344 "cpp.re" +#line 348 "cpp.re" { BOOST_WAVE_RET(T_SPACE); } #line 262 "cpp_re.inc" yy9: ++YYCURSOR; yy10: -#line 347 "cpp.re" +#line 351 "cpp.re" { s->line++; cursor.column = 1; @@ -276,7 +276,7 @@ yy11: yy12: yych = *++YYCURSOR; if (yych == '=') goto yy96; -#line 210 "cpp.re" +#line 214 "cpp.re" { BOOST_WAVE_RET(T_NOT); } #line 282 "cpp_re.inc" yy14: @@ -289,7 +289,7 @@ yy14: if (yych >= ' ') goto yy99; } yy15: -#line 364 "cpp.re" +#line 368 "cpp.re" { BOOST_WAVE_RET(TOKEN_FROM_ID(*s->tok, UnknownTokenType)); } #line 295 "cpp_re.inc" yy16: @@ -330,7 +330,7 @@ yy16: } } yy17: -#line 159 "cpp.re" +#line 163 "cpp.re" { BOOST_WAVE_RET(T_POUND); } #line 336 "cpp_re.inc" yy18: @@ -345,7 +345,7 @@ yy19: if (yych == '?') goto yy119; if (yych == '\\') goto yy120; yy20: -#line 315 "cpp.re" +#line 319 "cpp.re" { BOOST_WAVE_RET(T_IDENTIFIER); } #line 351 "cpp_re.inc" yy21: @@ -356,14 +356,14 @@ yy21: if (yych <= '=') goto yy123; if (yych <= '>') goto yy125; } -#line 198 "cpp.re" +#line 202 "cpp.re" { BOOST_WAVE_RET(T_PERCENT); } #line 362 "cpp_re.inc" yy23: yych = *++YYCURSOR; if (yych == '&') goto yy127; if (yych == '=') goto yy129; -#line 202 "cpp.re" +#line 206 "cpp.re" { BOOST_WAVE_RET(T_AND); } #line 369 "cpp_re.inc" yy25: @@ -380,30 +380,30 @@ yy25: } yy26: ++YYCURSOR; -#line 167 "cpp.re" +#line 171 "cpp.re" { BOOST_WAVE_RET(T_LEFTPAREN); } #line 386 "cpp_re.inc" yy28: ++YYCURSOR; -#line 168 "cpp.re" +#line 172 "cpp.re" { BOOST_WAVE_RET(T_RIGHTPAREN); } #line 391 "cpp_re.inc" yy30: yych = *++YYCURSOR; if (yych == '=') goto yy135; -#line 196 "cpp.re" +#line 200 "cpp.re" { BOOST_WAVE_RET(T_STAR); } #line 397 "cpp_re.inc" yy32: yych = *++YYCURSOR; if (yych == '+') goto yy137; if (yych == '=') goto yy139; -#line 194 "cpp.re" +#line 198 "cpp.re" { BOOST_WAVE_RET(T_PLUS); } #line 404 "cpp_re.inc" yy34: ++YYCURSOR; -#line 256 "cpp.re" +#line 260 "cpp.re" { BOOST_WAVE_RET(T_COMMA); } #line 409 "cpp_re.inc" yy36: @@ -414,7 +414,7 @@ yy36: if (yych <= '=') goto yy143; if (yych <= '>') goto yy145; } -#line 195 "cpp.re" +#line 199 "cpp.re" { BOOST_WAVE_RET(T_MINUS); } #line 420 "cpp_re.inc" yy38: @@ -428,7 +428,7 @@ yy38: if (yych <= '9') goto yy42; } yy39: -#line 183 "cpp.re" +#line 187 "cpp.re" { BOOST_WAVE_RET(T_DOT); } #line 434 "cpp_re.inc" yy40: @@ -439,24 +439,24 @@ yy40: if (yych <= '/') goto yy152; if (yych == '=') goto yy154; } -#line 197 "cpp.re" +#line 201 "cpp.re" { BOOST_WAVE_RET(T_DIVIDE); } #line 445 "cpp_re.inc" yy42: ++YYCURSOR; -#line 46 "cpp.re" +#line 49 "cpp.re" { goto pp_number; } #line 450 "cpp_re.inc" yy44: yych = *++YYCURSOR; if (yych == ':') goto yy156; if (yych == '>') goto yy158; -#line 170 "cpp.re" +#line 174 "cpp.re" { BOOST_WAVE_RET(T_COLON); } #line 457 "cpp_re.inc" yy46: ++YYCURSOR; -#line 169 "cpp.re" +#line 173 "cpp.re" { BOOST_WAVE_RET(T_SEMICOLON); } #line 462 "cpp_re.inc" yy48: @@ -470,13 +470,13 @@ yy48: if (yych <= '=') goto yy166; } yy49: -#line 213 "cpp.re" +#line 217 "cpp.re" { BOOST_WAVE_RET(T_LESS); } #line 476 "cpp_re.inc" yy50: yych = *++YYCURSOR; if (yych == '=') goto yy168; -#line 212 "cpp.re" +#line 216 "cpp.re" { BOOST_WAVE_RET(T_ASSIGN); } #line 482 "cpp_re.inc" yy52: @@ -485,7 +485,7 @@ yy52: if (yych <= '=') goto yy170; if (yych <= '>') goto yy172; yy53: -#line 214 "cpp.re" +#line 218 "cpp.re" { BOOST_WAVE_RET(T_GREATER); } #line 491 "cpp_re.inc" yy54: @@ -493,7 +493,7 @@ yy54: yych = *(YYMARKER = ++YYCURSOR); if (yych == '?') goto yy174; yy55: -#line 172 "cpp.re" +#line 176 "cpp.re" { BOOST_WAVE_RET(T_QUESTION_MARK); } #line 499 "cpp_re.inc" yy56: @@ -527,7 +527,7 @@ yy59: } yy60: ++YYCURSOR; -#line 153 "cpp.re" +#line 157 "cpp.re" { BOOST_WAVE_RET(T_LEFTBRACKET); } #line 533 "cpp_re.inc" yy62: @@ -538,13 +538,13 @@ yy62: goto yy15; yy63: ++YYCURSOR; -#line 156 "cpp.re" +#line 160 "cpp.re" { BOOST_WAVE_RET(T_RIGHTBRACKET); } #line 544 "cpp_re.inc" yy65: yych = *++YYCURSOR; if (yych == '=') goto yy185; -#line 199 "cpp.re" +#line 203 "cpp.re" { BOOST_WAVE_RET(T_XOR); } #line 550 "cpp_re.inc" yy67: @@ -648,56 +648,57 @@ yy76: yy77: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'u') goto yy223; + if (yych == 'o') goto yy223; + if (yych == 'u') goto yy224; 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; + case 'a': goto yy225; + case 'e': goto yy226; + case 'o': goto yy227; + case 'u': goto yy228; default: goto yy19; } yy79: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'p') goto yy228; - if (yych == 'r') goto yy229; + if (yych == 'p') goto yy229; + if (yych == 'r') goto yy230; goto yy19; yy80: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy231; - if (yych == 'u') goto yy232; + if (yych == 'r') goto yy232; + if (yych == 'u') goto yy233; goto yy19; yy81: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy233; + if (yych == 'e') goto yy234; 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; + if (yych <= 'h') goto yy235; + if (yych <= 'i') goto yy236; goto yy19; } else { - if (yych <= 't') goto yy236; - if (yych == 'w') goto yy237; + if (yych <= 't') goto yy237; + if (yych == 'w') goto yy238; 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; + case 'e': goto yy239; + case 'h': goto yy240; + case 'r': goto yy241; + case 'y': goto yy242; default: goto yy19; } yy84: @@ -710,68 +711,68 @@ yy84: } else { if (yych <= '\'') goto yy180; if (yych <= '7') goto yy19; - goto yy242; + goto yy243; } } else { if (yych <= 'm') { if (yych == 'R') goto yy182; goto yy19; } else { - if (yych <= 'n') goto yy243; - if (yych == 's') goto yy244; + if (yych <= 'n') goto yy244; + if (yych == 's') goto yy245; goto yy19; } } yy85: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy245; - if (yych == 'o') goto yy246; + if (yych == 'i') goto yy246; + if (yych == 'o') goto yy247; goto yy19; yy86: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'c') goto yy247; - if (yych == 'h') goto yy248; + if (yych == 'c') goto yy248; + if (yych == 'h') goto yy249; goto yy19; yy87: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'o') goto yy249; + if (yych == 'o') goto yy250; goto yy19; yy88: ++YYCURSOR; -#line 147 "cpp.re" +#line 151 "cpp.re" { BOOST_WAVE_RET(T_LEFTBRACE); } -#line 747 "cpp_re.inc" +#line 748 "cpp_re.inc" yy90: yyaccept = 5; yych = *(YYMARKER = ++YYCURSOR); if (yych <= '>') { - if (yych == '=') goto yy250; + if (yych == '=') goto yy251; } else { - if (yych <= '?') goto yy252; - if (yych == '|') goto yy253; + if (yych <= '?') goto yy253; + if (yych == '|') goto yy254; } yy91: -#line 204 "cpp.re" +#line 208 "cpp.re" { BOOST_WAVE_RET(T_OR); } -#line 760 "cpp_re.inc" +#line 761 "cpp_re.inc" yy92: ++YYCURSOR; -#line 150 "cpp.re" +#line 154 "cpp.re" { BOOST_WAVE_RET(T_RIGHTBRACE); } -#line 765 "cpp_re.inc" +#line 766 "cpp_re.inc" yy94: ++YYCURSOR; -#line 207 "cpp.re" +#line 211 "cpp.re" { BOOST_WAVE_RET(T_COMPL); } -#line 770 "cpp_re.inc" +#line 771 "cpp_re.inc" yy96: ++YYCURSOR; -#line 233 "cpp.re" +#line 237 "cpp.re" { BOOST_WAVE_RET(T_NOTEQUAL); } -#line 775 "cpp_re.inc" +#line 776 "cpp_re.inc" yy98: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); @@ -786,7 +787,7 @@ yy99: goto yy104; yy100: YYCURSOR = YYMARKER; - if (yyaccept <= 60) { + if (yyaccept <= 61) { if (yyaccept <= 30) { if (yyaccept <= 15) { if (yyaccept <= 7) { @@ -825,27 +826,27 @@ yy100: if (yyaccept == 8) { goto yy219; } else { - goto yy230; + goto yy231; } } else { if (yyaccept == 10) { - goto yy268; + goto yy269; } else { - goto yy295; + goto yy296; } } } else { if (yyaccept <= 13) { if (yyaccept == 12) { - goto yy305; + goto yy306; } else { - goto yy309; + goto yy310; } } else { if (yyaccept == 14) { - goto yy330; + goto yy331; } else { - goto yy332; + goto yy333; } } } @@ -855,29 +856,29 @@ yy100: if (yyaccept <= 19) { if (yyaccept <= 17) { if (yyaccept == 16) { - goto yy356; + goto yy357; } else { - goto yy362; + goto yy363; } } else { if (yyaccept == 18) { - goto yy367; + goto yy369; } else { - goto yy370; + goto yy372; } } } else { if (yyaccept <= 21) { if (yyaccept == 20) { - goto yy392; + goto yy394; } else { - goto yy403; + goto yy405; } } else { if (yyaccept == 22) { - goto yy450; + goto yy452; } else { - goto yy460; + goto yy462; } } } @@ -885,43 +886,43 @@ yy100: if (yyaccept <= 27) { if (yyaccept <= 25) { if (yyaccept == 24) { - goto yy464; + goto yy466; } else { - goto yy467; + goto yy469; } } else { if (yyaccept == 26) { - goto yy470; + goto yy472; } else { - goto yy485; + goto yy487; } } } else { if (yyaccept <= 29) { if (yyaccept == 28) { - goto yy487; + goto yy489; } else { - goto yy495; + goto yy497; } } else { - goto yy499; + goto yy501; } } } } } else { - if (yyaccept <= 45) { + if (yyaccept <= 46) { if (yyaccept <= 38) { if (yyaccept <= 34) { if (yyaccept <= 32) { if (yyaccept == 31) { - goto yy522; + goto yy525; } else { - goto yy526; + goto yy529; } } else { if (yyaccept == 33) { - goto yy533; + goto yy536; } else { goto yy102; } @@ -929,15 +930,15 @@ yy100: } else { if (yyaccept <= 36) { if (yyaccept == 35) { - goto yy278; + goto yy279; } else { - goto yy572; + goto yy575; } } else { if (yyaccept == 37) { - goto yy583; + goto yy586; } else { - goto yy585; + goto yy588; } } } @@ -945,326 +946,330 @@ yy100: if (yyaccept <= 42) { if (yyaccept <= 40) { if (yyaccept == 39) { - goto yy587; + goto yy590; } else { - goto yy592; + goto yy595; } } else { if (yyaccept == 41) { - goto yy597; - } else { goto yy600; + } else { + goto yy603; } } } else { if (yyaccept <= 44) { if (yyaccept == 43) { - goto yy611; + goto yy614; } else { - goto yy613; + goto yy616; } } else { - goto yy624; + if (yyaccept == 45) { + goto yy628; + } else { + goto yy637; + } } } } } else { - if (yyaccept <= 53) { - if (yyaccept <= 49) { - if (yyaccept <= 47) { - if (yyaccept == 46) { - goto yy633; + if (yyaccept <= 54) { + if (yyaccept <= 50) { + if (yyaccept <= 48) { + if (yyaccept == 47) { + goto yy646; } else { - goto yy642; + goto yy651; } } else { - if (yyaccept == 48) { - goto yy647; + if (yyaccept == 49) { + goto yy654; } else { - goto yy650; + goto yy659; } } } else { - if (yyaccept <= 51) { - if (yyaccept == 50) { - goto yy655; + if (yyaccept <= 52) { + if (yyaccept == 51) { + goto yy688; } else { - goto yy684; + goto yy691; } } else { - if (yyaccept == 52) { - goto yy687; + if (yyaccept == 53) { + goto yy693; } else { - goto yy689; + goto yy701; } } } } else { - if (yyaccept <= 57) { - if (yyaccept <= 55) { - if (yyaccept == 54) { - goto yy697; + if (yyaccept <= 58) { + if (yyaccept <= 56) { + if (yyaccept == 55) { + goto yy703; } else { - goto yy699; + goto yy718; } } else { - if (yyaccept == 56) { - goto yy714; + if (yyaccept == 57) { + goto yy720; } else { - goto yy716; + goto yy724; } } } else { - if (yyaccept <= 59) { - if (yyaccept == 58) { - goto yy720; + if (yyaccept <= 60) { + if (yyaccept == 59) { + goto yy726; } else { - goto yy722; + goto yy728; } } else { - goto yy724; + goto yy730; } } } } } } else { - if (yyaccept <= 91) { - if (yyaccept <= 76) { - if (yyaccept <= 68) { - if (yyaccept <= 64) { - if (yyaccept <= 62) { - if (yyaccept == 61) { - goto yy726; + if (yyaccept <= 92) { + if (yyaccept <= 77) { + if (yyaccept <= 69) { + if (yyaccept <= 65) { + if (yyaccept <= 63) { + if (yyaccept == 62) { + goto yy732; } else { - goto yy728; + goto yy734; } } else { - if (yyaccept == 63) { - goto yy733; - } else { + if (yyaccept == 64) { goto yy739; + } else { + goto yy745; } } } else { - if (yyaccept <= 66) { - if (yyaccept == 65) { - goto yy744; + if (yyaccept <= 67) { + if (yyaccept == 66) { + goto yy750; } else { - goto yy746; + goto yy752; } } else { - if (yyaccept == 67) { - goto yy748; + if (yyaccept == 68) { + goto yy754; } else { - goto yy750; + goto yy756; } } } } else { - if (yyaccept <= 72) { - if (yyaccept <= 70) { - if (yyaccept == 69) { - goto yy752; + if (yyaccept <= 73) { + if (yyaccept <= 71) { + if (yyaccept == 70) { + goto yy758; } else { - goto yy754; + goto yy760; } } else { - if (yyaccept == 71) { - goto yy759; + if (yyaccept == 72) { + goto yy765; } else { - goto yy766; + goto yy772; } } } else { - if (yyaccept <= 74) { - if (yyaccept == 73) { - goto yy781; + if (yyaccept <= 75) { + if (yyaccept == 74) { + goto yy787; } else { - goto yy783; + goto yy789; } } else { - if (yyaccept == 75) { - goto yy785; + if (yyaccept == 76) { + goto yy791; } else { - goto yy787; + goto yy793; } } } } } else { - if (yyaccept <= 84) { - if (yyaccept <= 80) { - if (yyaccept <= 78) { - if (yyaccept == 77) { - goto yy791; + if (yyaccept <= 85) { + if (yyaccept <= 81) { + if (yyaccept <= 79) { + if (yyaccept == 78) { + goto yy797; } else { - goto yy794; + goto yy800; } } else { - if (yyaccept == 79) { - goto yy796; + if (yyaccept == 80) { + goto yy802; } else { - goto yy800; + goto yy806; } } } else { - if (yyaccept <= 82) { - if (yyaccept == 81) { - goto yy805; + if (yyaccept <= 83) { + if (yyaccept == 82) { + goto yy811; } else { - goto yy813; + goto yy819; } } else { - if (yyaccept == 83) { - goto yy817; + if (yyaccept == 84) { + goto yy823; } else { - goto yy821; + goto yy827; } } } } else { - if (yyaccept <= 88) { - if (yyaccept <= 86) { - if (yyaccept == 85) { - goto yy824; + if (yyaccept <= 89) { + if (yyaccept <= 87) { + if (yyaccept == 86) { + goto yy830; } else { - goto yy833; + goto yy839; } } else { - if (yyaccept == 87) { - goto yy837; + if (yyaccept == 88) { + goto yy843; } else { - goto yy840; + goto yy846; } } } else { - if (yyaccept <= 90) { - if (yyaccept == 89) { - goto yy843; + if (yyaccept <= 91) { + if (yyaccept == 90) { + goto yy849; } else { - goto yy847; + goto yy853; } } else { - goto yy852; + goto yy858; } } } } } else { - if (yyaccept <= 106) { - if (yyaccept <= 99) { - if (yyaccept <= 95) { - if (yyaccept <= 93) { - if (yyaccept == 92) { - goto yy854; + if (yyaccept <= 107) { + if (yyaccept <= 100) { + if (yyaccept <= 96) { + if (yyaccept <= 94) { + if (yyaccept == 93) { + goto yy860; } else { - goto yy856; + goto yy862; } } else { - if (yyaccept == 94) { - goto yy858; + if (yyaccept == 95) { + goto yy864; } else { - goto yy861; + goto yy867; } } } else { - if (yyaccept <= 97) { - if (yyaccept == 96) { - goto yy867; + if (yyaccept <= 98) { + if (yyaccept == 97) { + goto yy873; } else { - goto yy869; + goto yy875; } } else { - if (yyaccept == 98) { - goto yy872; + if (yyaccept == 99) { + goto yy878; } else { - goto yy875; + goto yy881; } } } } else { - if (yyaccept <= 103) { - if (yyaccept <= 101) { - if (yyaccept == 100) { - goto yy877; + if (yyaccept <= 104) { + if (yyaccept <= 102) { + if (yyaccept == 101) { + goto yy883; } else { - goto yy880; + goto yy886; } } else { - if (yyaccept == 102) { - goto yy883; + if (yyaccept == 103) { + goto yy889; } else { - goto yy887; + goto yy893; } } } else { - if (yyaccept <= 105) { - if (yyaccept == 104) { - goto yy890; + if (yyaccept <= 106) { + if (yyaccept == 105) { + goto yy896; } else { - goto yy892; + goto yy898; } } else { - goto yy894; + goto yy900; } } } } else { - if (yyaccept <= 114) { - if (yyaccept <= 110) { - if (yyaccept <= 108) { - if (yyaccept == 107) { - goto yy903; + if (yyaccept <= 115) { + if (yyaccept <= 111) { + if (yyaccept <= 109) { + if (yyaccept == 108) { + goto yy909; } else { - goto yy905; + goto yy911; } } else { - if (yyaccept == 109) { - goto yy907; + if (yyaccept == 110) { + goto yy913; } else { - goto yy909; + goto yy915; } } } else { - if (yyaccept <= 112) { - if (yyaccept == 111) { - goto yy912; + if (yyaccept <= 113) { + if (yyaccept == 112) { + goto yy918; } else { - goto yy914; + goto yy920; } } else { - if (yyaccept == 113) { - goto yy916; + if (yyaccept == 114) { + goto yy922; } else { - goto yy919; + goto yy925; } } } } else { - if (yyaccept <= 118) { - if (yyaccept <= 116) { - if (yyaccept == 115) { - goto yy921; + if (yyaccept <= 119) { + if (yyaccept <= 117) { + if (yyaccept == 116) { + goto yy927; } else { - goto yy936; + goto yy942; } } else { - if (yyaccept == 117) { - goto yy953; + if (yyaccept == 118) { + goto yy959; } else { - goto yy957; + goto yy963; } } } else { - if (yyaccept <= 120) { - if (yyaccept == 119) { - goto yy961; + if (yyaccept <= 121) { + if (yyaccept == 120) { + goto yy967; } else { - goto yy964; + goto yy970; } } else { - goto yy968; + goto yy974; } } } @@ -1274,9 +1279,9 @@ yy100: yy101: ++YYCURSOR; yy102: -#line 274 "cpp.re" +#line 278 "cpp.re" { BOOST_WAVE_RET(T_STRINGLIT); } -#line 1280 "cpp_re.inc" +#line 1285 "cpp_re.inc" yy103: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); @@ -1286,7 +1291,7 @@ yy103: } if (yych <= 0x1F) goto yy100; if (yych <= '"') goto yy101; - if (yych <= '?') goto yy255; + if (yych <= '?') goto yy256; yy104: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); @@ -1308,7 +1313,7 @@ yy104: if (yych <= 'D') goto yy100; goto yy98; } else { - if (yych == 'U') goto yy257; + if (yych == 'U') goto yy258; if (yych <= '[') goto yy100; goto yy98; } @@ -1328,10 +1333,10 @@ yy104: if (yych <= 'u') { if (yych == 's') goto yy100; if (yych <= 't') goto yy98; - goto yy258; + goto yy259; } else { if (yych <= 'v') goto yy98; - if (yych == 'x') goto yy259; + if (yych == 'x') goto yy260; goto yy100; } } @@ -1384,63 +1389,63 @@ yy106: } yy107: ++YYCURSOR; -#line 162 "cpp.re" +#line 166 "cpp.re" { BOOST_WAVE_RET(T_POUND_POUND); } -#line 1390 "cpp_re.inc" +#line 1395 "cpp_re.inc" yy109: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; - if (yych == '*') goto yy260; + if (yych == '*') goto yy261; goto yy100; yy110: yych = *++YYCURSOR; - if (yych == '?') goto yy262; + if (yych == '?') goto yy263; goto yy100; yy111: yych = *++YYCURSOR; - if (yych == 'e') goto yy263; + if (yych == 'e') goto yy264; goto yy100; yy112: yych = *++YYCURSOR; if (yych <= 'm') { - if (yych == 'l') goto yy264; + if (yych == 'l') goto yy265; goto yy100; } else { - if (yych <= 'n') goto yy265; - if (yych == 'r') goto yy266; + if (yych <= 'n') goto yy266; + if (yych == 'r') goto yy267; goto yy100; } yy113: yych = *++YYCURSOR; - if (yych == 'f') goto yy267; - if (yych == 'n') goto yy269; + if (yych == 'f') goto yy268; + if (yych == 'n') goto yy270; goto yy100; yy114: yych = *++YYCURSOR; - if (yych == 'i') goto yy270; + if (yych == 'i') goto yy271; goto yy100; yy115: yych = *++YYCURSOR; - if (yych == 'r') goto yy271; + if (yych == 'r') goto yy272; goto yy100; yy116: yych = *++YYCURSOR; - if (yych == 'e') goto yy272; + if (yych == 'e') goto yy273; goto yy100; yy117: yych = *++YYCURSOR; - if (yych == 'n') goto yy273; + if (yych == 'n') goto yy274; goto yy100; yy118: yych = *++YYCURSOR; - if (yych == 'a') goto yy274; + if (yych == 'a') goto yy275; goto yy100; yy119: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; - if (yych == '?') goto yy275; + if (yych == '?') goto yy276; goto yy100; yy120: ++YYCURSOR; @@ -1462,7 +1467,7 @@ yy121: } } else { if (yych <= '.') { - if (yych == '%') goto yy276; + if (yych == '%') goto yy277; } else { if (yych <= '/') goto yy106; if (yych >= 'd') goto yy106; @@ -1486,29 +1491,29 @@ yy121: } } yy122: -#line 160 "cpp.re" +#line 164 "cpp.re" { BOOST_WAVE_RET(T_POUND_ALT); } -#line 1492 "cpp_re.inc" +#line 1497 "cpp_re.inc" yy123: ++YYCURSOR; -#line 219 "cpp.re" +#line 223 "cpp.re" { BOOST_WAVE_RET(T_PERCENTASSIGN); } -#line 1497 "cpp_re.inc" +#line 1502 "cpp_re.inc" yy125: ++YYCURSOR; -#line 152 "cpp.re" +#line 156 "cpp.re" { BOOST_WAVE_RET(T_RIGHTBRACE_ALT); } -#line 1502 "cpp_re.inc" +#line 1507 "cpp_re.inc" yy127: ++YYCURSOR; -#line 247 "cpp.re" +#line 251 "cpp.re" { BOOST_WAVE_RET(T_ANDAND); } -#line 1507 "cpp_re.inc" +#line 1512 "cpp_re.inc" yy129: ++YYCURSOR; -#line 223 "cpp.re" +#line 227 "cpp.re" { BOOST_WAVE_RET(T_ANDASSIGN); } -#line 1512 "cpp_re.inc" +#line 1517 "cpp_re.inc" yy131: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); @@ -1518,7 +1523,7 @@ yy132: goto yy131; } if (yych <= 0x1F) goto yy100; - if (yych <= '\'') goto yy277; + if (yych <= '\'') goto yy278; if (yych >= '@') goto yy134; yy133: ++YYCURSOR; @@ -1528,8 +1533,8 @@ yy133: goto yy131; } if (yych <= 0x1F) goto yy100; - if (yych <= '\'') goto yy277; - if (yych <= '?') goto yy279; + if (yych <= '\'') goto yy278; + if (yych <= '?') goto yy280; yy134: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); @@ -1551,7 +1556,7 @@ yy134: if (yych <= 'D') goto yy100; goto yy131; } else { - if (yych == 'U') goto yy281; + if (yych == 'U') goto yy282; if (yych <= '[') goto yy100; goto yy131; } @@ -1571,48 +1576,48 @@ yy134: if (yych <= 'u') { if (yych == 's') goto yy100; if (yych <= 't') goto yy131; - goto yy282; + goto yy283; } else { if (yych <= 'v') goto yy131; - if (yych == 'x') goto yy283; + if (yych == 'x') goto yy284; goto yy100; } } } yy135: ++YYCURSOR; -#line 217 "cpp.re" +#line 221 "cpp.re" { BOOST_WAVE_RET(T_STARASSIGN); } -#line 1587 "cpp_re.inc" +#line 1592 "cpp_re.inc" yy137: ++YYCURSOR; -#line 254 "cpp.re" +#line 258 "cpp.re" { BOOST_WAVE_RET(T_PLUSPLUS); } -#line 1592 "cpp_re.inc" +#line 1597 "cpp_re.inc" yy139: ++YYCURSOR; -#line 215 "cpp.re" +#line 219 "cpp.re" { BOOST_WAVE_RET(T_PLUSASSIGN); } -#line 1597 "cpp_re.inc" +#line 1602 "cpp_re.inc" yy141: ++YYCURSOR; -#line 255 "cpp.re" +#line 259 "cpp.re" { BOOST_WAVE_RET(T_MINUSMINUS); } -#line 1602 "cpp_re.inc" +#line 1607 "cpp_re.inc" yy143: ++YYCURSOR; -#line 216 "cpp.re" +#line 220 "cpp.re" { BOOST_WAVE_RET(T_MINUSASSIGN); } -#line 1607 "cpp_re.inc" +#line 1612 "cpp_re.inc" yy145: yych = *++YYCURSOR; - if (yych == '*') goto yy284; -#line 267 "cpp.re" + if (yych == '*') goto yy285; +#line 271 "cpp.re" { BOOST_WAVE_RET(T_ARROW); } -#line 1613 "cpp_re.inc" +#line 1618 "cpp_re.inc" yy147: ++YYCURSOR; -#line 185 "cpp.re" +#line 189 "cpp.re" { if (s->act_in_c99_mode) { --YYCURSOR; @@ -1622,29 +1627,29 @@ yy147: BOOST_WAVE_RET(T_DOTSTAR); } } -#line 1626 "cpp_re.inc" +#line 1631 "cpp_re.inc" yy149: yych = *++YYCURSOR; - if (yych == '.') goto yy286; + if (yych == '.') goto yy287; goto yy100; yy150: ++YYCURSOR; -#line 44 "cpp.re" +#line 47 "cpp.re" { goto ccomment; } -#line 1635 "cpp_re.inc" +#line 1640 "cpp_re.inc" yy152: ++YYCURSOR; -#line 45 "cpp.re" +#line 48 "cpp.re" { goto cppcomment; } -#line 1640 "cpp_re.inc" +#line 1645 "cpp_re.inc" yy154: ++YYCURSOR; -#line 218 "cpp.re" +#line 222 "cpp.re" { BOOST_WAVE_RET(T_DIVIDEASSIGN); } -#line 1645 "cpp_re.inc" +#line 1650 "cpp_re.inc" yy156: ++YYCURSOR; -#line 174 "cpp.re" +#line 178 "cpp.re" { if (s->act_in_c99_mode) { --YYCURSOR; @@ -1654,62 +1659,62 @@ yy156: BOOST_WAVE_RET(T_COLON_COLON); } } -#line 1658 "cpp_re.inc" +#line 1663 "cpp_re.inc" yy158: ++YYCURSOR; -#line 158 "cpp.re" +#line 162 "cpp.re" { BOOST_WAVE_RET(T_RIGHTBRACKET_ALT); } -#line 1663 "cpp_re.inc" +#line 1668 "cpp_re.inc" yy160: ++YYCURSOR; -#line 149 "cpp.re" +#line 153 "cpp.re" { BOOST_WAVE_RET(T_LEFTBRACE_ALT); } -#line 1668 "cpp_re.inc" +#line 1673 "cpp_re.inc" yy162: ++YYCURSOR; -#line 155 "cpp.re" +#line 159 "cpp.re" { BOOST_WAVE_RET(T_LEFTBRACKET_ALT); } -#line 1673 "cpp_re.inc" +#line 1678 "cpp_re.inc" yy164: yych = *++YYCURSOR; - if (yych == '=') goto yy288; -#line 228 "cpp.re" + if (yych == '=') goto yy289; +#line 232 "cpp.re" { BOOST_WAVE_RET(T_SHIFTLEFT); } -#line 1679 "cpp_re.inc" +#line 1684 "cpp_re.inc" yy166: yych = *++YYCURSOR; - if (yych == '>') goto yy290; -#line 245 "cpp.re" + if (yych == '>') goto yy291; +#line 249 "cpp.re" { BOOST_WAVE_RET(T_LESSEQUAL); } -#line 1685 "cpp_re.inc" +#line 1690 "cpp_re.inc" yy168: ++YYCURSOR; -#line 232 "cpp.re" +#line 236 "cpp.re" { BOOST_WAVE_RET(T_EQUAL); } -#line 1690 "cpp_re.inc" +#line 1695 "cpp_re.inc" yy170: ++YYCURSOR; -#line 246 "cpp.re" +#line 250 "cpp.re" { BOOST_WAVE_RET(T_GREATEREQUAL); } -#line 1695 "cpp_re.inc" +#line 1700 "cpp_re.inc" yy172: yych = *++YYCURSOR; - if (yych == '=') goto yy292; -#line 229 "cpp.re" + if (yych == '=') goto yy293; +#line 233 "cpp.re" { BOOST_WAVE_RET(T_SHIFTRIGHT); } -#line 1701 "cpp_re.inc" +#line 1706 "cpp_re.inc" yy174: yych = *++YYCURSOR; switch (yych) { - case '!': goto yy294; - case '\'': goto yy296; - case '(': goto yy298; - case ')': goto yy300; - case '-': goto yy302; - case '/': goto yy304; - case '<': goto yy306; - case '=': goto yy308; - case '>': goto yy310; + case '!': goto yy295; + case '\'': goto yy297; + case '(': goto yy299; + case ')': goto yy301; + case '-': goto yy303; + case '/': goto yy305; + case '<': goto yy307; + case '=': goto yy309; + case '>': goto yy311; default: goto yy100; } yy175: @@ -1718,7 +1723,7 @@ yy175: goto yy132; yy176: ++YYCURSOR; -#line 277 "cpp.re" +#line 281 "cpp.re" { if (s->act_in_cpp0x_mode) { @@ -1728,31 +1733,31 @@ yy176: --YYCURSOR; BOOST_WAVE_RET(T_IDENTIFIER); } -#line 1732 "cpp_re.inc" +#line 1737 "cpp_re.inc" yy178: ++YYCURSOR; -#line 296 "cpp.re" +#line 300 "cpp.re" { if (s->act_in_cpp0x_mode) goto extstringlit; --YYCURSOR; BOOST_WAVE_RET(T_IDENTIFIER); } -#line 1742 "cpp_re.inc" +#line 1747 "cpp_re.inc" yy180: ++YYCURSOR; -#line 288 "cpp.re" +#line 292 "cpp.re" { if (s->act_in_cpp0x_mode) goto extcharlit; --YYCURSOR; BOOST_WAVE_RET(T_IDENTIFIER); } -#line 1752 "cpp_re.inc" +#line 1757 "cpp_re.inc" yy182: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == '"') goto yy312; + if (yych == '"') goto yy313; goto yy19; yy183: ++YYCURSOR; @@ -1760,12 +1765,12 @@ yy183: yych = *YYCURSOR; if (yych <= '@') { if (yych <= '/') goto yy100; - if (yych <= '9') goto yy314; + if (yych <= '9') goto yy315; goto yy100; } else { - if (yych <= 'F') goto yy314; + if (yych <= 'F') goto yy315; if (yych <= '`') goto yy100; - if (yych <= 'f') goto yy314; + if (yych <= 'f') goto yy315; goto yy100; } yy184: @@ -1774,19 +1779,19 @@ yy184: yych = *YYCURSOR; if (yych <= '@') { if (yych <= '/') goto yy100; - if (yych <= '9') goto yy315; + if (yych <= '9') goto yy316; goto yy100; } else { - if (yych <= 'F') goto yy315; + if (yych <= 'F') goto yy316; if (yych <= '`') goto yy100; - if (yych <= 'f') goto yy315; + if (yych <= 'f') goto yy316; goto yy100; } yy185: ++YYCURSOR; -#line 220 "cpp.re" +#line 224 "cpp.re" { BOOST_WAVE_RET(T_XORASSIGN); } -#line 1790 "cpp_re.inc" +#line 1795 "cpp_re.inc" yy187: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); @@ -1795,121 +1800,121 @@ yy187: case 'b': goto yy189; case 'c': goto yy190; case 'd': goto yy191; - case 'e': goto yy316; - case 'f': goto yy317; - case 'i': goto yy318; - case 'l': goto yy319; + case 'e': goto yy317; + case 'f': goto yy318; + case 'i': goto yy319; + case 'l': goto yy320; case 's': goto yy194; - case 't': goto yy320; + case 't': goto yy321; default: goto yy19; } yy188: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 's') goto yy321; + if (yych == 's') goto yy322; goto yy19; yy189: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy322; + if (yych == 'a') goto yy323; goto yy19; yy190: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'd') goto yy323; + if (yych == 'd') goto yy324; goto yy19; yy191: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy324; + if (yych == 'e') goto yy325; goto yy19; yy192: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy325; + if (yych == 'a') goto yy326; goto yy19; yy193: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'n') goto yy326; + if (yych == 'n') goto yy327; goto yy19; yy194: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy327; + if (yych == 't') goto yy328; goto yy19; yy195: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy328; + if (yych == 'i') goto yy329; goto yy19; yy196: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'd') goto yy329; + if (yych == 'd') goto yy330; goto yy19; yy197: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'm') goto yy331; + if (yych == 'm') goto yy332; goto yy19; yy198: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy333; + if (yych == 't') goto yy334; goto yy19; yy199: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy334; + if (yych == 't') goto yy335; goto yy19; yy200: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'o') goto yy335; + if (yych == 'o') goto yy336; goto yy19; yy201: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy336; + if (yych == 'e') goto yy337; goto yy19; yy202: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); if (yych <= 'r') goto yy19; - if (yych <= 's') goto yy337; - if (yych <= 't') goto yy338; + if (yych <= 's') goto yy338; + if (yych <= 't') goto yy339; goto yy19; yy203: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy339; + if (yych == 'a') goto yy340; goto yy19; yy204: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy340; + if (yych == 'a') goto yy341; goto yy19; yy205: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); if (yych <= 'l') { - if (yych == '_') goto yy341; + if (yych == '_') goto yy342; goto yy19; } else { - if (yych <= 'm') goto yy342; - if (yych <= 'n') goto yy343; + if (yych <= 'm') goto yy343; + if (yych <= 'n') goto yy344; goto yy19; } yy206: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); if (yych <= 'e') { - if (yych == 'c') goto yy344; + if (yych == 'c') goto yy345; goto yy19; } else { - if (yych <= 'f') goto yy345; - if (yych == 'l') goto yy346; + if (yych <= 'f') goto yy346; + if (yych == 'l') goto yy347; goto yy19; } yy207: @@ -1931,60 +1936,60 @@ yy207: if (yych <= 't') { if (yych >= 'a') goto yy18; } else { - if (yych <= 'u') goto yy347; + if (yych <= 'u') goto yy348; if (yych <= 'z') goto yy18; } } } yy208: -#line 74 "cpp.re" +#line 77 "cpp.re" { BOOST_WAVE_RET(T_DO); } -#line 1943 "cpp_re.inc" +#line 1948 "cpp_re.inc" yy209: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'n') goto yy348; + if (yych == 'n') goto yy349; goto yy19; yy210: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 's') goto yy349; + if (yych == 's') goto yy350; goto yy19; yy211: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'u') goto yy350; + if (yych == 'u') goto yy351; goto yy19; yy212: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'p') goto yy351; - if (yych == 't') goto yy352; + if (yych == 'p') goto yy352; + if (yych == 't') goto yy353; goto yy19; yy213: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy353; + if (yych == 'l') goto yy354; goto yy19; yy214: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'o') goto yy354; + if (yych == 'o') goto yy355; goto yy19; yy215: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy355; + if (yych == 'r') goto yy356; goto yy19; yy216: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy357; + if (yych == 'i') goto yy358; goto yy19; yy217: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy358; + if (yych == 't') goto yy359; goto yy19; yy218: yyaccept = 8; @@ -1995,57 +2000,62 @@ yy218: if (yych == '?') goto yy119; if (yych == '\\') goto yy120; yy219: -#line 87 "cpp.re" +#line 90 "cpp.re" { BOOST_WAVE_RET(T_IF); } -#line 2001 "cpp_re.inc" +#line 2006 "cpp_re.inc" yy220: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'p') goto yy359; + if (yych == 'p') goto yy360; goto yy19; yy221: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy360; - if (yych == 't') goto yy361; + if (yych == 'l') goto yy361; + if (yych == 't') goto yy362; goto yy19; yy222: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'n') goto yy363; + if (yych == 'n') goto yy364; goto yy19; yy223: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy364; + if (yych == 'd') goto yy365; goto yy19; yy224: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'm') goto yy365; + if (yych == 't') goto yy366; goto yy19; yy225: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'w') goto yy366; + if (yych == 'm') goto yy367; goto yy19; yy226: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy368; - if (yych == 't') goto yy369; + if (yych == 'w') goto yy368; goto yy19; yy227: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy371; + if (yych == 'e') goto yy370; + if (yych == 't') goto yy371; goto yy19; yy228: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy372; + if (yych == 'l') goto yy373; goto yy19; yy229: + yyaccept = 2; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 'e') goto yy374; + goto yy19; +yy230: yyaccept = 9; yych = *(YYMARKER = ++YYCURSOR); if (yych <= '@') { @@ -2060,143 +2070,143 @@ yy229: if (yych <= 'Z') goto yy18; if (yych == '\\') goto yy120; } else { - if (yych <= '_') goto yy373; - if (yych <= '`') goto yy230; + if (yych <= '_') goto yy375; + if (yych <= '`') goto yy231; if (yych <= 'z') goto yy18; } } -yy230: -#line 252 "cpp.re" - { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_OROR_ALT); } -#line 2072 "cpp_re.inc" yy231: +#line 256 "cpp.re" + { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_OROR_ALT); } +#line 2082 "cpp_re.inc" +yy232: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy374; - if (yych == 'o') goto yy375; + if (yych == 'i') goto yy376; + if (yych == 'o') goto yy377; goto yy19; -yy232: +yy233: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'b') goto yy376; + if (yych == 'b') goto yy378; goto yy19; -yy233: +yy234: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); switch (yych) { - case 'g': goto yy377; - case 'i': goto yy378; - case 'q': goto yy379; - case 't': goto yy380; + case 'g': goto yy379; + case 'i': goto yy380; + case 'q': goto yy381; + case 't': goto yy382; default: goto yy19; } -yy234: - yyaccept = 2; - yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'o') goto yy381; - goto yy19; yy235: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'g') goto yy382; - if (yych == 'z') goto yy383; + if (yych == 'o') goto yy383; goto yy19; yy236: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy384; - if (yych == 'r') goto yy385; + if (yych == 'g') goto yy384; + if (yych == 'z') goto yy385; goto yy19; yy237: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy386; + if (yych == 'a') goto yy386; + if (yych == 'r') goto yy387; goto yy19; yy238: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'm') goto yy387; + if (yych == 'i') goto yy388; goto yy19; yy239: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy388; - if (yych == 'r') goto yy389; + if (yych == 'm') goto yy389; goto yy19; yy240: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'u') goto yy390; - if (yych == 'y') goto yy391; + if (yych == 'i') goto yy390; + if (yych == 'r') goto yy391; goto yy19; yy241: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'p') goto yy393; + if (yych == 'u') goto yy392; + if (yych == 'y') goto yy393; goto yy19; yy242: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == '"') goto yy178; - if (yych == 'R') goto yy182; + if (yych == 'p') goto yy395; goto yy19; yy243: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy394; - if (yych == 's') goto yy395; + if (yych == '"') goto yy178; + if (yych == 'R') goto yy182; goto yy19; yy244: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); if (yych == 'i') goto yy396; + if (yych == 's') goto yy397; goto yy19; yy245: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy397; + if (yych == 'i') goto yy398; goto yy19; yy246: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy398; - if (yych == 'l') goto yy399; + if (yych == 'r') goto yy399; goto yy19; yy247: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'h') goto yy400; + if (yych == 'i') goto yy400; + if (yych == 'l') goto yy401; goto yy19; yy248: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy401; + if (yych == 'h') goto yy402; goto yy19; yy249: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy402; + if (yych == 'i') goto yy403; goto yy19; yy250: + yyaccept = 2; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 'r') goto yy404; + goto yy19; +yy251: ++YYCURSOR; -#line 225 "cpp.re" +#line 229 "cpp.re" { BOOST_WAVE_RET(T_ORASSIGN); } -#line 2185 "cpp_re.inc" -yy252: +#line 2195 "cpp_re.inc" +yy253: yych = *++YYCURSOR; - if (yych == '?') goto yy404; + if (yych == '?') goto yy406; goto yy100; -yy253: +yy254: ++YYCURSOR; -#line 249 "cpp.re" +#line 253 "cpp.re" { BOOST_WAVE_RET(T_OROR); } -#line 2194 "cpp_re.inc" -yy255: +#line 2204 "cpp_re.inc" +yy256: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yybm[0+yych] & 4) { - goto yy255; + goto yy256; } if (yych <= '!') { if (yych <= '\n') { @@ -2211,41 +2221,41 @@ yy255: if (yych <= '/') { if (yych <= '"') goto yy101; if (yych <= '.') goto yy98; - goto yy405; + goto yy407; } else { if (yych == '\\') goto yy104; goto yy98; } } -yy257: +yy258: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { if (yych <= '/') goto yy100; - if (yych <= '9') goto yy407; + if (yych <= '9') goto yy409; goto yy100; } else { - if (yych <= 'F') goto yy407; + if (yych <= 'F') goto yy409; if (yych <= '`') goto yy100; - if (yych <= 'f') goto yy407; + if (yych <= 'f') goto yy409; goto yy100; } -yy258: +yy259: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { if (yych <= '/') goto yy100; - if (yych <= '9') goto yy408; + if (yych <= '9') goto yy410; goto yy100; } else { - if (yych <= 'F') goto yy408; + if (yych <= 'F') goto yy410; if (yych <= '`') goto yy100; - if (yych <= 'f') goto yy408; + if (yych <= 'f') goto yy410; goto yy100; } -yy259: +yy260: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; @@ -2259,86 +2269,86 @@ yy259: if (yych <= 'f') goto yy98; goto yy100; } -yy260: +yy261: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yybm[0+yych] & 8) { - goto yy260; + goto yy261; } if (yych <= 0x1F) goto yy100; - goto yy409; -yy262: - yych = *++YYCURSOR; - if (yych == '=') goto yy411; - goto yy100; + goto yy411; yy263: yych = *++YYCURSOR; - if (yych == 'f') goto yy413; + if (yych == '=') goto yy413; goto yy100; yy264: yych = *++YYCURSOR; - if (yych == 'i') goto yy414; - if (yych == 's') goto yy415; + if (yych == 'f') goto yy415; goto yy100; yy265: yych = *++YYCURSOR; - if (yych == 'd') goto yy416; + if (yych == 'i') goto yy416; + if (yych == 's') goto yy417; goto yy100; yy266: yych = *++YYCURSOR; - if (yych == 'r') goto yy417; + if (yych == 'd') goto yy418; goto yy100; yy267: + yych = *++YYCURSOR; + if (yych == 'r') goto yy419; + goto yy100; +yy268: yyaccept = 10; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'd') goto yy418; - if (yych == 'n') goto yy419; -yy268: -#line 326 "cpp.re" - { BOOST_WAVE_RET(T_PP_IF); } -#line 2301 "cpp_re.inc" + if (yych == 'd') goto yy420; + if (yych == 'n') goto yy421; yy269: - yych = *++YYCURSOR; - if (yych == 'c') goto yy420; - goto yy100; +#line 330 "cpp.re" + { BOOST_WAVE_RET(T_PP_IF); } +#line 2311 "cpp_re.inc" yy270: yych = *++YYCURSOR; - if (yych == 'n') goto yy421; + if (yych == 'c') goto yy422; goto yy100; yy271: yych = *++YYCURSOR; - if (yych == 'a') goto yy422; + if (yych == 'n') goto yy423; goto yy100; yy272: yych = *++YYCURSOR; - if (yych == 'g') goto yy423; + if (yych == 'a') goto yy424; goto yy100; yy273: yych = *++YYCURSOR; - if (yych == 'd') goto yy424; + if (yych == 'g') goto yy425; goto yy100; yy274: yych = *++YYCURSOR; - if (yych == 'r') goto yy425; + if (yych == 'd') goto yy426; goto yy100; yy275: + yych = *++YYCURSOR; + if (yych == 'r') goto yy427; + goto yy100; +yy276: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych == '/') goto yy120; goto yy100; -yy276: +yy277: yych = *++YYCURSOR; - if (yych == ':') goto yy426; + if (yych == ':') goto yy428; goto yy100; -yy277: - ++YYCURSOR; yy278: -#line 271 "cpp.re" - { BOOST_WAVE_RET(T_CHARLIT); } -#line 2341 "cpp_re.inc" + ++YYCURSOR; yy279: +#line 275 "cpp.re" + { BOOST_WAVE_RET(T_CHARLIT); } +#line 2351 "cpp_re.inc" +yy280: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; @@ -2350,47 +2360,47 @@ yy279: if (yych <= '\f') goto yy131; if (yych <= 0x1F) goto yy100; if (yych <= '&') goto yy131; - goto yy277; + goto yy278; } } else { if (yych <= '>') { - if (yych == '/') goto yy428; + if (yych == '/') goto yy430; goto yy131; } else { - if (yych <= '?') goto yy279; + if (yych <= '?') goto yy280; if (yych == '\\') goto yy134; goto yy131; } } -yy281: +yy282: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { if (yych <= '/') goto yy100; - if (yych <= '9') goto yy430; + if (yych <= '9') goto yy432; goto yy100; } else { - if (yych <= 'F') goto yy430; + if (yych <= 'F') goto yy432; if (yych <= '`') goto yy100; - if (yych <= 'f') goto yy430; + if (yych <= 'f') goto yy432; goto yy100; } -yy282: +yy283: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { if (yych <= '/') goto yy100; - if (yych <= '9') goto yy431; + if (yych <= '9') goto yy433; goto yy100; } else { - if (yych <= 'F') goto yy431; + if (yych <= 'F') goto yy433; if (yych <= '`') goto yy100; - if (yych <= 'f') goto yy431; + if (yych <= 'f') goto yy433; goto yy100; } -yy283: +yy284: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; @@ -2404,9 +2414,9 @@ yy283: if (yych <= 'f') goto yy131; goto yy100; } -yy284: +yy285: ++YYCURSOR; -#line 258 "cpp.re" +#line 262 "cpp.re" { if (s->act_in_c99_mode) { --YYCURSOR; @@ -2416,20 +2426,20 @@ yy284: BOOST_WAVE_RET(T_ARROWSTAR); } } -#line 2420 "cpp_re.inc" -yy286: +#line 2430 "cpp_re.inc" +yy287: ++YYCURSOR; -#line 171 "cpp.re" +#line 175 "cpp.re" { BOOST_WAVE_RET(T_ELLIPSIS); } -#line 2425 "cpp_re.inc" -yy288: +#line 2435 "cpp_re.inc" +yy289: ++YYCURSOR; -#line 231 "cpp.re" +#line 235 "cpp.re" { BOOST_WAVE_RET(T_SHIFTLEFTASSIGN); } -#line 2430 "cpp_re.inc" -yy290: +#line 2440 "cpp_re.inc" +yy291: ++YYCURSOR; -#line 236 "cpp.re" +#line 240 "cpp.re" { if (s->act_in_cpp2a_mode) { BOOST_WAVE_RET(T_SPACESHIP); @@ -2439,61 +2449,61 @@ yy290: BOOST_WAVE_RET(T_LESSEQUAL); } } -#line 2443 "cpp_re.inc" -yy292: +#line 2453 "cpp_re.inc" +yy293: ++YYCURSOR; -#line 230 "cpp.re" +#line 234 "cpp.re" { BOOST_WAVE_RET(T_SHIFTRIGHTASSIGN); } -#line 2448 "cpp_re.inc" -yy294: +#line 2458 "cpp_re.inc" +yy295: yyaccept = 11; yych = *(YYMARKER = ++YYCURSOR); if (yych <= '>') { - if (yych == '=') goto yy432; + if (yych == '=') goto yy434; } else { - if (yych <= '?') goto yy434; - if (yych == '|') goto yy435; + if (yych <= '?') goto yy436; + if (yych == '|') goto yy437; } -yy295: -#line 206 "cpp.re" - { BOOST_WAVE_RET(T_OR_TRIGRAPH); } -#line 2461 "cpp_re.inc" yy296: +#line 210 "cpp.re" + { BOOST_WAVE_RET(T_OR_TRIGRAPH); } +#line 2471 "cpp_re.inc" +yy297: yych = *++YYCURSOR; - if (yych == '=') goto yy437; -#line 200 "cpp.re" + if (yych == '=') goto yy439; +#line 204 "cpp.re" { BOOST_WAVE_RET(T_XOR_TRIGRAPH); } -#line 2467 "cpp_re.inc" -yy298: +#line 2477 "cpp_re.inc" +yy299: ++YYCURSOR; -#line 154 "cpp.re" +#line 158 "cpp.re" { BOOST_WAVE_RET(T_LEFTBRACKET_TRIGRAPH); } -#line 2472 "cpp_re.inc" -yy300: +#line 2482 "cpp_re.inc" +yy301: ++YYCURSOR; -#line 157 "cpp.re" +#line 161 "cpp.re" { BOOST_WAVE_RET(T_RIGHTBRACKET_TRIGRAPH); } -#line 2477 "cpp_re.inc" -yy302: +#line 2487 "cpp_re.inc" +yy303: ++YYCURSOR; -#line 208 "cpp.re" +#line 212 "cpp.re" { BOOST_WAVE_RET(T_COMPL_TRIGRAPH); } -#line 2482 "cpp_re.inc" -yy304: +#line 2492 "cpp_re.inc" +yy305: yyaccept = 12; yych = *(YYMARKER = ++YYCURSOR); if (yych == 'U') goto yy183; if (yych == 'u') goto yy184; -yy305: -#line 268 "cpp.re" - { BOOST_WAVE_RET(T_ANY_TRIGRAPH); } -#line 2491 "cpp_re.inc" yy306: +#line 272 "cpp.re" + { BOOST_WAVE_RET(T_ANY_TRIGRAPH); } +#line 2501 "cpp_re.inc" +yy307: ++YYCURSOR; -#line 148 "cpp.re" +#line 152 "cpp.re" { BOOST_WAVE_RET(T_LEFTBRACE_TRIGRAPH); } -#line 2496 "cpp_re.inc" -yy308: +#line 2506 "cpp_re.inc" +yy309: yyaccept = 13; yych = *(YYMARKER = ++YYCURSOR); if (yych <= 'c') { @@ -2506,10 +2516,10 @@ yy308: } } else { if (yych <= '.') { - if (yych == '#') goto yy439; + if (yych == '#') goto yy441; } else { if (yych <= '/') goto yy106; - if (yych == '?') goto yy441; + if (yych == '?') goto yy443; } } } else { @@ -2525,23 +2535,23 @@ yy308: if (yych <= 't') { if (yych == 'r') goto yy106; } else { - if (yych == 'v') goto yy309; + if (yych == 'v') goto yy310; if (yych <= 'w') goto yy106; } } } -yy309: -#line 161 "cpp.re" - { BOOST_WAVE_RET(T_POUND_TRIGRAPH); } -#line 2537 "cpp_re.inc" yy310: +#line 165 "cpp.re" + { BOOST_WAVE_RET(T_POUND_TRIGRAPH); } +#line 2547 "cpp_re.inc" +yy311: ++YYCURSOR; -#line 151 "cpp.re" +#line 155 "cpp.re" { BOOST_WAVE_RET(T_RIGHTBRACE_TRIGRAPH); } -#line 2542 "cpp_re.inc" -yy312: +#line 2552 "cpp_re.inc" +yy313: ++YYCURSOR; -#line 304 "cpp.re" +#line 308 "cpp.re" { if (s->act_in_cpp0x_mode) { @@ -2551,102 +2561,102 @@ yy312: --YYCURSOR; BOOST_WAVE_RET(T_IDENTIFIER); } -#line 2555 "cpp_re.inc" -yy314: +#line 2565 "cpp_re.inc" +yy315: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { if (yych <= '/') goto yy100; - if (yych <= '9') goto yy442; + if (yych <= '9') goto yy444; goto yy100; } else { - if (yych <= 'F') goto yy442; + if (yych <= 'F') goto yy444; if (yych <= '`') goto yy100; - if (yych <= 'f') goto yy442; + if (yych <= 'f') goto yy444; goto yy100; } -yy315: +yy316: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { if (yych <= '/') goto yy100; - if (yych <= '9') goto yy443; + if (yych <= '9') goto yy445; goto yy100; } else { - if (yych <= 'F') goto yy443; + if (yych <= 'F') goto yy445; if (yych <= '`') goto yy100; - if (yych <= 'f') goto yy443; + if (yych <= 'f') goto yy445; goto yy100; } -yy316: - yyaccept = 2; - yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'x') goto yy444; - goto yy19; yy317: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy325; - if (yych == 'i') goto yy445; + if (yych == 'x') goto yy446; goto yy19; yy318: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'n') goto yy446; + if (yych == 'a') goto yy326; + if (yych == 'i') goto yy447; goto yy19; yy319: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy447; + if (yych == 'n') goto yy448; goto yy19; yy320: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy448; + if (yych == 'e') goto yy449; goto yy19; yy321: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'm') goto yy449; + if (yych == 'r') goto yy450; goto yy19; yy322: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 's') goto yy451; + if (yych == 'm') goto yy451; goto yy19; yy323: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy452; + if (yych == 's') goto yy453; goto yy19; yy324: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'c') goto yy453; + if (yych == 'e') goto yy454; goto yy19; yy325: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 's') goto yy454; + if (yych == 'c') goto yy455; goto yy19; yy326: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy455; + if (yych == 's') goto yy456; goto yy19; yy327: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'd') goto yy456; + if (yych == 'l') goto yy457; goto yy19; yy328: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'g') goto yy457; + if (yych == 'd') goto yy458; goto yy19; yy329: + yyaccept = 2; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 'g') goto yy459; + goto yy19; +yy330: yyaccept = 14; yych = *(YYMARKER = ++YYCURSOR); if (yych <= '@') { @@ -2661,16 +2671,16 @@ yy329: if (yych <= 'Z') goto yy18; if (yych == '\\') goto yy120; } else { - if (yych <= '_') goto yy458; - if (yych <= '`') goto yy330; + if (yych <= '_') goto yy460; + if (yych <= '`') goto yy331; if (yych <= 'z') goto yy18; } } -yy330: -#line 248 "cpp.re" - { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_ANDAND_ALT); } -#line 2673 "cpp_re.inc" yy331: +#line 252 "cpp.re" + { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_ANDAND_ALT); } +#line 2683 "cpp_re.inc" +yy332: yyaccept = 15; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -2678,135 +2688,135 @@ yy331: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy332: -#line 50 "cpp.re" - { BOOST_WAVE_RET(T_ASM); } -#line 2685 "cpp_re.inc" yy333: - yyaccept = 2; - yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'o') goto yy459; - goto yy19; +#line 53 "cpp.re" + { BOOST_WAVE_RET(T_ASM); } +#line 2695 "cpp_re.inc" yy334: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy461; - if (yych == 'o') goto yy462; + if (yych == 'o') goto yy461; goto yy19; yy335: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy463; + if (yych == 'a') goto yy463; + if (yych == 'o') goto yy464; goto yy19; yy336: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy465; + if (yych == 'l') goto yy465; goto yy19; yy337: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy466; + if (yych == 'a') goto yy467; goto yy19; yy338: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'c') goto yy468; + if (yych == 'e') goto yy468; goto yy19; yy339: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy469; + if (yych == 'c') goto yy470; goto yy19; yy340: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 's') goto yy471; + if (yych == 'r') goto yy471; goto yy19; yy341: + yyaccept = 2; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 's') goto yy473; + goto yy19; +yy342: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); if (yych <= 'q') { - if (yych == 'a') goto yy472; + if (yych == 'a') goto yy474; goto yy19; } else { - if (yych <= 'r') goto yy473; - if (yych == 'y') goto yy474; + if (yych <= 'r') goto yy475; + if (yych == 'y') goto yy476; goto yy19; } -yy342: +yy343: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'p') goto yy475; + if (yych == 'p') goto yy477; goto yy19; -yy343: +yy344: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); if (yych <= 'r') { - if (yych == 'c') goto yy476; + if (yych == 'c') goto yy478; goto yy19; } else { - if (yych <= 's') goto yy477; - if (yych <= 't') goto yy478; + if (yych <= 's') goto yy479; + if (yych <= 't') goto yy480; goto yy19; } -yy344: - yyaccept = 2; - yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy479; - goto yy19; yy345: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy480; + if (yych == 'l') goto yy481; goto yy19; yy346: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy481; + if (yych == 'a') goto yy482; goto yy19; yy347: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'b') goto yy482; + if (yych == 'e') goto yy483; goto yy19; yy348: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy483; + if (yych == 'b') goto yy484; goto yy19; yy349: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy484; + if (yych == 'a') goto yy485; goto yy19; yy350: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'm') goto yy486; + if (yych == 'e') goto yy486; goto yy19; yy351: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy488; - if (yych == 'o') goto yy489; + if (yych == 'm') goto yy488; goto yy19; yy352: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy490; + if (yych == 'l') goto yy490; + if (yych == 'o') goto yy491; goto yy19; yy353: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 's') goto yy491; + if (yych == 'e') goto yy492; goto yy19; yy354: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy492; + if (yych == 's') goto yy493; goto yy19; yy355: + yyaccept = 2; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 'a') goto yy494; + goto yy19; +yy356: yyaccept = 16; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -2814,19 +2824,14 @@ yy355: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy356: -#line 84 "cpp.re" - { BOOST_WAVE_RET(T_FOR); } -#line 2821 "cpp_re.inc" yy357: - yyaccept = 2; - yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy493; - goto yy19; +#line 87 "cpp.re" + { BOOST_WAVE_RET(T_FOR); } +#line 2831 "cpp_re.inc" yy358: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'o') goto yy494; + if (yych == 'e') goto yy495; goto yy19; yy359: yyaccept = 2; @@ -2836,9 +2841,14 @@ yy359: yy360: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy497; + if (yych == 'o') goto yy498; goto yy19; yy361: + yyaccept = 2; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 'i') goto yy499; + goto yy19; +yy362: yyaccept = 17; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -2846,26 +2856,31 @@ yy361: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy362: -#line 90 "cpp.re" - { BOOST_WAVE_RET(T_INT); } -#line 2853 "cpp_re.inc" yy363: - yyaccept = 2; - yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'g') goto yy498; - goto yy19; +#line 93 "cpp.re" + { BOOST_WAVE_RET(T_INT); } +#line 2863 "cpp_re.inc" yy364: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy500; + if (yych == 'g') goto yy500; goto yy19; yy365: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy501; + if (yych == 'u') goto yy502; goto yy19; yy366: + yyaccept = 2; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 'a') goto yy503; + goto yy19; +yy367: + yyaccept = 2; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 'e') goto yy504; + goto yy19; +yy368: yyaccept = 18; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -2873,16 +2888,16 @@ yy366: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy367: -#line 94 "cpp.re" +yy369: +#line 98 "cpp.re" { BOOST_WAVE_RET(T_NEW); } -#line 2880 "cpp_re.inc" -yy368: +#line 2895 "cpp_re.inc" +yy370: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'x') goto yy502; + if (yych == 'x') goto yy505; goto yy19; -yy369: +yy371: yyaccept = 19; yych = *(YYMARKER = ++YYCURSOR); if (yych <= '@') { @@ -2897,117 +2912,117 @@ yy369: if (yych <= 'Z') goto yy18; if (yych == '\\') goto yy120; } else { - if (yych <= '_') goto yy503; - if (yych <= '`') goto yy370; + if (yych <= '_') goto yy506; + if (yych <= '`') goto yy372; if (yych <= 'z') goto yy18; } } -yy370: -#line 211 "cpp.re" - { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_NOT_ALT); } -#line 2909 "cpp_re.inc" -yy371: - yyaccept = 2; - yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy504; - goto yy19; yy372: - yyaccept = 2; - yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy505; - goto yy19; +#line 215 "cpp.re" + { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_NOT_ALT); } +#line 2924 "cpp_re.inc" yy373: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy506; + if (yych == 'l') goto yy507; goto yy19; yy374: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'v') goto yy507; + if (yych == 'r') goto yy508; goto yy19; yy375: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy508; + if (yych == 'e') goto yy509; goto yy19; yy376: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy509; + if (yych == 'v') goto yy510; goto yy19; yy377: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy510; + if (yych == 't') goto yy511; goto yy19; yy378: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'n') goto yy511; + if (yych == 'l') goto yy512; goto yy19; yy379: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'u') goto yy512; + if (yych == 'i') goto yy513; goto yy19; yy380: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'u') goto yy513; + if (yych == 'n') goto yy514; goto yy19; yy381: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy514; + if (yych == 'u') goto yy515; goto yy19; yy382: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'n') goto yy515; + if (yych == 'u') goto yy516; goto yy19; yy383: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy516; + if (yych == 'r') goto yy517; goto yy19; yy384: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy517; + if (yych == 'n') goto yy518; goto yy19; yy385: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'u') goto yy518; + if (yych == 'e') goto yy519; goto yy19; yy386: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy519; + if (yych == 't') goto yy520; goto yy19; yy387: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'p') goto yy520; + if (yych == 'u') goto yy521; goto yy19; yy388: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 's') goto yy521; + if (yych == 't') goto yy522; goto yy19; yy389: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy523; - if (yych == 'o') goto yy524; + if (yych == 'p') goto yy523; goto yy19; yy390: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy525; + if (yych == 's') goto yy524; goto yy19; yy391: + yyaccept = 2; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 'e') goto yy526; + if (yych == 'o') goto yy527; + goto yy19; +yy392: + yyaccept = 2; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 'e') goto yy528; + goto yy19; +yy393: yyaccept = 20; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -3015,56 +3030,56 @@ yy391: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy392: -#line 118 "cpp.re" - { BOOST_WAVE_RET(T_TRY); } -#line 3022 "cpp_re.inc" -yy393: - yyaccept = 2; - yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy527; - goto yy19; yy394: - yyaccept = 2; - yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'o') goto yy528; - goto yy19; +#line 122 "cpp.re" + { BOOST_WAVE_RET(T_TRY); } +#line 3037 "cpp_re.inc" yy395: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy529; + if (yych == 'e') goto yy530; goto yy19; yy396: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'n') goto yy530; + if (yych == 'o') goto yy531; goto yy19; yy397: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy531; + if (yych == 'i') goto yy532; goto yy19; yy398: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'd') goto yy532; + if (yych == 'n') goto yy533; goto yy19; yy399: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy534; + if (yych == 't') goto yy534; goto yy19; yy400: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy535; + if (yych == 'd') goto yy535; goto yy19; yy401: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy536; + if (yych == 'a') goto yy537; goto yy19; yy402: + yyaccept = 2; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 'a') goto yy538; + goto yy19; +yy403: + yyaccept = 2; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 'l') goto yy539; + goto yy19; +yy404: yyaccept = 21; yych = *(YYMARKER = ++YYCURSOR); if (yych <= '@') { @@ -3079,20 +3094,20 @@ yy402: if (yych <= 'Z') goto yy18; if (yych == '\\') goto yy120; } else { - if (yych <= '_') goto yy537; - if (yych <= '`') goto yy403; + if (yych <= '_') goto yy540; + if (yych <= '`') goto yy405; if (yych <= 'z') goto yy18; } } -yy403: -#line 201 "cpp.re" +yy405: +#line 205 "cpp.re" { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_XOR_ALT); } -#line 3091 "cpp_re.inc" -yy404: +#line 3106 "cpp_re.inc" +yy406: yych = *++YYCURSOR; - if (yych == '!') goto yy538; + if (yych == '!') goto yy541; goto yy100; -yy405: +yy407: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; @@ -3100,116 +3115,116 @@ yy405: goto yy98; } if (yych <= 0x1F) goto yy100; - if (yych <= '"') goto yy540; + if (yych <= '"') goto yy543; if (yych <= '?') goto yy103; - goto yy405; -yy407: + goto yy407; +yy409: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { if (yych <= '/') goto yy100; - if (yych <= '9') goto yy541; + if (yych <= '9') goto yy544; goto yy100; } else { - if (yych <= 'F') goto yy541; + if (yych <= 'F') goto yy544; if (yych <= '`') goto yy100; - if (yych <= 'f') goto yy541; + if (yych <= 'f') goto yy544; goto yy100; } -yy408: +yy410: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { if (yych <= '/') goto yy100; - if (yych <= '9') goto yy542; + if (yych <= '9') goto yy545; goto yy100; } else { - if (yych <= 'F') goto yy542; + if (yych <= 'F') goto yy545; if (yych <= '`') goto yy100; - if (yych <= 'f') goto yy542; + if (yych <= 'f') goto yy545; goto yy100; } -yy409: +yy411: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yybm[0+yych] & 32) { - goto yy409; + goto yy411; } if (yych <= 0x1F) { if (yych <= 0x08) goto yy100; - if (yych <= '\r') goto yy260; + if (yych <= '\r') goto yy261; goto yy100; } else { if (yych == '/') goto yy105; - goto yy260; + goto yy261; } -yy411: +yy413: ++YYCURSOR; -#line 163 "cpp.re" +#line 167 "cpp.re" { BOOST_WAVE_RET(T_POUND_POUND_TRIGRAPH); } -#line 3154 "cpp_re.inc" -yy413: - yych = *++YYCURSOR; - if (yych == 'i') goto yy543; - goto yy100; -yy414: - yych = *++YYCURSOR; - if (yych == 'f') goto yy544; - goto yy100; +#line 3169 "cpp_re.inc" yy415: yych = *++YYCURSOR; - if (yych == 'e') goto yy546; + if (yych == 'i') goto yy546; goto yy100; yy416: yych = *++YYCURSOR; - if (yych == 'i') goto yy548; - if (yych == 'r') goto yy549; + if (yych == 'f') goto yy547; goto yy100; yy417: yych = *++YYCURSOR; - if (yych == 'o') goto yy550; + if (yych == 'e') goto yy549; goto yy100; yy418: yych = *++YYCURSOR; - if (yych == 'e') goto yy551; + if (yych == 'i') goto yy551; + if (yych == 'r') goto yy552; goto yy100; yy419: yych = *++YYCURSOR; - if (yych == 'd') goto yy552; + if (yych == 'o') goto yy553; goto yy100; yy420: yych = *++YYCURSOR; - if (yych == 'l') goto yy553; + if (yych == 'e') goto yy554; goto yy100; yy421: yych = *++YYCURSOR; - if (yych == 'e') goto yy554; + if (yych == 'd') goto yy555; goto yy100; yy422: yych = *++YYCURSOR; - if (yych == 'g') goto yy556; + if (yych == 'l') goto yy556; goto yy100; yy423: yych = *++YYCURSOR; - if (yych == 'i') goto yy557; + if (yych == 'e') goto yy557; goto yy100; yy424: yych = *++YYCURSOR; - if (yych == 'e') goto yy558; + if (yych == 'g') goto yy559; goto yy100; yy425: yych = *++YYCURSOR; - if (yych == 'n') goto yy559; + if (yych == 'i') goto yy560; goto yy100; yy426: + yych = *++YYCURSOR; + if (yych == 'e') goto yy561; + goto yy100; +yy427: + yych = *++YYCURSOR; + if (yych == 'n') goto yy562; + goto yy100; +yy428: ++YYCURSOR; -#line 166 "cpp.re" +#line 170 "cpp.re" { BOOST_WAVE_RET(T_POUND_POUND_ALT); } -#line 3212 "cpp_re.inc" -yy428: +#line 3227 "cpp_re.inc" +yy430: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; @@ -3217,120 +3232,120 @@ yy428: goto yy131; } if (yych <= 0x1F) goto yy100; - if (yych <= '\'') goto yy560; + if (yych <= '\'') goto yy563; if (yych <= '?') goto yy133; - goto yy428; -yy430: + goto yy430; +yy432: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { if (yych <= '/') goto yy100; - if (yych <= '9') goto yy561; + if (yych <= '9') goto yy564; goto yy100; } else { - if (yych <= 'F') goto yy561; + if (yych <= 'F') goto yy564; if (yych <= '`') goto yy100; - if (yych <= 'f') goto yy561; + if (yych <= 'f') goto yy564; goto yy100; } -yy431: +yy433: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { if (yych <= '/') goto yy100; - if (yych <= '9') goto yy562; + if (yych <= '9') goto yy565; goto yy100; } else { - if (yych <= 'F') goto yy562; + if (yych <= 'F') goto yy565; if (yych <= '`') goto yy100; - if (yych <= 'f') goto yy562; + if (yych <= 'f') goto yy565; goto yy100; } -yy432: +yy434: ++YYCURSOR; -#line 227 "cpp.re" +#line 231 "cpp.re" { BOOST_WAVE_RET(T_ORASSIGN_TRIGRAPH); } -#line 3256 "cpp_re.inc" -yy434: +#line 3271 "cpp_re.inc" +yy436: yych = *++YYCURSOR; - if (yych == '?') goto yy563; + if (yych == '?') goto yy566; goto yy100; -yy435: +yy437: ++YYCURSOR; -#line 250 "cpp.re" +#line 254 "cpp.re" { BOOST_WAVE_RET(T_OROR_TRIGRAPH); } -#line 3265 "cpp_re.inc" -yy437: +#line 3280 "cpp_re.inc" +yy439: ++YYCURSOR; -#line 222 "cpp.re" +#line 226 "cpp.re" { BOOST_WAVE_RET(T_XORASSIGN_TRIGRAPH); } -#line 3270 "cpp_re.inc" -yy439: +#line 3285 "cpp_re.inc" +yy441: ++YYCURSOR; -#line 164 "cpp.re" +#line 168 "cpp.re" { BOOST_WAVE_RET(T_POUND_POUND_TRIGRAPH); } -#line 3275 "cpp_re.inc" -yy441: +#line 3290 "cpp_re.inc" +yy443: yych = *++YYCURSOR; - if (yych == '?') goto yy564; + if (yych == '?') goto yy567; goto yy100; -yy442: +yy444: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { if (yych <= '/') goto yy100; - if (yych <= '9') goto yy565; + if (yych <= '9') goto yy568; goto yy100; } else { - if (yych <= 'F') goto yy565; + if (yych <= 'F') goto yy568; if (yych <= '`') goto yy100; - if (yych <= 'f') goto yy565; + if (yych <= 'f') goto yy568; goto yy100; } -yy443: +yy445: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { if (yych <= '/') goto yy100; - if (yych <= '9') goto yy566; + if (yych <= '9') goto yy569; goto yy100; } else { - if (yych <= 'F') goto yy566; + if (yych <= 'F') goto yy569; if (yych <= '`') goto yy100; - if (yych <= 'f') goto yy566; + if (yych <= 'f') goto yy569; goto yy100; } -yy444: +yy446: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'c') goto yy567; + if (yych == 'c') goto yy570; goto yy19; -yy445: +yy447: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'n') goto yy568; + if (yych == 'n') goto yy571; goto yy19; -yy446: +yy448: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy455; - if (yych == 't') goto yy569; + if (yych == 'l') goto yy457; + if (yych == 't') goto yy572; goto yy19; -yy447: +yy449: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy570; + if (yych == 'a') goto yy573; goto yy19; -yy448: +yy450: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'y') goto yy571; + if (yych == 'y') goto yy574; goto yy19; -yy449: +yy451: yyaccept = 22; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -3338,51 +3353,51 @@ yy449: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy450: -#line 145 "cpp.re" - { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_ASM : T_IDENTIFIER); } -#line 3345 "cpp_re.inc" -yy451: - yyaccept = 2; - yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy573; - goto yy19; yy452: - yyaccept = 2; - yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'c') goto yy574; - goto yy19; +#line 149 "cpp.re" + { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_ASM : T_IDENTIFIER); } +#line 3360 "cpp_re.inc" yy453: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy575; + if (yych == 'e') goto yy576; goto yy19; yy454: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy576; + if (yych == 'c') goto yy577; goto yy19; yy455: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy577; + if (yych == 'l') goto yy578; goto yy19; yy456: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'c') goto yy578; + if (yych == 't') goto yy579; goto yy19; yy457: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'n') goto yy579; + if (yych == 'i') goto yy580; goto yy19; yy458: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy580; + if (yych == 'c') goto yy581; goto yy19; yy459: + yyaccept = 2; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 'n') goto yy582; + goto yy19; +yy460: + yyaccept = 2; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 'e') goto yy583; + goto yy19; +yy461: yyaccept = 23; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -3390,21 +3405,21 @@ yy459: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy460: -#line 51 "cpp.re" +yy462: +#line 54 "cpp.re" { BOOST_WAVE_RET(T_AUTO); } -#line 3397 "cpp_re.inc" -yy461: +#line 3412 "cpp_re.inc" +yy463: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'n') goto yy581; + if (yych == 'n') goto yy584; goto yy19; -yy462: +yy464: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy582; + if (yych == 'r') goto yy585; goto yy19; -yy463: +yy465: yyaccept = 24; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -3412,16 +3427,16 @@ yy463: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy464: -#line 52 "cpp.re" +yy466: +#line 55 "cpp.re" { BOOST_WAVE_RET(T_BOOL); } -#line 3419 "cpp_re.inc" -yy465: +#line 3434 "cpp_re.inc" +yy467: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'k') goto yy584; + if (yych == 'k') goto yy587; goto yy19; -yy466: +yy468: yyaccept = 25; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -3429,16 +3444,16 @@ yy466: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy467: -#line 54 "cpp.re" +yy469: +#line 57 "cpp.re" { BOOST_WAVE_RET(T_CASE); } -#line 3436 "cpp_re.inc" -yy468: +#line 3451 "cpp_re.inc" +yy470: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'h') goto yy586; + if (yych == 'h') goto yy589; goto yy19; -yy469: +yy471: yyaccept = 26; yych = *(YYMARKER = ++YYCURSOR); if (yych <= '9') { @@ -3446,16 +3461,16 @@ yy469: if (yych <= '$') { if (yych >= '$') goto yy18; } else { - if (yych <= '/') goto yy470; + if (yych <= '/') goto yy472; if (yych <= '0') goto yy18; - goto yy588; + goto yy591; } } else { if (yych <= '3') { if (yych <= '2') goto yy18; - goto yy589; + goto yy592; } else { - if (yych == '8') goto yy590; + if (yych == '8') goto yy593; goto yy18; } } @@ -3464,7 +3479,7 @@ yy469: if (yych <= '?') { if (yych >= '?') goto yy119; } else { - if (yych <= '@') goto yy470; + if (yych <= '@') goto yy472; if (yych <= 'Z') goto yy18; } } else { @@ -3472,54 +3487,44 @@ yy469: if (yych <= '\\') goto yy120; if (yych >= '_') goto yy18; } else { - if (yych <= '`') goto yy470; + if (yych <= '`') goto yy472; if (yych <= 'z') goto yy18; } } } -yy470: -#line 56 "cpp.re" - { BOOST_WAVE_RET(T_CHAR); } -#line 3484 "cpp_re.inc" -yy471: - yyaccept = 2; - yych = *(YYMARKER = ++YYCURSOR); - if (yych == 's') goto yy591; - goto yy19; yy472: - yyaccept = 2; - yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'w') goto yy593; - goto yy19; +#line 59 "cpp.re" + { BOOST_WAVE_RET(T_CHAR); } +#line 3499 "cpp_re.inc" yy473: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy594; + if (yych == 's') goto yy594; goto yy19; yy474: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy595; + if (yych == 'w') goto yy596; goto yy19; yy475: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy596; + if (yych == 'e') goto yy597; goto yy19; yy476: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy598; + if (yych == 'i') goto yy598; goto yy19; yy477: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy599; + if (yych == 'l') goto yy599; goto yy19; yy478: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy601; + if (yych == 'e') goto yy601; goto yy19; yy479: yyaccept = 2; @@ -3529,24 +3534,34 @@ yy479: yy480: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'u') goto yy603; + if (yych == 'i') goto yy604; goto yy19; yy481: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy604; + if (yych == 't') goto yy605; goto yy19; yy482: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy605; + if (yych == 'u') goto yy606; goto yy19; yy483: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'm') goto yy606; + if (yych == 't') goto yy607; goto yy19; yy484: + yyaccept = 2; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 'l') goto yy608; + goto yy19; +yy485: + yyaccept = 2; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 'm') goto yy609; + goto yy19; +yy486: yyaccept = 27; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -3554,11 +3569,11 @@ yy484: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy485: -#line 77 "cpp.re" +yy487: +#line 80 "cpp.re" { BOOST_WAVE_RET(T_ELSE); } -#line 3561 "cpp_re.inc" -yy486: +#line 3576 "cpp_re.inc" +yy488: yyaccept = 28; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -3566,41 +3581,41 @@ yy486: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy487: -#line 78 "cpp.re" +yy489: +#line 81 "cpp.re" { BOOST_WAVE_RET(T_ENUM); } -#line 3573 "cpp_re.inc" -yy488: +#line 3588 "cpp_re.inc" +yy490: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy607; + if (yych == 'i') goto yy610; goto yy19; -yy489: +yy491: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy608; + if (yych == 'r') goto yy611; goto yy19; -yy490: +yy492: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy609; + if (yych == 'r') goto yy612; goto yy19; -yy491: +yy493: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy610; + if (yych == 'e') goto yy613; goto yy19; -yy492: +yy494: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy612; + if (yych == 't') goto yy615; goto yy19; -yy493: +yy495: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'n') goto yy614; + if (yych == 'n') goto yy617; goto yy19; -yy494: +yy496: yyaccept = 29; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -3608,21 +3623,21 @@ yy494: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy495: -#line 86 "cpp.re" +yy497: +#line 89 "cpp.re" { BOOST_WAVE_RET(T_GOTO); } -#line 3615 "cpp_re.inc" -yy496: +#line 3630 "cpp_re.inc" +yy498: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy615; + if (yych == 'r') goto yy618; goto yy19; -yy497: +yy499: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'n') goto yy616; + if (yych == 'n') goto yy619; goto yy19; -yy498: +yy500: yyaccept = 30; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -3630,116 +3645,121 @@ yy498: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy499: -#line 91 "cpp.re" - { BOOST_WAVE_RET(T_LONG); } -#line 3637 "cpp_re.inc" -yy500: - yyaccept = 2; - yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'b') goto yy617; - goto yy19; yy501: - yyaccept = 2; - yych = *(YYMARKER = ++YYCURSOR); - if (yych == 's') goto yy618; - goto yy19; +#line 94 "cpp.re" + { BOOST_WAVE_RET(T_LONG); } +#line 3652 "cpp_re.inc" yy502: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'c') goto yy619; + if (yych == 'l') goto yy620; goto yy19; yy503: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy620; + if (yych == 'b') goto yy621; goto yy19; yy504: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'p') goto yy621; + if (yych == 's') goto yy622; goto yy19; yy505: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy622; + if (yych == 'c') goto yy623; goto yy19; yy506: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'q') goto yy623; + if (yych == 'e') goto yy624; goto yy19; yy507: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy625; + if (yych == 'p') goto yy625; goto yy19; yy508: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy626; + if (yych == 'a') goto yy626; goto yy19; yy509: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy627; + if (yych == 'q') goto yy627; goto yy19; yy510: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 's') goto yy628; + if (yych == 'a') goto yy629; goto yy19; yy511: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy629; + if (yych == 'e') goto yy630; goto yy19; yy512: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy630; + if (yych == 'i') goto yy631; goto yy19; yy513: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy631; + if (yych == 's') goto yy632; goto yy19; yy514: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy632; + if (yych == 't') goto yy633; goto yy19; yy515: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy634; + if (yych == 'i') goto yy634; goto yy19; yy516: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'o') goto yy635; + if (yych == 'r') goto yy635; goto yy19; yy517: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy636; + if (yych == 't') goto yy636; goto yy19; yy518: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'c') goto yy637; + if (yych == 'e') goto yy638; goto yy19; yy519: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'c') goto yy638; + if (yych == 'o') goto yy639; goto yy19; yy520: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy639; + if (yych == 'i') goto yy640; goto yy19; yy521: + yyaccept = 2; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 'c') goto yy641; + goto yy19; +yy522: + yyaccept = 2; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 'c') goto yy642; + goto yy19; +yy523: + yyaccept = 2; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 'l') goto yy643; + goto yy19; +yy524: yyaccept = 31; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -3747,21 +3767,21 @@ yy521: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy522: -#line 114 "cpp.re" +yy525: +#line 118 "cpp.re" { BOOST_WAVE_RET(T_THIS); } -#line 3754 "cpp_re.inc" -yy523: +#line 3774 "cpp_re.inc" +yy526: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy640; + if (yych == 'a') goto yy644; goto yy19; -yy524: +yy527: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'w') goto yy641; + if (yych == 'w') goto yy645; goto yy19; -yy525: +yy528: yyaccept = 32; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -3769,42 +3789,42 @@ yy525: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy526: -#line 117 "cpp.re" +yy529: +#line 121 "cpp.re" { BOOST_WAVE_RET(T_TRUE); } -#line 3776 "cpp_re.inc" -yy527: +#line 3796 "cpp_re.inc" +yy530: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); if (yych <= 'h') { - if (yych == 'd') goto yy643; + if (yych == 'd') goto yy647; goto yy19; } else { - if (yych <= 'i') goto yy644; - if (yych == 'n') goto yy645; + if (yych <= 'i') goto yy648; + if (yych == 'n') goto yy649; goto yy19; } -yy528: +yy531: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'n') goto yy646; + if (yych == 'n') goto yy650; goto yy19; -yy529: +yy532: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'g') goto yy648; + if (yych == 'g') goto yy652; goto yy19; -yy530: +yy533: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'g') goto yy649; + if (yych == 'g') goto yy653; goto yy19; -yy531: +yy534: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'u') goto yy651; + if (yych == 'u') goto yy655; goto yy19; -yy532: +yy535: yyaccept = 33; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -3812,36 +3832,36 @@ yy532: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy533: -#line 126 "cpp.re" +yy536: +#line 130 "cpp.re" { BOOST_WAVE_RET(T_VOID); } -#line 3819 "cpp_re.inc" -yy534: +#line 3839 "cpp_re.inc" +yy537: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy652; + if (yych == 't') goto yy656; goto yy19; -yy535: +yy538: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy653; + if (yych == 'r') goto yy657; goto yy19; -yy536: +yy539: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy654; + if (yych == 'e') goto yy658; goto yy19; -yy537: +yy540: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy656; + if (yych == 'e') goto yy660; goto yy19; -yy538: +yy541: ++YYCURSOR; -#line 251 "cpp.re" +#line 255 "cpp.re" { BOOST_WAVE_RET(T_OROR_TRIGRAPH); } -#line 3844 "cpp_re.inc" -yy540: +#line 3864 "cpp_re.inc" +yy543: yyaccept = 34; YYMARKER = ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); @@ -3853,94 +3873,94 @@ yy540: if (yych <= '"') goto yy101; if (yych <= '?') goto yy103; goto yy104; -yy541: +yy544: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { if (yych <= '/') goto yy100; - if (yych <= '9') goto yy657; + if (yych <= '9') goto yy661; goto yy100; } else { - if (yych <= 'F') goto yy657; + if (yych <= 'F') goto yy661; if (yych <= '`') goto yy100; - if (yych <= 'f') goto yy657; + if (yych <= 'f') goto yy661; goto yy100; } -yy542: +yy545: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { if (yych <= '/') goto yy100; - if (yych <= '9') goto yy259; + if (yych <= '9') goto yy260; goto yy100; } else { - if (yych <= 'F') goto yy259; + if (yych <= 'F') goto yy260; if (yych <= '`') goto yy100; - if (yych <= 'f') goto yy259; + if (yych <= 'f') goto yy260; goto yy100; } -yy543: +yy546: yych = *++YYCURSOR; - if (yych == 'n') goto yy658; + if (yych == 'n') goto yy662; goto yy100; -yy544: +yy547: ++YYCURSOR; -#line 330 "cpp.re" +#line 334 "cpp.re" { BOOST_WAVE_RET(T_PP_ELIF); } -#line 3893 "cpp_re.inc" -yy546: +#line 3913 "cpp_re.inc" +yy549: ++YYCURSOR; -#line 329 "cpp.re" +#line 333 "cpp.re" { BOOST_WAVE_RET(T_PP_ELSE); } -#line 3898 "cpp_re.inc" -yy548: +#line 3918 "cpp_re.inc" +yy551: yych = *++YYCURSOR; - if (yych == 'f') goto yy659; + if (yych == 'f') goto yy663; goto yy100; -yy549: +yy552: yych = *++YYCURSOR; - if (yych == 'e') goto yy661; + if (yych == 'e') goto yy665; goto yy100; -yy550: +yy553: yych = *++YYCURSOR; - if (yych == 'r') goto yy662; + if (yych == 'r') goto yy666; goto yy100; -yy551: +yy554: yych = *++YYCURSOR; - if (yych == 'f') goto yy664; + if (yych == 'f') goto yy668; goto yy100; -yy552: +yy555: yych = *++YYCURSOR; - if (yych == 'e') goto yy666; + if (yych == 'e') goto yy670; goto yy100; -yy553: +yy556: yych = *++YYCURSOR; - if (yych == 'u') goto yy667; + if (yych == 'u') goto yy671; goto yy100; -yy554: +yy557: ++YYCURSOR; -#line 334 "cpp.re" +#line 338 "cpp.re" { BOOST_WAVE_RET(T_PP_LINE); } -#line 3927 "cpp_re.inc" -yy556: +#line 3947 "cpp_re.inc" +yy559: yych = *++YYCURSOR; - if (yych == 'm') goto yy668; + if (yych == 'm') goto yy672; goto yy100; -yy557: +yy560: yych = *++YYCURSOR; - if (yych == 'o') goto yy669; + if (yych == 'o') goto yy673; goto yy100; -yy558: +yy561: yych = *++YYCURSOR; - if (yych == 'f') goto yy670; + if (yych == 'f') goto yy674; goto yy100; -yy559: +yy562: yych = *++YYCURSOR; - if (yych == 'i') goto yy672; + if (yych == 'i') goto yy676; goto yy100; -yy560: +yy563: yyaccept = 35; YYMARKER = ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); @@ -3948,47 +3968,47 @@ yy560: if (yybm[0+yych] & 2) { goto yy131; } - if (yych <= 0x1F) goto yy278; - if (yych <= '\'') goto yy277; + if (yych <= 0x1F) goto yy279; + if (yych <= '\'') goto yy278; if (yych <= '?') goto yy133; goto yy134; -yy561: +yy564: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { if (yych <= '/') goto yy100; - if (yych <= '9') goto yy673; + if (yych <= '9') goto yy677; goto yy100; } else { - if (yych <= 'F') goto yy673; + if (yych <= 'F') goto yy677; if (yych <= '`') goto yy100; - if (yych <= 'f') goto yy673; + if (yych <= 'f') goto yy677; goto yy100; } -yy562: +yy565: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { if (yych <= '/') goto yy100; - if (yych <= '9') goto yy283; + if (yych <= '9') goto yy284; goto yy100; } else { - if (yych <= 'F') goto yy283; + if (yych <= 'F') goto yy284; if (yych <= '`') goto yy100; - if (yych <= 'f') goto yy283; + if (yych <= 'f') goto yy284; goto yy100; } -yy563: +yy566: yych = *++YYCURSOR; - if (yych == '!') goto yy674; + if (yych == '!') goto yy678; goto yy100; -yy564: +yy567: yych = *++YYCURSOR; - if (yych == '=') goto yy676; + if (yych == '=') goto yy680; goto yy100; -yy565: +yy568: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; @@ -4002,7 +4022,7 @@ yy565: if (yych <= 'f') goto yy184; goto yy100; } -yy566: +yy569: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; @@ -4016,32 +4036,32 @@ yy566: if (yych <= 'f') goto yy18; goto yy100; } -yy567: +yy570: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy678; + if (yych == 'e') goto yy682; goto yy19; -yy568: +yy571: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy679; + if (yych == 'a') goto yy683; goto yy19; -yy569: +yy572: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); switch (yych) { - case '1': goto yy680; - case '3': goto yy681; - case '6': goto yy682; - case '8': goto yy683; + case '1': goto yy684; + case '3': goto yy685; + case '6': goto yy686; + case '8': goto yy687; default: goto yy19; } -yy570: +yy573: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'v') goto yy685; + if (yych == 'v') goto yy689; goto yy19; -yy571: +yy574: yyaccept = 36; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4049,57 +4069,57 @@ yy571: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy572: -#line 140 "cpp.re" +yy575: +#line 144 "cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_TRY : T_IDENTIFIER); } -#line 4056 "cpp_re.inc" -yy573: +#line 4076 "cpp_re.inc" +yy576: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'd') goto yy686; + if (yych == 'd') goto yy690; goto yy19; -yy574: +yy577: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy688; + if (yych == 'l') goto yy692; goto yy19; -yy575: +yy578: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 's') goto yy690; + if (yych == 's') goto yy694; goto yy19; -yy576: +yy579: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'c') goto yy691; + if (yych == 'c') goto yy695; goto yy19; -yy577: +yy580: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'n') goto yy692; + if (yych == 'n') goto yy696; goto yy19; -yy578: +yy581: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy693; + if (yych == 'a') goto yy697; goto yy19; -yy579: +yy582: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy694; - if (yych == 'o') goto yy695; + if (yych == 'a') goto yy698; + if (yych == 'o') goto yy699; goto yy19; -yy580: +yy583: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'q') goto yy696; + if (yych == 'q') goto yy700; goto yy19; -yy581: +yy584: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'd') goto yy698; + if (yych == 'd') goto yy702; goto yy19; -yy582: +yy585: yyaccept = 37; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4107,11 +4127,11 @@ yy582: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy583: -#line 205 "cpp.re" +yy586: +#line 209 "cpp.re" { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_OR_ALT); } -#line 4114 "cpp_re.inc" -yy584: +#line 4134 "cpp_re.inc" +yy587: yyaccept = 38; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4119,11 +4139,11 @@ yy584: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy585: -#line 53 "cpp.re" +yy588: +#line 56 "cpp.re" { BOOST_WAVE_RET(T_BREAK); } -#line 4126 "cpp_re.inc" -yy586: +#line 4146 "cpp_re.inc" +yy589: yyaccept = 39; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4131,26 +4151,26 @@ yy586: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy587: -#line 55 "cpp.re" +yy590: +#line 58 "cpp.re" { BOOST_WAVE_RET(T_CATCH); } -#line 4138 "cpp_re.inc" -yy588: +#line 4158 "cpp_re.inc" +yy591: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == '6') goto yy700; + if (yych == '6') goto yy704; goto yy19; -yy589: +yy592: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == '2') goto yy701; + if (yych == '2') goto yy705; goto yy19; -yy590: +yy593: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == '_') goto yy702; + if (yych == '_') goto yy706; goto yy19; -yy591: +yy594: yyaccept = 40; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4158,26 +4178,26 @@ yy591: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy592: -#line 60 "cpp.re" +yy595: +#line 63 "cpp.re" { BOOST_WAVE_RET(T_CLASS); } -#line 4165 "cpp_re.inc" -yy593: +#line 4185 "cpp_re.inc" +yy596: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy703; + if (yych == 'a') goto yy707; goto yy19; -yy594: +yy597: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy704; + if (yych == 't') goto yy708; goto yy19; -yy595: +yy598: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy705; + if (yych == 'e') goto yy709; goto yy19; -yy596: +yy599: yyaccept = 41; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4185,16 +4205,16 @@ yy596: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy597: -#line 209 "cpp.re" +yy600: +#line 213 "cpp.re" { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_COMPL_ALT); } -#line 4192 "cpp_re.inc" -yy598: +#line 4212 "cpp_re.inc" +yy601: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'p') goto yy706; + if (yych == 'p') goto yy710; goto yy19; -yy599: +yy602: yyaccept = 42; yych = *(YYMARKER = ++YYCURSOR); if (yych <= '[') { @@ -4205,7 +4225,7 @@ yy599: if (yych <= '?') { if (yych >= '?') goto yy119; } else { - if (yych <= '@') goto yy600; + if (yych <= '@') goto yy603; if (yych <= 'Z') goto yy18; } } @@ -4214,69 +4234,69 @@ yy599: if (yych <= '^') { if (yych <= '\\') goto yy120; } else { - if (yych <= '_') goto yy707; + if (yych <= '_') goto yy711; if (yych >= 'a') goto yy18; } } else { if (yych <= 'h') { - if (yych <= 'e') goto yy708; + if (yych <= 'e') goto yy712; goto yy18; } else { - if (yych <= 'i') goto yy709; + if (yych <= 'i') goto yy713; if (yych <= 'z') goto yy18; } } } -yy600: -#line 62 "cpp.re" +yy603: +#line 65 "cpp.re" { BOOST_WAVE_RET(T_CONST); } -#line 4234 "cpp_re.inc" -yy601: +#line 4254 "cpp_re.inc" +yy604: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'n') goto yy710; + if (yych == 'n') goto yy714; goto yy19; -yy602: +yy605: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'y') goto yy711; + if (yych == 'y') goto yy715; goto yy19; -yy603: +yy606: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy712; + if (yych == 'l') goto yy716; goto yy19; -yy604: +yy607: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy713; + if (yych == 'e') goto yy717; goto yy19; -yy605: +yy608: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy715; + if (yych == 'e') goto yy719; goto yy19; -yy606: +yy609: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy717; + if (yych == 'i') goto yy721; goto yy19; -yy607: +yy610: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'c') goto yy718; + if (yych == 'c') goto yy722; goto yy19; -yy608: +yy611: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy719; + if (yych == 't') goto yy723; goto yy19; -yy609: +yy612: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'n') goto yy721; + if (yych == 'n') goto yy725; goto yy19; -yy610: +yy613: yyaccept = 43; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4284,11 +4304,11 @@ yy610: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy611: -#line 82 "cpp.re" +yy614: +#line 85 "cpp.re" { BOOST_WAVE_RET(T_FALSE); } -#line 4291 "cpp_re.inc" -yy612: +#line 4311 "cpp_re.inc" +yy615: yyaccept = 44; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4296,56 +4316,61 @@ yy612: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy613: -#line 83 "cpp.re" +yy616: +#line 86 "cpp.re" { BOOST_WAVE_RET(T_FLOAT); } -#line 4303 "cpp_re.inc" -yy614: +#line 4323 "cpp_re.inc" +yy617: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'd') goto yy723; + if (yych == 'd') goto yy727; goto yy19; -yy615: +yy618: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy725; + if (yych == 't') goto yy729; goto yy19; -yy616: +yy619: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy727; + if (yych == 'e') goto yy731; goto yy19; -yy617: +yy620: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy729; + if (yych == 'e') goto yy733; goto yy19; -yy618: +yy621: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'p') goto yy730; + if (yych == 'l') goto yy735; goto yy19; -yy619: +yy622: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy731; + if (yych == 'p') goto yy736; goto yy19; -yy620: +yy623: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'q') goto yy732; + if (yych == 'e') goto yy737; goto yy19; -yy621: +yy624: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy734; + if (yych == 'q') goto yy738; goto yy19; -yy622: +yy625: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy735; + if (yych == 't') goto yy740; goto yy19; -yy623: +yy626: + yyaccept = 2; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 't') goto yy741; + goto yy19; +yy627: yyaccept = 45; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4353,46 +4378,46 @@ yy623: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy624: -#line 226 "cpp.re" +yy628: +#line 230 "cpp.re" { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_ORASSIGN_ALT); } -#line 4360 "cpp_re.inc" -yy625: +#line 4385 "cpp_re.inc" +yy629: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy736; + if (yych == 't') goto yy742; goto yy19; -yy626: +yy630: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'c') goto yy737; + if (yych == 'c') goto yy743; goto yy19; -yy627: +yy631: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'c') goto yy738; + if (yych == 'c') goto yy744; goto yy19; -yy628: +yy632: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy740; + if (yych == 't') goto yy746; goto yy19; -yy629: +yy633: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy741; + if (yych == 'e') goto yy747; goto yy19; -yy630: +yy634: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy742; + if (yych == 'r') goto yy748; goto yy19; -yy631: +yy635: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'n') goto yy743; + if (yych == 'n') goto yy749; goto yy19; -yy632: +yy636: yyaccept = 46; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4400,46 +4425,46 @@ yy632: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy633: -#line 105 "cpp.re" +yy637: +#line 109 "cpp.re" { BOOST_WAVE_RET(T_SHORT); } -#line 4407 "cpp_re.inc" -yy634: +#line 4432 "cpp_re.inc" +yy638: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'd') goto yy745; + if (yych == 'd') goto yy751; goto yy19; -yy635: +yy639: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'f') goto yy747; + if (yych == 'f') goto yy753; goto yy19; -yy636: +yy640: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'c') goto yy749; + if (yych == 'c') goto yy755; goto yy19; -yy637: +yy641: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy751; + if (yych == 't') goto yy757; goto yy19; -yy638: +yy642: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'h') goto yy753; + if (yych == 'h') goto yy759; goto yy19; -yy639: +yy643: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy755; + if (yych == 'a') goto yy761; goto yy19; -yy640: +yy644: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'd') goto yy756; + if (yych == 'd') goto yy762; goto yy19; -yy641: +yy645: yyaccept = 47; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4447,26 +4472,26 @@ yy641: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy642: -#line 116 "cpp.re" +yy646: +#line 120 "cpp.re" { BOOST_WAVE_RET(T_THROW); } -#line 4454 "cpp_re.inc" -yy643: +#line 4479 "cpp_re.inc" +yy647: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy757; + if (yych == 'e') goto yy763; goto yy19; -yy644: +yy648: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'd') goto yy758; + if (yych == 'd') goto yy764; goto yy19; -yy645: +yy649: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy760; + if (yych == 'a') goto yy766; goto yy19; -yy646: +yy650: yyaccept = 48; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4474,16 +4499,16 @@ yy646: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy647: -#line 122 "cpp.re" +yy651: +#line 126 "cpp.re" { BOOST_WAVE_RET(T_UNION); } -#line 4481 "cpp_re.inc" -yy648: +#line 4506 "cpp_re.inc" +yy652: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'n') goto yy761; + if (yych == 'n') goto yy767; goto yy19; -yy649: +yy653: yyaccept = 49; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4491,26 +4516,26 @@ yy649: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy650: -#line 124 "cpp.re" +yy654: +#line 128 "cpp.re" { BOOST_WAVE_RET(T_USING); } -#line 4498 "cpp_re.inc" -yy651: +#line 4523 "cpp_re.inc" +yy655: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy762; + if (yych == 'a') goto yy768; goto yy19; -yy652: +yy656: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy763; + if (yych == 'i') goto yy769; goto yy19; -yy653: +yy657: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == '_') goto yy764; + if (yych == '_') goto yy770; goto yy19; -yy654: +yy658: yyaccept = 50; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4518,127 +4543,127 @@ yy654: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy655: -#line 129 "cpp.re" +yy659: +#line 133 "cpp.re" { BOOST_WAVE_RET(T_WHILE); } -#line 4525 "cpp_re.inc" -yy656: +#line 4550 "cpp_re.inc" +yy660: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'q') goto yy765; + if (yych == 'q') goto yy771; goto yy19; -yy657: +yy661: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { if (yych <= '/') goto yy100; - if (yych <= '9') goto yy258; + if (yych <= '9') goto yy259; goto yy100; } else { - if (yych <= 'F') goto yy258; + if (yych <= 'F') goto yy259; if (yych <= '`') goto yy100; - if (yych <= 'f') goto yy258; + if (yych <= 'f') goto yy259; goto yy100; } -yy658: +yy662: yych = *++YYCURSOR; - if (yych == 'e') goto yy767; + if (yych == 'e') goto yy773; goto yy100; -yy659: +yy663: ++YYCURSOR; -#line 331 "cpp.re" +#line 335 "cpp.re" { BOOST_WAVE_RET(T_PP_ENDIF); } -#line 4553 "cpp_re.inc" -yy661: +#line 4578 "cpp_re.inc" +yy665: yych = *++YYCURSOR; - if (yych == 'g') goto yy769; + if (yych == 'g') goto yy775; goto yy100; -yy662: +yy666: ++YYCURSOR; -#line 335 "cpp.re" +#line 339 "cpp.re" { BOOST_WAVE_RET(T_PP_ERROR); } -#line 4562 "cpp_re.inc" -yy664: +#line 4587 "cpp_re.inc" +yy668: ++YYCURSOR; -#line 327 "cpp.re" +#line 331 "cpp.re" { BOOST_WAVE_RET(T_PP_IFDEF); } -#line 4567 "cpp_re.inc" -yy666: +#line 4592 "cpp_re.inc" +yy670: yych = *++YYCURSOR; - if (yych == 'f') goto yy770; + if (yych == 'f') goto yy776; goto yy100; -yy667: +yy671: yych = *++YYCURSOR; - if (yych == 'd') goto yy772; + if (yych == 'd') goto yy778; goto yy100; -yy668: +yy672: yych = *++YYCURSOR; - if (yych == 'a') goto yy773; + if (yych == 'a') goto yy779; goto yy100; -yy669: +yy673: yych = *++YYCURSOR; - if (yych == 'n') goto yy775; + if (yych == 'n') goto yy781; goto yy100; -yy670: +yy674: ++YYCURSOR; -#line 333 "cpp.re" +#line 337 "cpp.re" { BOOST_WAVE_RET(T_PP_UNDEF); } -#line 4588 "cpp_re.inc" -yy672: +#line 4613 "cpp_re.inc" +yy676: yych = *++YYCURSOR; - if (yych == 'n') goto yy777; + if (yych == 'n') goto yy783; goto yy100; -yy673: +yy677: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { if (yych <= '/') goto yy100; - if (yych <= '9') goto yy282; + if (yych <= '9') goto yy283; goto yy100; } else { - if (yych <= 'F') goto yy282; + if (yych <= 'F') goto yy283; if (yych <= '`') goto yy100; - if (yych <= 'f') goto yy282; + if (yych <= 'f') goto yy283; goto yy100; } -yy674: +yy678: ++YYCURSOR; -#line 253 "cpp.re" +#line 257 "cpp.re" { BOOST_WAVE_RET(T_OROR_TRIGRAPH); } -#line 4611 "cpp_re.inc" -yy676: +#line 4636 "cpp_re.inc" +yy680: ++YYCURSOR; -#line 165 "cpp.re" +#line 169 "cpp.re" { BOOST_WAVE_RET(T_POUND_POUND_TRIGRAPH); } -#line 4616 "cpp_re.inc" -yy678: +#line 4641 "cpp_re.inc" +yy682: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'p') goto yy778; + if (yych == 'p') goto yy784; goto yy19; -yy679: +yy683: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy779; + if (yych == 'l') goto yy785; goto yy19; -yy680: +yy684: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == '6') goto yy780; + if (yych == '6') goto yy786; goto yy19; -yy681: +yy685: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == '2') goto yy782; + if (yych == '2') goto yy788; goto yy19; -yy682: +yy686: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == '4') goto yy784; + if (yych == '4') goto yy790; goto yy19; -yy683: +yy687: yyaccept = 51; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4646,16 +4671,16 @@ yy683: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy684: -#line 131 "cpp.re" +yy688: +#line 135 "cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_INT8 : T_IDENTIFIER); } -#line 4653 "cpp_re.inc" -yy685: +#line 4678 "cpp_re.inc" +yy689: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy786; + if (yych == 'e') goto yy792; goto yy19; -yy686: +yy690: yyaccept = 52; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4663,11 +4688,11 @@ yy686: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy687: -#line 135 "cpp.re" +yy691: +#line 139 "cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_BASED : T_IDENTIFIER); } -#line 4670 "cpp_re.inc" -yy688: +#line 4695 "cpp_re.inc" +yy692: yyaccept = 53; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4675,41 +4700,41 @@ yy688: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy689: -#line 137 "cpp.re" +yy693: +#line 141 "cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_CDECL : T_IDENTIFIER); } -#line 4682 "cpp_re.inc" -yy690: +#line 4707 "cpp_re.inc" +yy694: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'p') goto yy788; + if (yych == 'p') goto yy794; goto yy19; -yy691: +yy695: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy789; + if (yych == 'a') goto yy795; goto yy19; -yy692: +yy696: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy790; + if (yych == 'e') goto yy796; goto yy19; -yy693: +yy697: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy792; + if (yych == 'l') goto yy798; goto yy19; -yy694: +yy698: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 's') goto yy793; + if (yych == 's') goto yy799; goto yy19; -yy695: +yy699: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'f') goto yy795; + if (yych == 'f') goto yy801; goto yy19; -yy696: +yy700: yyaccept = 54; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4717,11 +4742,11 @@ yy696: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy697: -#line 224 "cpp.re" +yy701: +#line 228 "cpp.re" { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_ANDASSIGN_ALT); } -#line 4724 "cpp_re.inc" -yy698: +#line 4749 "cpp_re.inc" +yy702: yyaccept = 55; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4729,77 +4754,77 @@ yy698: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy699: -#line 203 "cpp.re" +yy703: +#line 207 "cpp.re" { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_AND_ALT); } -#line 4736 "cpp_re.inc" -yy700: +#line 4761 "cpp_re.inc" +yy704: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == '_') goto yy797; + if (yych == '_') goto yy803; goto yy19; -yy701: +yy705: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == '_') goto yy798; + if (yych == '_') goto yy804; goto yy19; -yy702: +yy706: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy799; + if (yych == 't') goto yy805; goto yy19; -yy703: +yy707: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy801; + if (yych == 'i') goto yy807; goto yy19; -yy704: +yy708: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'u') goto yy802; + if (yych == 'u') goto yy808; goto yy19; -yy705: +yy709: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy803; + if (yych == 'l') goto yy809; goto yy19; -yy706: +yy710: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy804; + if (yych == 't') goto yy810; goto yy19; -yy707: +yy711: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'c') goto yy806; + if (yych == 'c') goto yy812; goto yy19; -yy708: +yy712: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'v') goto yy807; - if (yych == 'x') goto yy808; + if (yych == 'v') goto yy813; + if (yych == 'x') goto yy814; goto yy19; -yy709: +yy713: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'n') goto yy809; + if (yych == 'n') goto yy815; goto yy19; -yy710: +yy714: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'u') goto yy810; + if (yych == 'u') goto yy816; goto yy19; -yy711: +yy715: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'p') goto yy811; + if (yych == 'p') goto yy817; goto yy19; -yy712: +yy716: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy812; + if (yych == 't') goto yy818; goto yy19; -yy713: +yy717: yyaccept = 56; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4807,11 +4832,11 @@ yy713: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy714: -#line 73 "cpp.re" +yy718: +#line 76 "cpp.re" { BOOST_WAVE_RET(T_DELETE); } -#line 4814 "cpp_re.inc" -yy715: +#line 4839 "cpp_re.inc" +yy719: yyaccept = 57; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4819,21 +4844,21 @@ yy715: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy716: -#line 75 "cpp.re" +yy720: +#line 78 "cpp.re" { BOOST_WAVE_RET(T_DOUBLE); } -#line 4826 "cpp_re.inc" -yy717: +#line 4851 "cpp_re.inc" +yy721: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'c') goto yy814; + if (yych == 'c') goto yy820; goto yy19; -yy718: +yy722: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy815; + if (yych == 'i') goto yy821; goto yy19; -yy719: +yy723: yyaccept = 58; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4841,11 +4866,11 @@ yy719: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy720: -#line 80 "cpp.re" +yy724: +#line 83 "cpp.re" { BOOST_WAVE_RET(T_EXPORT); } -#line 4848 "cpp_re.inc" -yy721: +#line 4873 "cpp_re.inc" +yy725: yyaccept = 59; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4853,11 +4878,11 @@ yy721: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy722: -#line 81 "cpp.re" +yy726: +#line 84 "cpp.re" { BOOST_WAVE_RET(T_EXTERN); } -#line 4860 "cpp_re.inc" -yy723: +#line 4885 "cpp_re.inc" +yy727: yyaccept = 60; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4865,11 +4890,11 @@ yy723: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy724: -#line 85 "cpp.re" +yy728: +#line 88 "cpp.re" { BOOST_WAVE_RET(T_FRIEND); } -#line 4872 "cpp_re.inc" -yy725: +#line 4897 "cpp_re.inc" +yy729: yyaccept = 61; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4877,11 +4902,11 @@ yy725: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy726: -#line 88 "cpp.re" +yy730: +#line 91 "cpp.re" { BOOST_WAVE_RET(s->enable_import_keyword ? T_IMPORT : T_IDENTIFIER); } -#line 4884 "cpp_re.inc" -yy727: +#line 4909 "cpp_re.inc" +yy731: yyaccept = 62; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4889,26 +4914,11 @@ yy727: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy728: -#line 89 "cpp.re" - { BOOST_WAVE_RET(T_INLINE); } -#line 4896 "cpp_re.inc" -yy729: - yyaccept = 2; - yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy816; - goto yy19; -yy730: - yyaccept = 2; - yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy818; - goto yy19; -yy731: - yyaccept = 2; - yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'p') goto yy819; - goto yy19; yy732: +#line 92 "cpp.re" + { BOOST_WAVE_RET(T_INLINE); } +#line 4921 "cpp_re.inc" +yy733: yyaccept = 63; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4916,29 +4926,24 @@ yy732: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy733: -#line 234 "cpp.re" - { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_NOTEQUAL_ALT); } -#line 4923 "cpp_re.inc" yy734: - yyaccept = 2; - yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy820; - goto yy19; +#line 95 "cpp.re" + { BOOST_WAVE_RET(s->act_in_cpp2a_mode ? T_MODULE : T_IDENTIFIER); } +#line 4933 "cpp_re.inc" yy735: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'o') goto yy822; + if (yych == 'e') goto yy822; goto yy19; yy736: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy823; + if (yych == 'a') goto yy824; goto yy19; yy737: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy825; + if (yych == 'p') goto yy825; goto yy19; yy738: yyaccept = 64; @@ -4949,25 +4954,30 @@ yy738: if (yych == '?') goto yy119; if (yych == '\\') goto yy120; yy739: -#line 100 "cpp.re" - { BOOST_WAVE_RET(T_PUBLIC); } -#line 4955 "cpp_re.inc" +#line 238 "cpp.re" + { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_NOTEQUAL_ALT); } +#line 4960 "cpp_re.inc" yy740: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy826; + if (yych == 'r') goto yy826; goto yy19; yy741: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy827; + if (yych == 'o') goto yy828; goto yy19; yy742: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy828; + if (yych == 'e') goto yy829; goto yy19; yy743: + yyaccept = 2; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 't') goto yy831; + goto yy19; +yy744: yyaccept = 65; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4975,11 +4985,26 @@ yy743: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy744: -#line 104 "cpp.re" - { BOOST_WAVE_RET(T_RETURN); } -#line 4982 "cpp_re.inc" yy745: +#line 104 "cpp.re" + { BOOST_WAVE_RET(T_PUBLIC); } +#line 4992 "cpp_re.inc" +yy746: + yyaccept = 2; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 'e') goto yy832; + goto yy19; +yy747: + yyaccept = 2; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 'r') goto yy833; + goto yy19; +yy748: + yyaccept = 2; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 'e') goto yy834; + goto yy19; +yy749: yyaccept = 66; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4987,11 +5012,11 @@ yy745: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy746: -#line 106 "cpp.re" - { BOOST_WAVE_RET(T_SIGNED); } -#line 4994 "cpp_re.inc" -yy747: +yy750: +#line 108 "cpp.re" + { BOOST_WAVE_RET(T_RETURN); } +#line 5019 "cpp_re.inc" +yy751: yyaccept = 67; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4999,13 +5024,25 @@ yy747: } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy748: -#line 107 "cpp.re" - { BOOST_WAVE_RET(T_SIZEOF); } -#line 5006 "cpp_re.inc" -yy749: +yy752: +#line 110 "cpp.re" + { BOOST_WAVE_RET(T_SIGNED); } +#line 5031 "cpp_re.inc" +yy753: yyaccept = 68; yych = *(YYMARKER = ++YYCURSOR); + if (yybm[256+yych] & 128) { + goto yy18; + } + if (yych == '?') goto yy119; + if (yych == '\\') goto yy120; +yy754: +#line 111 "cpp.re" + { BOOST_WAVE_RET(T_SIZEOF); } +#line 5043 "cpp_re.inc" +yy755: + yyaccept = 69; + yych = *(YYMARKER = ++YYCURSOR); if (yych <= '@') { if (yych <= '/') { if (yych == '$') goto yy18; @@ -5018,1203 +5055,1203 @@ yy749: if (yych <= 'Z') goto yy18; if (yych == '\\') goto yy120; } else { - if (yych <= '_') goto yy829; - if (yych <= '`') goto yy750; + if (yych <= '_') goto yy835; + if (yych <= '`') goto yy756; if (yych <= 'z') goto yy18; } } -yy750: -#line 108 "cpp.re" +yy756: +#line 112 "cpp.re" { BOOST_WAVE_RET(T_STATIC); } -#line 5030 "cpp_re.inc" -yy751: - yyaccept = 69; +#line 5067 "cpp_re.inc" +yy757: + yyaccept = 70; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy752: -#line 111 "cpp.re" +yy758: +#line 115 "cpp.re" { BOOST_WAVE_RET(T_STRUCT); } -#line 5042 "cpp_re.inc" -yy753: - yyaccept = 70; +#line 5079 "cpp_re.inc" +yy759: + yyaccept = 71; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy754: -#line 112 "cpp.re" +yy760: +#line 116 "cpp.re" { BOOST_WAVE_RET(T_SWITCH); } -#line 5054 "cpp_re.inc" -yy755: +#line 5091 "cpp_re.inc" +yy761: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy830; + if (yych == 't') goto yy836; goto yy19; -yy756: +yy762: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == '_') goto yy831; + if (yych == '_') goto yy837; goto yy19; -yy757: +yy763: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'f') goto yy832; + if (yych == 'f') goto yy838; goto yy19; -yy758: - yyaccept = 71; +yy764: + yyaccept = 72; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy759: -#line 120 "cpp.re" +yy765: +#line 124 "cpp.re" { BOOST_WAVE_RET(T_TYPEID); } -#line 5081 "cpp_re.inc" -yy760: +#line 5118 "cpp_re.inc" +yy766: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'm') goto yy834; + if (yych == 'm') goto yy840; goto yy19; -yy761: +yy767: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy835; + if (yych == 'e') goto yy841; goto yy19; -yy762: +yy768: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy836; + if (yych == 'l') goto yy842; goto yy19; -yy763: +yy769: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy838; + if (yych == 'l') goto yy844; goto yy19; -yy764: +yy770: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy839; + if (yych == 't') goto yy845; goto yy19; -yy765: - yyaccept = 72; +yy771: + yyaccept = 73; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy766: -#line 221 "cpp.re" +yy772: +#line 225 "cpp.re" { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_XORASSIGN_ALT); } -#line 5118 "cpp_re.inc" -yy767: +#line 5155 "cpp_re.inc" +yy773: ++YYCURSOR; -#line 332 "cpp.re" +#line 336 "cpp.re" { BOOST_WAVE_RET(T_PP_DEFINE); } -#line 5123 "cpp_re.inc" -yy769: +#line 5160 "cpp_re.inc" +yy775: yych = *++YYCURSOR; - if (yych == 'i') goto yy841; + if (yych == 'i') goto yy847; goto yy100; -yy770: +yy776: ++YYCURSOR; -#line 328 "cpp.re" +#line 332 "cpp.re" { BOOST_WAVE_RET(T_PP_IFNDEF); } -#line 5132 "cpp_re.inc" -yy772: +#line 5169 "cpp_re.inc" +yy778: yych = *++YYCURSOR; - if (yych == 'e') goto yy842; + if (yych == 'e') goto yy848; goto yy100; -yy773: +yy779: ++YYCURSOR; -#line 336 "cpp.re" +#line 340 "cpp.re" { BOOST_WAVE_RET(T_PP_PRAGMA); } -#line 5141 "cpp_re.inc" -yy775: +#line 5178 "cpp_re.inc" +yy781: ++YYCURSOR; -#line 340 "cpp.re" +#line 344 "cpp.re" { BOOST_WAVE_RET(T_MSEXT_PP_REGION); } -#line 5146 "cpp_re.inc" -yy777: +#line 5183 "cpp_re.inc" +yy783: yych = *++YYCURSOR; - if (yych == 'g') goto yy844; + if (yych == 'g') goto yy850; goto yy100; -yy778: +yy784: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy846; + if (yych == 't') goto yy852; goto yy19; -yy779: +yy785: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy848; + if (yych == 'l') goto yy854; goto yy19; -yy780: - yyaccept = 73; +yy786: + yyaccept = 74; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy781: -#line 132 "cpp.re" +yy787: +#line 136 "cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_INT16 : T_IDENTIFIER); } -#line 5172 "cpp_re.inc" -yy782: - yyaccept = 74; +#line 5209 "cpp_re.inc" +yy788: + yyaccept = 75; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy783: -#line 133 "cpp.re" +yy789: +#line 137 "cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_INT32 : T_IDENTIFIER); } -#line 5184 "cpp_re.inc" -yy784: - yyaccept = 75; +#line 5221 "cpp_re.inc" +yy790: + yyaccept = 76; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy785: -#line 134 "cpp.re" +yy791: +#line 138 "cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_INT64 : T_IDENTIFIER); } -#line 5196 "cpp_re.inc" -yy786: - yyaccept = 76; +#line 5233 "cpp_re.inc" +yy792: + yyaccept = 77; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy787: -#line 143 "cpp.re" +yy793: +#line 147 "cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_LEAVE : T_IDENTIFIER); } -#line 5208 "cpp_re.inc" -yy788: +#line 5245 "cpp_re.inc" +yy794: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy849; + if (yych == 'e') goto yy855; goto yy19; -yy789: +yy795: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy850; + if (yych == 'l') goto yy856; goto yy19; -yy790: - yyaccept = 77; +yy796: + yyaccept = 78; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy791: -#line 144 "cpp.re" +yy797: +#line 148 "cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_INLINE : T_IDENTIFIER); } -#line 5230 "cpp_re.inc" -yy792: +#line 5267 "cpp_re.inc" +yy798: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy851; + if (yych == 'l') goto yy857; goto yy19; -yy793: - yyaccept = 78; +yy799: + yyaccept = 79; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy794: -#line 48 "cpp.re" +yy800: +#line 51 "cpp.re" { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_ALIGNAS : T_IDENTIFIER); } -#line 5247 "cpp_re.inc" -yy795: - yyaccept = 79; +#line 5284 "cpp_re.inc" +yy801: + yyaccept = 80; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy796: -#line 49 "cpp.re" +yy802: +#line 52 "cpp.re" { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_ALIGNOF : T_IDENTIFIER); } -#line 5259 "cpp_re.inc" -yy797: +#line 5296 "cpp_re.inc" +yy803: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy853; + if (yych == 't') goto yy859; goto yy19; -yy798: +yy804: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy855; + if (yych == 't') goto yy861; goto yy19; -yy799: - yyaccept = 80; +yy805: + yyaccept = 81; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy800: -#line 57 "cpp.re" +yy806: +#line 60 "cpp.re" { BOOST_WAVE_RET(s->act_in_cpp2a_mode ? T_CHAR8_T : T_IDENTIFIER); } -#line 5281 "cpp_re.inc" -yy801: +#line 5318 "cpp_re.inc" +yy807: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy857; + if (yych == 't') goto yy863; goto yy19; -yy802: +yy808: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy859; + if (yych == 'r') goto yy865; goto yy19; -yy803: +yy809: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'd') goto yy860; + if (yych == 'd') goto yy866; goto yy19; -yy804: - yyaccept = 81; +yy810: + yyaccept = 82; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy805: -#line 61 "cpp.re" +yy811: +#line 64 "cpp.re" { BOOST_WAVE_RET(s->act_in_cpp2a_mode ? T_CONCEPT : T_IDENTIFIER); } -#line 5308 "cpp_re.inc" -yy806: +#line 5345 "cpp_re.inc" +yy812: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy862; + if (yych == 'a') goto yy868; goto yy19; -yy807: +yy813: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy863; + if (yych == 'a') goto yy869; goto yy19; -yy808: +yy814: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'p') goto yy864; + if (yych == 'p') goto yy870; goto yy19; -yy809: +yy815: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy865; + if (yych == 'i') goto yy871; goto yy19; -yy810: +yy816: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy866; + if (yych == 'e') goto yy872; goto yy19; -yy811: +yy817: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy868; + if (yych == 'e') goto yy874; goto yy19; -yy812: - yyaccept = 82; +yy818: + yyaccept = 83; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy813: -#line 72 "cpp.re" +yy819: +#line 75 "cpp.re" { BOOST_WAVE_RET(T_DEFAULT); } -#line 5350 "cpp_re.inc" -yy814: +#line 5387 "cpp_re.inc" +yy820: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == '_') goto yy870; + if (yych == '_') goto yy876; goto yy19; -yy815: +yy821: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy871; + if (yych == 't') goto yy877; goto yy19; -yy816: - yyaccept = 83; +yy822: + yyaccept = 84; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy817: -#line 92 "cpp.re" +yy823: +#line 96 "cpp.re" { BOOST_WAVE_RET(T_MUTABLE); } -#line 5372 "cpp_re.inc" -yy818: +#line 5409 "cpp_re.inc" +yy824: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'c') goto yy873; + if (yych == 'c') goto yy879; goto yy19; -yy819: +yy825: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy874; + if (yych == 't') goto yy880; goto yy19; -yy820: - yyaccept = 84; +yy826: + yyaccept = 85; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy821: -#line 96 "cpp.re" +yy827: +#line 100 "cpp.re" { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_NULLPTR : T_IDENTIFIER); } -#line 5394 "cpp_re.inc" -yy822: +#line 5431 "cpp_re.inc" +yy828: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy876; + if (yych == 'r') goto yy882; goto yy19; -yy823: - yyaccept = 85; +yy829: + yyaccept = 86; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy824: -#line 98 "cpp.re" +yy830: +#line 102 "cpp.re" { BOOST_WAVE_RET(T_PRIVATE); } -#line 5411 "cpp_re.inc" -yy825: +#line 5448 "cpp_re.inc" +yy831: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy878; + if (yych == 'e') goto yy884; goto yy19; -yy826: +yy832: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy879; + if (yych == 'r') goto yy885; goto yy19; -yy827: +yy833: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'p') goto yy881; + if (yych == 'p') goto yy887; goto yy19; -yy828: +yy834: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 's') goto yy882; + if (yych == 's') goto yy888; goto yy19; -yy829: +yy835: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy884; - if (yych == 'c') goto yy885; + if (yych == 'a') goto yy890; + if (yych == 'c') goto yy891; goto yy19; -yy830: +yy836: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy886; + if (yych == 'e') goto yy892; goto yy19; -yy831: +yy837: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy888; + if (yych == 'l') goto yy894; goto yy19; -yy832: - yyaccept = 86; +yy838: + yyaccept = 87; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy833: -#line 119 "cpp.re" +yy839: +#line 123 "cpp.re" { BOOST_WAVE_RET(T_TYPEDEF); } -#line 5459 "cpp_re.inc" -yy834: +#line 5496 "cpp_re.inc" +yy840: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy889; + if (yych == 'e') goto yy895; goto yy19; -yy835: +yy841: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'd') goto yy891; + if (yych == 'd') goto yy897; goto yy19; -yy836: - yyaccept = 87; +yy842: + yyaccept = 88; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy837: -#line 125 "cpp.re" +yy843: +#line 129 "cpp.re" { BOOST_WAVE_RET(T_VIRTUAL); } -#line 5481 "cpp_re.inc" -yy838: +#line 5518 "cpp_re.inc" +yy844: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy893; + if (yych == 'e') goto yy899; goto yy19; -yy839: - yyaccept = 88; +yy845: + yyaccept = 89; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy840: -#line 128 "cpp.re" +yy846: +#line 132 "cpp.re" { BOOST_WAVE_RET(T_WCHART); } -#line 5498 "cpp_re.inc" -yy841: +#line 5535 "cpp_re.inc" +yy847: yych = *++YYCURSOR; - if (yych == 'o') goto yy895; + if (yych == 'o') goto yy901; goto yy100; -yy842: - yyaccept = 89; +yy848: + yyaccept = 90; yych = *(YYMARKER = ++YYCURSOR); - if (yych == '_') goto yy901; - goto yy897; -yy843: -#line 324 "cpp.re" + if (yych == '_') goto yy907; + goto yy903; +yy849: +#line 328 "cpp.re" { BOOST_WAVE_RET(T_PP_INCLUDE); } -#line 5511 "cpp_re.inc" -yy844: +#line 5548 "cpp_re.inc" +yy850: ++YYCURSOR; -#line 338 "cpp.re" +#line 342 "cpp.re" { BOOST_WAVE_RET(T_PP_WARNING); } -#line 5516 "cpp_re.inc" -yy846: - yyaccept = 90; +#line 5553 "cpp_re.inc" +yy852: + yyaccept = 91; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy847: -#line 141 "cpp.re" +yy853: +#line 145 "cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_EXCEPT : T_IDENTIFIER); } -#line 5528 "cpp_re.inc" -yy848: +#line 5565 "cpp_re.inc" +yy854: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'y') goto yy902; + if (yych == 'y') goto yy908; goto yy19; -yy849: +yy855: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'c') goto yy904; + if (yych == 'c') goto yy910; goto yy19; -yy850: +yy856: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy906; + if (yych == 'l') goto yy912; goto yy19; -yy851: - yyaccept = 91; +yy857: + yyaccept = 92; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy852: -#line 139 "cpp.re" +yy858: +#line 143 "cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_STDCALL : T_IDENTIFIER); } -#line 5555 "cpp_re.inc" -yy853: - yyaccept = 92; +#line 5592 "cpp_re.inc" +yy859: + yyaccept = 93; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy854: -#line 58 "cpp.re" +yy860: +#line 61 "cpp.re" { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_CHAR16_T : T_IDENTIFIER); } -#line 5567 "cpp_re.inc" -yy855: - yyaccept = 93; +#line 5604 "cpp_re.inc" +yy861: + yyaccept = 94; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy856: -#line 59 "cpp.re" +yy862: +#line 62 "cpp.re" { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_CHAR32_T : T_IDENTIFIER); } -#line 5579 "cpp_re.inc" -yy857: - yyaccept = 94; +#line 5616 "cpp_re.inc" +yy863: + yyaccept = 95; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy858: -#line 68 "cpp.re" +yy864: +#line 71 "cpp.re" { BOOST_WAVE_RET(s->act_in_cpp2a_mode ? T_CO_AWAIT : T_IDENTIFIER); } -#line 5591 "cpp_re.inc" -yy859: +#line 5628 "cpp_re.inc" +yy865: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'n') goto yy908; + if (yych == 'n') goto yy914; goto yy19; -yy860: - yyaccept = 95; +yy866: + yyaccept = 96; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy861: -#line 70 "cpp.re" +yy867: +#line 73 "cpp.re" { BOOST_WAVE_RET(s->act_in_cpp2a_mode ? T_CO_YIELD : T_IDENTIFIER); } -#line 5608 "cpp_re.inc" -yy862: +#line 5645 "cpp_re.inc" +yy868: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 's') goto yy910; + if (yych == 's') goto yy916; goto yy19; -yy863: +yy869: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy911; + if (yych == 'l') goto yy917; goto yy19; -yy864: +yy870: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy913; + if (yych == 'r') goto yy919; goto yy19; -yy865: +yy871: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy915; + if (yych == 't') goto yy921; goto yy19; -yy866: - yyaccept = 96; +yy872: + yyaccept = 97; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy867: -#line 67 "cpp.re" +yy873: +#line 70 "cpp.re" { BOOST_WAVE_RET(T_CONTINUE); } -#line 5640 "cpp_re.inc" -yy868: - yyaccept = 97; +#line 5677 "cpp_re.inc" +yy874: + yyaccept = 98; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy869: -#line 71 "cpp.re" +yy875: +#line 74 "cpp.re" { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_DECLTYPE : T_IDENTIFIER); } -#line 5652 "cpp_re.inc" -yy870: +#line 5689 "cpp_re.inc" +yy876: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'c') goto yy917; + if (yych == 'c') goto yy923; goto yy19; -yy871: - yyaccept = 98; +yy877: + yyaccept = 99; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy872: -#line 79 "cpp.re" +yy878: +#line 82 "cpp.re" { BOOST_WAVE_RET(T_EXPLICIT); } -#line 5669 "cpp_re.inc" -yy873: +#line 5706 "cpp_re.inc" +yy879: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy918; + if (yych == 'e') goto yy924; goto yy19; -yy874: - yyaccept = 99; +yy880: + yyaccept = 100; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy875: -#line 95 "cpp.re" +yy881: +#line 99 "cpp.re" { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_NOEXCEPT : T_IDENTIFIER); } -#line 5686 "cpp_re.inc" -yy876: - yyaccept = 100; +#line 5723 "cpp_re.inc" +yy882: + yyaccept = 101; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy877: -#line 97 "cpp.re" +yy883: +#line 101 "cpp.re" { BOOST_WAVE_RET(T_OPERATOR); } -#line 5698 "cpp_re.inc" -yy878: +#line 5735 "cpp_re.inc" +yy884: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'd') goto yy920; + if (yych == 'd') goto yy926; goto yy19; -yy879: - yyaccept = 101; +yy885: + yyaccept = 102; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy880: -#line 101 "cpp.re" +yy886: +#line 105 "cpp.re" { BOOST_WAVE_RET(T_REGISTER); } -#line 5715 "cpp_re.inc" -yy881: +#line 5752 "cpp_re.inc" +yy887: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy922; + if (yych == 'r') goto yy928; goto yy19; -yy882: - yyaccept = 102; +yy888: + yyaccept = 103; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy883: -#line 103 "cpp.re" +yy889: +#line 107 "cpp.re" { BOOST_WAVE_RET(s->act_in_cpp2a_mode ? T_REQUIRES : T_IDENTIFIER); } -#line 5732 "cpp_re.inc" -yy884: +#line 5769 "cpp_re.inc" +yy890: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 's') goto yy923; + if (yych == 's') goto yy929; goto yy19; -yy885: +yy891: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy924; + if (yych == 'a') goto yy930; goto yy19; -yy886: - yyaccept = 103; +yy892: + yyaccept = 104; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy887: -#line 113 "cpp.re" +yy893: +#line 117 "cpp.re" { BOOST_WAVE_RET(T_TEMPLATE); } -#line 5754 "cpp_re.inc" -yy888: +#line 5791 "cpp_re.inc" +yy894: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'o') goto yy925; + if (yych == 'o') goto yy931; goto yy19; -yy889: - yyaccept = 104; +yy895: + yyaccept = 105; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy890: -#line 121 "cpp.re" +yy896: +#line 125 "cpp.re" { BOOST_WAVE_RET(T_TYPENAME); } -#line 5771 "cpp_re.inc" -yy891: - yyaccept = 105; +#line 5808 "cpp_re.inc" +yy897: + yyaccept = 106; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy892: -#line 123 "cpp.re" +yy898: +#line 127 "cpp.re" { BOOST_WAVE_RET(T_UNSIGNED); } -#line 5783 "cpp_re.inc" -yy893: - yyaccept = 106; +#line 5820 "cpp_re.inc" +yy899: + yyaccept = 107; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy894: -#line 127 "cpp.re" +yy900: +#line 131 "cpp.re" { BOOST_WAVE_RET(T_VOLATILE); } -#line 5795 "cpp_re.inc" -yy895: +#line 5832 "cpp_re.inc" +yy901: yych = *++YYCURSOR; - if (yych == 'n') goto yy926; + if (yych == 'n') goto yy932; goto yy100; -yy896: - yyaccept = 89; +yy902: + yyaccept = 90; YYMARKER = ++YYCURSOR; if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2); yych = *YYCURSOR; -yy897: +yy903: if (yych <= ' ') { if (yych <= '\n') { - if (yych == '\t') goto yy896; - goto yy843; + if (yych == '\t') goto yy902; + goto yy849; } else { - if (yych <= '\f') goto yy896; - if (yych <= 0x1F) goto yy843; - goto yy896; + if (yych <= '\f') goto yy902; + if (yych <= 0x1F) goto yy849; + goto yy902; } } else { if (yych <= '.') { - if (yych != '"') goto yy843; + if (yych != '"') goto yy849; } else { - if (yych <= '/') goto yy899; - if (yych == '<') goto yy900; - goto yy843; + if (yych <= '/') goto yy905; + if (yych == '<') goto yy906; + goto yy849; } } yych = *++YYCURSOR; if (yych == '"') goto yy100; - goto yy929; -yy899: + goto yy935; +yy905: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; - if (yych == '*') goto yy930; + if (yych == '*') goto yy936; goto yy100; -yy900: +yy906: yych = *++YYCURSOR; if (yych == '>') goto yy100; - goto yy933; -yy901: + goto yy939; +yy907: yych = *++YYCURSOR; - if (yych == 'n') goto yy934; + if (yych == 'n') goto yy940; goto yy100; -yy902: - yyaccept = 107; +yy908: + yyaccept = 108; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy903: -#line 142 "cpp.re" +yy909: +#line 146 "cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_FINALLY : T_IDENTIFIER); } -#line 5852 "cpp_re.inc" -yy904: - yyaccept = 108; +#line 5889 "cpp_re.inc" +yy910: + yyaccept = 109; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy905: -#line 136 "cpp.re" +yy911: +#line 140 "cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_DECLSPEC : T_IDENTIFIER); } -#line 5864 "cpp_re.inc" -yy906: - yyaccept = 109; +#line 5901 "cpp_re.inc" +yy912: + yyaccept = 110; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy907: -#line 138 "cpp.re" +yy913: +#line 142 "cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_FASTCALL : T_IDENTIFIER); } -#line 5876 "cpp_re.inc" -yy908: - yyaccept = 110; +#line 5913 "cpp_re.inc" +yy914: + yyaccept = 111; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy909: -#line 69 "cpp.re" +yy915: +#line 72 "cpp.re" { BOOST_WAVE_RET(s->act_in_cpp2a_mode ? T_CO_RETURN : T_IDENTIFIER); } -#line 5888 "cpp_re.inc" -yy910: +#line 5925 "cpp_re.inc" +yy916: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy935; + if (yych == 't') goto yy941; goto yy19; -yy911: - yyaccept = 111; +yy917: + yyaccept = 112; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy912: -#line 63 "cpp.re" +yy918: +#line 66 "cpp.re" { BOOST_WAVE_RET(s->act_in_cpp2a_mode ? T_CONSTEVAL : T_IDENTIFIER); } -#line 5905 "cpp_re.inc" -yy913: - yyaccept = 112; +#line 5942 "cpp_re.inc" +yy919: + yyaccept = 113; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy914: -#line 64 "cpp.re" +yy920: +#line 67 "cpp.re" { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_CONSTEXPR : T_IDENTIFIER); } -#line 5917 "cpp_re.inc" -yy915: - yyaccept = 113; +#line 5954 "cpp_re.inc" +yy921: + yyaccept = 114; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy916: -#line 65 "cpp.re" +yy922: +#line 68 "cpp.re" { BOOST_WAVE_RET(s->act_in_cpp2a_mode ? T_CONSTINIT : T_IDENTIFIER); } -#line 5929 "cpp_re.inc" -yy917: +#line 5966 "cpp_re.inc" +yy923: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy937; + if (yych == 'a') goto yy943; goto yy19; -yy918: - yyaccept = 114; +yy924: + yyaccept = 115; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy919: -#line 93 "cpp.re" +yy925: +#line 97 "cpp.re" { BOOST_WAVE_RET(T_NAMESPACE); } -#line 5946 "cpp_re.inc" -yy920: - yyaccept = 115; +#line 5983 "cpp_re.inc" +yy926: + yyaccept = 116; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy921: -#line 99 "cpp.re" +yy927: +#line 103 "cpp.re" { BOOST_WAVE_RET(T_PROTECTED); } -#line 5958 "cpp_re.inc" -yy922: +#line 5995 "cpp_re.inc" +yy928: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy938; + if (yych == 'e') goto yy944; goto yy19; -yy923: +yy929: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 's') goto yy939; + if (yych == 's') goto yy945; goto yy19; -yy924: +yy930: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 's') goto yy940; + if (yych == 's') goto yy946; goto yy19; -yy925: +yy931: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'c') goto yy941; + if (yych == 'c') goto yy947; goto yy19; -yy926: +yy932: ++YYCURSOR; -#line 341 "cpp.re" +#line 345 "cpp.re" { BOOST_WAVE_RET(T_MSEXT_PP_ENDREGION); } -#line 5983 "cpp_re.inc" -yy928: +#line 6020 "cpp_re.inc" +yy934: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; -yy929: +yy935: if (yybm[0+yych] & 64) { - goto yy928; + goto yy934; } if (yych <= 0x1F) goto yy100; - goto yy942; -yy930: + goto yy948; +yy936: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= 0x1F) { if (yych <= 0x08) goto yy100; - if (yych <= '\r') goto yy930; + if (yych <= '\r') goto yy936; goto yy100; } else { - if (yych == '*') goto yy944; - goto yy930; + if (yych == '*') goto yy950; + goto yy936; } -yy932: +yy938: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; -yy933: +yy939: if (yybm[0+yych] & 128) { - goto yy932; + goto yy938; } if (yych <= 0x1F) goto yy100; - goto yy946; -yy934: + goto yy952; +yy940: yych = *++YYCURSOR; - if (yych == 'e') goto yy948; + if (yych == 'e') goto yy954; goto yy100; -yy935: - yyaccept = 116; +yy941: + yyaccept = 117; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy936: -#line 66 "cpp.re" +yy942: +#line 69 "cpp.re" { BOOST_WAVE_RET(T_CONSTCAST); } -#line 6031 "cpp_re.inc" -yy937: +#line 6068 "cpp_re.inc" +yy943: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 's') goto yy949; + if (yych == 's') goto yy955; goto yy19; -yy938: +yy944: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy950; + if (yych == 't') goto yy956; goto yy19; -yy939: +yy945: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy951; + if (yych == 'e') goto yy957; goto yy19; -yy940: +yy946: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy952; + if (yych == 't') goto yy958; goto yy19; -yy941: +yy947: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy954; + if (yych == 'a') goto yy960; goto yy19; -yy942: +yy948: ++YYCURSOR; -#line 321 "cpp.re" +#line 325 "cpp.re" { BOOST_WAVE_RET(T_PP_QHEADER); } -#line 6061 "cpp_re.inc" -yy944: +#line 6098 "cpp_re.inc" +yy950: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= ')') { if (yych <= 0x08) goto yy100; - if (yych <= '\r') goto yy930; + if (yych <= '\r') goto yy936; if (yych <= 0x1F) goto yy100; - goto yy930; + goto yy936; } else { - if (yych <= '*') goto yy944; - if (yych == '/') goto yy896; - goto yy930; + if (yych <= '*') goto yy950; + if (yych == '/') goto yy902; + goto yy936; } -yy946: +yy952: ++YYCURSOR; -#line 318 "cpp.re" +#line 322 "cpp.re" { BOOST_WAVE_RET(T_PP_HHEADER); } -#line 6080 "cpp_re.inc" -yy948: +#line 6117 "cpp_re.inc" +yy954: yych = *++YYCURSOR; - if (yych == 'x') goto yy955; + if (yych == 'x') goto yy961; goto yy100; -yy949: +yy955: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy956; + if (yych == 't') goto yy962; goto yy19; -yy950: +yy956: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == '_') goto yy958; + if (yych == '_') goto yy964; goto yy19; -yy951: +yy957: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy959; + if (yych == 'r') goto yy965; goto yy19; -yy952: - yyaccept = 117; +yy958: + yyaccept = 118; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy953: -#line 109 "cpp.re" +yy959: +#line 113 "cpp.re" { BOOST_WAVE_RET(T_STATICCAST); } -#line 6111 "cpp_re.inc" -yy954: +#line 6148 "cpp_re.inc" +yy960: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy960; + if (yych == 'l') goto yy966; goto yy19; -yy955: +yy961: yych = *++YYCURSOR; - if (yych == 't') goto yy896; + if (yych == 't') goto yy902; goto yy100; -yy956: - yyaccept = 118; +yy962: + yyaccept = 119; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy957: -#line 76 "cpp.re" +yy963: +#line 79 "cpp.re" { BOOST_WAVE_RET(T_DYNAMICCAST); } -#line 6132 "cpp_re.inc" -yy958: +#line 6169 "cpp_re.inc" +yy964: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'c') goto yy962; + if (yych == 'c') goto yy968; goto yy19; -yy959: +yy965: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy963; + if (yych == 't') goto yy969; goto yy19; -yy960: - yyaccept = 119; +yy966: + yyaccept = 120; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy961: -#line 115 "cpp.re" +yy967: +#line 119 "cpp.re" { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_THREADLOCAL : T_IDENTIFIER); } -#line 6154 "cpp_re.inc" -yy962: +#line 6191 "cpp_re.inc" +yy968: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy965; + if (yych == 'a') goto yy971; goto yy19; -yy963: - yyaccept = 120; +yy969: + yyaccept = 121; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy964: -#line 110 "cpp.re" +yy970: +#line 114 "cpp.re" { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_STATICASSERT : T_IDENTIFIER); } -#line 6171 "cpp_re.inc" -yy965: +#line 6208 "cpp_re.inc" +yy971: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); if (yych != 's') goto yy19; yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); if (yych != 't') goto yy19; - yyaccept = 121; + yyaccept = 122; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy18; } if (yych == '?') goto yy119; if (yych == '\\') goto yy120; -yy968: -#line 102 "cpp.re" +yy974: +#line 106 "cpp.re" { BOOST_WAVE_RET(T_REINTERPRETCAST); } -#line 6189 "cpp_re.inc" +#line 6226 "cpp_re.inc" } -#line 373 "cpp.re" +#line 377 "cpp.re" ccomment: -#line 6196 "cpp_re.inc" +#line 6233 "cpp_re.inc" { YYCTYPE yych; if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2); yych = *YYCURSOR; if (yych <= '\f') { if (yych <= 0x08) { - if (yych >= 0x01) goto yy973; + if (yych >= 0x01) goto yy979; } else { - if (yych == '\n') goto yy977; - goto yy975; + if (yych == '\n') goto yy983; + goto yy981; } } else { if (yych <= 0x1F) { - if (yych <= '\r') goto yy979; - goto yy973; + if (yych <= '\r') goto yy985; + goto yy979; } else { - if (yych == '*') goto yy980; - goto yy975; + if (yych == '*') goto yy986; + goto yy981; } } ++YYCURSOR; -#line 391 "cpp.re" +#line 395 "cpp.re" { if(cursor == s->eof) { @@ -6230,27 +6267,27 @@ ccomment: "invalid character: '\\000' in input stream"); } } -#line 6234 "cpp_re.inc" -yy973: +#line 6271 "cpp_re.inc" +yy979: ++YYCURSOR; -#line 408 "cpp.re" +#line 412 "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 6244 "cpp_re.inc" -yy975: +#line 6281 "cpp_re.inc" +yy981: ++YYCURSOR; -yy976: -#line 388 "cpp.re" +yy982: +#line 392 "cpp.re" { goto ccomment; } -#line 6250 "cpp_re.inc" -yy977: +#line 6287 "cpp_re.inc" +yy983: ++YYCURSOR; -yy978: -#line 380 "cpp.re" +yy984: +#line 384 "cpp.re" { /*if(cursor == s->eof) BOOST_WAVE_RET(T_EOF);*/ /*s->tok = cursor; */ @@ -6258,43 +6295,43 @@ yy978: cursor.column = 1; goto ccomment; } -#line 6262 "cpp_re.inc" -yy979: +#line 6299 "cpp_re.inc" +yy985: yych = *++YYCURSOR; - if (yych == '\n') goto yy977; - goto yy978; -yy980: + if (yych == '\n') goto yy983; + goto yy984; +yy986: yych = *++YYCURSOR; - if (yych != '/') goto yy976; + if (yych != '/') goto yy982; ++YYCURSOR; -#line 377 "cpp.re" +#line 381 "cpp.re" { BOOST_WAVE_RET(T_CCOMMENT); } -#line 6273 "cpp_re.inc" +#line 6310 "cpp_re.inc" } -#line 414 "cpp.re" +#line 418 "cpp.re" cppcomment: -#line 6280 "cpp_re.inc" +#line 6317 "cpp_re.inc" { YYCTYPE yych; if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2); yych = *YYCURSOR; if (yych <= '\n') { - if (yych <= 0x00) goto yy985; - if (yych <= 0x08) goto yy987; - if (yych <= '\t') goto yy989; - goto yy991; + if (yych <= 0x00) goto yy991; + if (yych <= 0x08) goto yy993; + if (yych <= '\t') goto yy995; + goto yy997; } else { - if (yych <= '\f') goto yy989; - if (yych <= '\r') goto yy993; - if (yych <= 0x1F) goto yy987; - goto yy989; + if (yych <= '\f') goto yy995; + if (yych <= '\r') goto yy999; + if (yych <= 0x1F) goto yy993; + goto yy995; } -yy985: +yy991: ++YYCURSOR; -#line 430 "cpp.re" +#line 434 "cpp.re" { if (s->eof && cursor != s->eof) { @@ -6313,26 +6350,26 @@ yy985: } BOOST_WAVE_RET(T_CPPCOMMENT); } -#line 6317 "cpp_re.inc" -yy987: +#line 6354 "cpp_re.inc" +yy993: ++YYCURSOR; -#line 450 "cpp.re" +#line 454 "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 6327 "cpp_re.inc" -yy989: +#line 6364 "cpp_re.inc" +yy995: ++YYCURSOR; -#line 427 "cpp.re" +#line 431 "cpp.re" { goto cppcomment; } -#line 6332 "cpp_re.inc" -yy991: +#line 6369 "cpp_re.inc" +yy997: ++YYCURSOR; -yy992: -#line 419 "cpp.re" +yy998: +#line 423 "cpp.re" { /*if(cursor == s->eof) BOOST_WAVE_RET(T_EOF); */ /*s->tok = cursor; */ @@ -6340,13 +6377,13 @@ yy992: cursor.column = 1; BOOST_WAVE_RET(T_CPPCOMMENT); } -#line 6344 "cpp_re.inc" -yy993: +#line 6381 "cpp_re.inc" +yy999: yych = *++YYCURSOR; - if (yych == '\n') goto yy991; - goto yy992; + if (yych == '\n') goto yy997; + goto yy998; } -#line 456 "cpp.re" +#line 460 "cpp.re" /* this subscanner is called whenever a pp_number has been started */ @@ -6358,7 +6395,7 @@ pp_number: if (s->detect_pp_numbers) { -#line 6362 "cpp_re.inc" +#line 6399 "cpp_re.inc" { YYCTYPE yych; static const unsigned char yybm[] = { @@ -6397,223 +6434,223 @@ pp_number: }; if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2); yych = *YYCURSOR; - if (yych == '.') goto yy998; - if (yych <= '/') goto yy996; - if (yych <= '9') goto yy999; -yy996: + if (yych == '.') goto yy1004; + if (yych <= '/') goto yy1002; + if (yych <= '9') goto yy1005; +yy1002: ++YYCURSOR; -yy997: -#line 472 "cpp.re" +yy1003: +#line 476 "cpp.re" { BOOST_ASSERT(false); } -#line 6409 "cpp_re.inc" -yy998: +#line 6446 "cpp_re.inc" +yy1004: yych = *++YYCURSOR; - if (yych <= '/') goto yy997; - if (yych >= ':') goto yy997; -yy999: + if (yych <= '/') goto yy1003; + if (yych >= ':') goto yy1003; +yy1005: YYMARKER = ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yybm[0+yych] & 64) { - goto yy999; + goto yy1005; } if (yych <= 'E') { - if (yych == '?') goto yy1002; - if (yych >= 'A') goto yy1004; + if (yych == '?') goto yy1008; + if (yych >= 'A') goto yy1010; } else { if (yych <= '\\') { - if (yych >= '\\') goto yy1006; + if (yych >= '\\') goto yy1012; } else { - if (yych <= '`') goto yy1001; - if (yych <= 'e') goto yy1004; + if (yych <= '`') goto yy1007; + if (yych <= 'e') goto yy1010; } } -yy1001: -#line 468 "cpp.re" +yy1007: +#line 472 "cpp.re" { BOOST_WAVE_RET(T_PP_NUMBER); } -#line 6435 "cpp_re.inc" -yy1002: +#line 6472 "cpp_re.inc" +yy1008: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; - if (yych == '?') goto yy1007; -yy1003: + if (yych == '?') goto yy1013; +yy1009: YYCURSOR = YYMARKER; - goto yy1001; -yy1004: + goto yy1007; +yy1010: YYMARKER = ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yybm[0+yych] & 128) { - goto yy1004; + goto yy1010; } if (yych <= '>') { if (yych <= '+') { - if (yych == '$') goto yy999; - if (yych <= '*') goto yy1001; - goto yy999; + if (yych == '$') goto yy1005; + if (yych <= '*') goto yy1007; + goto yy1005; } else { if (yych <= '.') { - if (yych <= ',') goto yy1001; - goto yy999; + if (yych <= ',') goto yy1007; + goto yy1005; } else { - if (yych <= '/') goto yy1001; - if (yych <= '9') goto yy999; - goto yy1001; + if (yych <= '/') goto yy1007; + if (yych <= '9') goto yy1005; + goto yy1007; } } } else { if (yych <= '\\') { if (yych <= '@') { - if (yych <= '?') goto yy1002; - goto yy1001; + if (yych <= '?') goto yy1008; + goto yy1007; } else { - if (yych <= 'Z') goto yy999; - if (yych <= '[') goto yy1001; + if (yych <= 'Z') goto yy1005; + if (yych <= '[') goto yy1007; } } else { if (yych <= '_') { - if (yych <= '^') goto yy1001; - goto yy999; + if (yych <= '^') goto yy1007; + goto yy1005; } else { - if (yych <= '`') goto yy1001; - if (yych <= 'z') goto yy999; - goto yy1001; + if (yych <= '`') goto yy1007; + if (yych <= 'z') goto yy1005; + goto yy1007; } } } -yy1006: +yy1012: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; - if (yych == 'U') goto yy1008; - if (yych == 'u') goto yy1009; - goto yy1003; -yy1007: + if (yych == 'U') goto yy1014; + if (yych == 'u') goto yy1015; + goto yy1009; +yy1013: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; - if (yych == '/') goto yy1006; - goto yy1003; -yy1008: + if (yych == '/') goto yy1012; + goto yy1009; +yy1014: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1003; - if (yych <= '9') goto yy1010; - goto yy1003; + if (yych <= '/') goto yy1009; + if (yych <= '9') goto yy1016; + goto yy1009; } else { - if (yych <= 'F') goto yy1010; - if (yych <= '`') goto yy1003; - if (yych <= 'f') goto yy1010; - goto yy1003; + if (yych <= 'F') goto yy1016; + if (yych <= '`') goto yy1009; + if (yych <= 'f') goto yy1016; + goto yy1009; } -yy1009: +yy1015: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1003; - if (yych <= '9') goto yy1011; - goto yy1003; + if (yych <= '/') goto yy1009; + if (yych <= '9') goto yy1017; + goto yy1009; } else { - if (yych <= 'F') goto yy1011; - if (yych <= '`') goto yy1003; - if (yych <= 'f') goto yy1011; - goto yy1003; + if (yych <= 'F') goto yy1017; + if (yych <= '`') goto yy1009; + if (yych <= 'f') goto yy1017; + goto yy1009; } -yy1010: +yy1016: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1003; - if (yych <= '9') goto yy1012; - goto yy1003; + if (yych <= '/') goto yy1009; + if (yych <= '9') goto yy1018; + goto yy1009; } else { - if (yych <= 'F') goto yy1012; - if (yych <= '`') goto yy1003; - if (yych <= 'f') goto yy1012; - goto yy1003; + if (yych <= 'F') goto yy1018; + if (yych <= '`') goto yy1009; + if (yych <= 'f') goto yy1018; + goto yy1009; } -yy1011: +yy1017: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1003; - if (yych <= '9') goto yy1013; - goto yy1003; + if (yych <= '/') goto yy1009; + if (yych <= '9') goto yy1019; + goto yy1009; } else { - if (yych <= 'F') goto yy1013; - if (yych <= '`') goto yy1003; - if (yych <= 'f') goto yy1013; - goto yy1003; + if (yych <= 'F') goto yy1019; + if (yych <= '`') goto yy1009; + if (yych <= 'f') goto yy1019; + goto yy1009; } -yy1012: +yy1018: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1003; - if (yych <= '9') goto yy1014; - goto yy1003; + if (yych <= '/') goto yy1009; + if (yych <= '9') goto yy1020; + goto yy1009; } else { - if (yych <= 'F') goto yy1014; - if (yych <= '`') goto yy1003; - if (yych <= 'f') goto yy1014; - goto yy1003; + if (yych <= 'F') goto yy1020; + if (yych <= '`') goto yy1009; + if (yych <= 'f') goto yy1020; + goto yy1009; } -yy1013: +yy1019: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1003; - if (yych <= '9') goto yy1015; - goto yy1003; + if (yych <= '/') goto yy1009; + if (yych <= '9') goto yy1021; + goto yy1009; } else { - if (yych <= 'F') goto yy1015; - if (yych <= '`') goto yy1003; - if (yych <= 'f') goto yy1015; - goto yy1003; + if (yych <= 'F') goto yy1021; + if (yych <= '`') goto yy1009; + if (yych <= 'f') goto yy1021; + goto yy1009; } -yy1014: +yy1020: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1003; - if (yych <= '9') goto yy1009; - goto yy1003; + if (yych <= '/') goto yy1009; + if (yych <= '9') goto yy1015; + goto yy1009; } else { - if (yych <= 'F') goto yy1009; - if (yych <= '`') goto yy1003; - if (yych <= 'f') goto yy1009; - goto yy1003; + if (yych <= 'F') goto yy1015; + if (yych <= '`') goto yy1009; + if (yych <= 'f') goto yy1015; + goto yy1009; } -yy1015: +yy1021: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1003; - if (yych <= '9') goto yy999; - goto yy1003; + if (yych <= '/') goto yy1009; + if (yych <= '9') goto yy1005; + goto yy1009; } else { - if (yych <= 'F') goto yy999; - if (yych <= '`') goto yy1003; - if (yych <= 'f') goto yy999; - goto yy1003; + if (yych <= 'F') goto yy1005; + if (yych <= '`') goto yy1009; + if (yych <= 'f') goto yy1005; + goto yy1009; } } -#line 473 "cpp.re" +#line 477 "cpp.re" } else { -#line 6617 "cpp_re.inc" +#line 6654 "cpp_re.inc" { YYCTYPE yych; unsigned int yyaccept = 0; @@ -6624,8 +6661,8 @@ yy1015: 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, + 240, 240, 176, 176, 176, 176, 176, 176, + 144, 144, 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, @@ -6654,180 +6691,311 @@ yy1015: if ((YYLIMIT - YYCURSOR) < 4) YYFILL(4); yych = *YYCURSOR; if (yych <= '/') { - if (yych == '.') goto yy1020; + if (yych == '.') goto yy1026; } else { - if (yych <= '0') goto yy1021; - if (yych <= '9') goto yy1023; + if (yych <= '0') goto yy1027; + if (yych <= '9') goto yy1029; } ++YYCURSOR; -yy1019: -#line 483 "cpp.re" +yy1025: +#line 487 "cpp.re" { BOOST_ASSERT(false); } -#line 6667 "cpp_re.inc" -yy1020: +#line 6704 "cpp_re.inc" +yy1026: yych = *++YYCURSOR; - if (yych <= '/') goto yy1019; - if (yych <= '9') goto yy1025; - goto yy1019; -yy1021: + if (yych <= '/') goto yy1025; + if (yych <= '9') goto yy1031; + goto yy1025; +yy1027: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'X') goto yy1034; - if (yych == 'x') goto yy1034; - goto yy1029; -yy1022: -#line 480 "cpp.re" + if (yych <= 'X') { + if (yych == 'B') goto yy1041; + if (yych <= 'W') goto yy1038; + goto yy1043; + } else { + if (yych <= 'b') { + if (yych <= 'a') goto yy1038; + goto yy1041; + } else { + if (yych == 'x') goto yy1043; + goto yy1038; + } + } +yy1028: +#line 484 "cpp.re" { goto integer_suffix; } -#line 6682 "cpp_re.inc" -yy1023: +#line 6729 "cpp_re.inc" +yy1029: yyaccept = 0; YYMARKER = ++YYCURSOR; if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3); yych = *YYCURSOR; - if (yybm[0+yych] & 32) { - goto yy1023; + if (yybm[0+yych] & 16) { + goto yy1029; } - if (yych <= 'D') { - if (yych != '.') goto yy1022; + if (yych <= '.') { + if (yych == '\'') goto yy1044; + if (yych <= '-') goto yy1028; + goto yy1036; } else { - if (yych <= 'E') goto yy1033; - if (yych == 'e') goto yy1033; - goto yy1022; + if (yych <= 'E') { + if (yych <= 'D') goto yy1028; + goto yy1042; + } else { + if (yych == 'e') goto yy1042; + goto yy1028; + } } -yy1025: +yy1031: yyaccept = 1; YYMARKER = ++YYCURSOR; - if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3); + if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2); yych = *YYCURSOR; - if (yych <= 'K') { - if (yych <= 'D') { - if (yych <= '/') goto yy1027; - if (yych <= '9') goto yy1025; +yy1032: + if (yych <= 'F') { + if (yych <= '/') { + if (yych == '\'') goto yy1045; } else { - if (yych <= 'E') goto yy1033; - if (yych <= 'F') goto yy1035; + if (yych <= '9') goto yy1031; + if (yych <= 'D') goto yy1033; + if (yych <= 'E') goto yy1042; + goto yy1046; } } else { if (yych <= 'e') { - if (yych <= 'L') goto yy1036; - if (yych >= 'e') goto yy1033; + if (yych == 'L') goto yy1047; + if (yych >= 'e') goto yy1042; } else { - if (yych <= 'f') goto yy1035; - if (yych == 'l') goto yy1036; + if (yych <= 'f') goto yy1046; + if (yych == 'l') goto yy1047; } } -yy1027: -#line 478 "cpp.re" +yy1033: +#line 482 "cpp.re" { BOOST_WAVE_RET(T_FLOATLIT); } -#line 6723 "cpp_re.inc" -yy1028: +#line 6778 "cpp_re.inc" +yy1034: + ++YYCURSOR; + if (YYLIMIT <= YYCURSOR) YYFILL(1); + yych = *YYCURSOR; + if (yych <= '/') goto yy1035; + if (yych <= '7') goto yy1048; + if (yych <= '9') goto yy1050; +yy1035: + YYCURSOR = YYMARKER; + if (yyaccept == 0) { + goto yy1028; + } else { + goto yy1033; + } +yy1036: + yyaccept = 1; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == '\'') goto yy1033; + goto yy1032; +yy1037: yyaccept = 0; YYMARKER = ++YYCURSOR; if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3); yych = *YYCURSOR; -yy1029: - if (yybm[0+yych] & 64) { - goto yy1028; +yy1038: + if (yybm[0+yych] & 32) { + goto yy1037; } - if (yych <= '9') { - if (yych == '.') goto yy1025; - if (yych <= '/') goto yy1022; + if (yych <= '/') { + if (yych <= '\'') { + if (yych <= '&') goto yy1028; + goto yy1034; + } else { + if (yych == '.') goto yy1036; + goto yy1028; + } } else { if (yych <= 'E') { - if (yych <= 'D') goto yy1022; - goto yy1033; + if (yych <= '9') goto yy1039; + if (yych <= 'D') goto yy1028; + goto yy1042; } else { - if (yych == 'e') goto yy1033; - goto yy1022; + if (yych == 'e') goto yy1042; + goto yy1028; } } -yy1030: +yy1039: ++YYCURSOR; if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3); yych = *YYCURSOR; - if (yych <= '9') { - if (yych == '.') goto yy1025; - if (yych >= '0') goto yy1030; + if (yych <= '/') { + if (yych <= '\'') { + if (yych <= '&') goto yy1035; + goto yy1052; + } else { + if (yych == '.') goto yy1036; + goto yy1035; + } } else { if (yych <= 'E') { - if (yych >= 'E') goto yy1033; + if (yych <= '9') goto yy1039; + if (yych <= 'D') goto yy1035; + goto yy1042; } else { - if (yych == 'e') goto yy1033; + if (yych == 'e') goto yy1042; + goto yy1035; } } -yy1032: - YYCURSOR = YYMARKER; - if (yyaccept == 0) { - goto yy1022; - } else { - goto yy1027; +yy1041: + ++YYCURSOR; + if (YYLIMIT <= YYCURSOR) YYFILL(1); + yych = *YYCURSOR; + if (yybm[0+yych] & 64) { + goto yy1053; } -yy1033: + goto yy1035; +yy1042: yych = *++YYCURSOR; if (yych <= ',') { - if (yych == '+') goto yy1037; - goto yy1032; + if (yych == '+') goto yy1055; + goto yy1035; } else { - if (yych <= '-') goto yy1037; - if (yych <= '/') goto yy1032; - if (yych <= '9') goto yy1038; - goto yy1032; + if (yych <= '-') goto yy1055; + if (yych <= '/') goto yy1035; + if (yych <= '9') goto yy1056; + goto yy1035; } -yy1034: - yych = *++YYCURSOR; +yy1043: + ++YYCURSOR; + if (YYLIMIT <= YYCURSOR) YYFILL(1); + yych = *YYCURSOR; if (yybm[0+yych] & 128) { - goto yy1040; + goto yy1058; } - goto yy1032; -yy1035: - yych = *++YYCURSOR; - if (yych == 'L') goto yy1042; - if (yych == 'l') goto yy1042; - goto yy1027; -yy1036: + goto yy1035; +yy1044: + ++YYCURSOR; + if (YYLIMIT <= YYCURSOR) YYFILL(1); + yych = *YYCURSOR; + if (yych <= '/') goto yy1035; + if (yych <= '9') goto yy1060; + goto yy1035; +yy1045: + ++YYCURSOR; + if (YYLIMIT <= YYCURSOR) YYFILL(1); + yych = *YYCURSOR; + if (yych <= '/') goto yy1035; + if (yych <= '9') goto yy1031; + goto yy1035; +yy1046: yych = *++YYCURSOR; - if (yych == 'F') goto yy1042; - if (yych == 'f') goto yy1042; - goto yy1027; -yy1037: + if (yych == 'L') goto yy1062; + if (yych == 'l') goto yy1062; + goto yy1033; +yy1047: yych = *++YYCURSOR; - if (yych <= '/') goto yy1032; - if (yych >= ':') goto yy1032; -yy1038: + if (yych == 'F') goto yy1062; + if (yych == 'f') goto yy1062; + goto yy1033; +yy1048: + yyaccept = 0; + YYMARKER = ++YYCURSOR; + if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3); + yych = *YYCURSOR; + if (yych <= '.') { + if (yych == '\'') goto yy1034; + if (yych <= '-') goto yy1028; + goto yy1036; + } else { + if (yych <= '/') goto yy1028; + if (yych <= '7') goto yy1048; + if (yych >= ':') goto yy1028; + } +yy1050: ++YYCURSOR; + if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3); + yych = *YYCURSOR; + if (yych <= '-') { + if (yych != '\'') goto yy1035; + } else { + if (yych <= '.') goto yy1036; + if (yych <= '/') goto yy1035; + if (yych <= '9') goto yy1050; + goto yy1035; + } +yy1052: + ++YYCURSOR; + if (YYLIMIT <= YYCURSOR) YYFILL(1); + yych = *YYCURSOR; + if (yych <= '/') goto yy1035; + if (yych <= '9') goto yy1050; + goto yy1035; +yy1053: + yyaccept = 0; + YYMARKER = ++YYCURSOR; + if (YYLIMIT <= YYCURSOR) YYFILL(1); + yych = *YYCURSOR; + if (yybm[0+yych] & 64) { + goto yy1053; + } + if (yych == '\'') goto yy1041; + goto yy1028; +yy1055: + ++YYCURSOR; + if (YYLIMIT <= YYCURSOR) YYFILL(1); + yych = *YYCURSOR; + if (yych <= '/') goto yy1035; + if (yych >= ':') goto yy1035; +yy1056: + yyaccept = 1; + YYMARKER = ++YYCURSOR; if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2); yych = *YYCURSOR; - if (yych <= 'K') { - if (yych <= '9') { - if (yych <= '/') goto yy1027; - goto yy1038; + if (yych <= 'F') { + if (yych <= '/') { + if (yych == '\'') goto yy1055; + goto yy1033; } else { - if (yych == 'F') goto yy1035; - goto yy1027; + if (yych <= '9') goto yy1056; + if (yych <= 'E') goto yy1033; + goto yy1046; } } else { - if (yych <= 'f') { - if (yych <= 'L') goto yy1036; - if (yych <= 'e') goto yy1027; - goto yy1035; + if (yych <= 'e') { + if (yych == 'L') goto yy1047; + goto yy1033; } else { - if (yych == 'l') goto yy1036; - goto yy1027; + if (yych <= 'f') goto yy1046; + if (yych == 'l') goto yy1047; + goto yy1033; } } -yy1040: - ++YYCURSOR; +yy1058: + yyaccept = 0; + YYMARKER = ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yybm[0+yych] & 128) { - goto yy1040; + goto yy1058; } - goto yy1022; -yy1042: + if (yych == '\'') goto yy1043; + goto yy1028; +yy1060: + yyaccept = 0; + YYMARKER = ++YYCURSOR; + if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3); + yych = *YYCURSOR; + if (yych <= '-') { + if (yych == '\'') goto yy1044; + goto yy1028; + } else { + if (yych <= '.') goto yy1036; + if (yych <= '/') goto yy1028; + if (yych <= '9') goto yy1060; + goto yy1028; + } +yy1062: ++YYCURSOR; - goto yy1027; + goto yy1033; } -#line 484 "cpp.re" +#line 488 "cpp.re" } } @@ -6835,172 +7003,154 @@ yy1042: /* this subscanner is called, whenever an Integer was recognized */ integer_suffix: { - if (s->enable_ms_extensions) { + auto suffix_start = YYCURSOR; + -#line 6841 "cpp_re.inc" +#line 7010 "cpp_re.inc" { YYCTYPE yych; if ((YYLIMIT - YYCURSOR) < 4) YYFILL(4); yych = *(YYMARKER = YYCURSOR); if (yych <= 'h') { - if (yych <= 'L') { - if (yych >= 'L') goto yy1046; + if (yych <= 'T') { + if (yych == 'L') goto yy1066; } else { - if (yych == 'U') goto yy1047; + if (yych <= 'U') goto yy1067; + if (yych == 'Z') goto yy1068; } } else { - if (yych <= 'l') { - if (yych <= 'i') goto yy1048; - if (yych >= 'l') goto yy1050; + if (yych <= 't') { + if (yych <= 'i') goto yy1070; + if (yych == 'l') goto yy1072; } else { - if (yych == 'u') goto yy1051; + if (yych <= 'u') goto yy1073; + if (yych == 'z') goto yy1068; } } -yy1045: -#line 497 "cpp.re" +yy1065: +#line 520 "cpp.re" { BOOST_WAVE_RET(T_INTLIT); } -#line 6863 "cpp_re.inc" -yy1046: +#line 7034 "cpp_re.inc" +yy1066: yych = *++YYCURSOR; if (yych <= 'T') { - if (yych == 'L') goto yy1052; - goto yy1045; + if (yych == 'L') goto yy1074; + goto yy1065; } else { - if (yych <= 'U') goto yy1054; - if (yych == 'u') goto yy1054; - goto yy1045; + if (yych <= 'U') goto yy1076; + if (yych == 'u') goto yy1076; + goto yy1065; } -yy1047: +yy1067: yych = *++YYCURSOR; - if (yych == 'L') goto yy1055; - if (yych == 'l') goto yy1056; - goto yy1045; -yy1048: + if (yych <= 'Z') { + if (yych == 'L') goto yy1077; + if (yych <= 'Y') goto yy1065; + goto yy1078; + } else { + if (yych <= 'l') { + if (yych <= 'k') goto yy1065; + goto yy1079; + } else { + if (yych == 'z') goto yy1078; + goto yy1065; + } + } +yy1068: + yych = *++YYCURSOR; + if (yych == 'U') goto yy1078; + if (yych == 'u') goto yy1078; +yy1069: +#line 510 "cpp.re" + { + if (s->act_in_cpp2b_mode) { + BOOST_WAVE_RET(T_SIZETLIT); + } else { + YYCURSOR = suffix_start; + BOOST_WAVE_RET(T_INTLIT); + } + } +#line 7074 "cpp_re.inc" +yy1070: yych = *++YYCURSOR; - if (yych == '6') goto yy1057; -yy1049: + if (yych == '6') goto yy1080; +yy1071: YYCURSOR = YYMARKER; - goto yy1045; -yy1050: + goto yy1065; +yy1072: yych = *++YYCURSOR; if (yych <= 'k') { - if (yych == 'U') goto yy1054; - goto yy1045; + if (yych == 'U') goto yy1076; + goto yy1065; } else { - if (yych <= 'l') goto yy1052; - if (yych == 'u') goto yy1054; - goto yy1045; + if (yych <= 'l') goto yy1074; + if (yych == 'u') goto yy1076; + goto yy1065; } -yy1051: +yy1073: yych = *(YYMARKER = ++YYCURSOR); if (yych <= 'h') { - if (yych == 'L') goto yy1055; - goto yy1045; + if (yych <= 'L') { + if (yych <= 'K') goto yy1065; + goto yy1077; + } else { + if (yych == 'Z') goto yy1078; + goto yy1065; + } } else { - if (yych <= 'i') goto yy1048; - if (yych == 'l') goto yy1056; - goto yy1045; + if (yych <= 'l') { + if (yych <= 'i') goto yy1070; + if (yych <= 'k') goto yy1065; + goto yy1079; + } else { + if (yych == 'z') goto yy1078; + goto yy1065; + } } -yy1052: +yy1074: yych = *++YYCURSOR; - if (yych == 'U') goto yy1058; - if (yych == 'u') goto yy1058; -yy1053: -#line 494 "cpp.re" + if (yych == 'U') goto yy1081; + if (yych == 'u') goto yy1081; +yy1075: +#line 499 "cpp.re" { BOOST_WAVE_RET(T_LONGINTLIT); } -#line 6912 "cpp_re.inc" -yy1054: +#line 7118 "cpp_re.inc" +yy1076: ++YYCURSOR; - goto yy1045; -yy1055: + goto yy1065; +yy1077: yych = *++YYCURSOR; - if (yych == 'L') goto yy1058; - goto yy1045; -yy1056: + if (yych == 'L') goto yy1081; + goto yy1065; +yy1078: + ++YYCURSOR; + goto yy1069; +yy1079: yych = *++YYCURSOR; - if (yych == 'l') goto yy1058; - goto yy1045; -yy1057: + if (yych == 'l') goto yy1081; + goto yy1065; +yy1080: yych = *++YYCURSOR; - if (yych != '4') goto yy1049; -yy1058: + if (yych == '4') goto yy1082; + goto yy1071; +yy1081: ++YYCURSOR; - goto yy1053; -} -#line 498 "cpp.re" - - } - else { - -#line 6936 "cpp_re.inc" -{ - YYCTYPE yych; - if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3); - yych = *YYCURSOR; - if (yych <= 'U') { - if (yych == 'L') goto yy1062; - if (yych >= 'U') goto yy1063; - } else { - if (yych <= 'l') { - if (yych >= 'l') goto yy1064; + goto yy1075; +yy1082: + ++YYCURSOR; +#line 501 "cpp.re" + { + if (s->enable_ms_extensions) { + BOOST_WAVE_RET(T_LONGINTLIT); } else { - if (yych == 'u') goto yy1063; + YYCURSOR = suffix_start; + BOOST_WAVE_RET(T_INTLIT); } } -yy1061: -#line 506 "cpp.re" - { BOOST_WAVE_RET(T_INTLIT); } -#line 6954 "cpp_re.inc" -yy1062: - yych = *++YYCURSOR; - if (yych <= 'T') { - if (yych == 'L') goto yy1065; - goto yy1061; - } else { - if (yych <= 'U') goto yy1067; - if (yych == 'u') goto yy1067; - goto yy1061; - } -yy1063: - yych = *++YYCURSOR; - if (yych == 'L') goto yy1068; - if (yych == 'l') goto yy1069; - goto yy1061; -yy1064: - yych = *++YYCURSOR; - if (yych <= 'k') { - if (yych == 'U') goto yy1067; - goto yy1061; - } else { - if (yych <= 'l') goto yy1065; - if (yych == 'u') goto yy1067; - goto yy1061; - } -yy1065: - yych = *++YYCURSOR; - if (yych == 'U') goto yy1070; - if (yych == 'u') goto yy1070; -yy1066: -#line 503 "cpp.re" - { BOOST_WAVE_RET(T_LONGINTLIT); } -#line 6987 "cpp_re.inc" -yy1067: - ++YYCURSOR; - goto yy1061; -yy1068: - yych = *++YYCURSOR; - if (yych == 'L') goto yy1070; - goto yy1061; -yy1069: - yych = *++YYCURSOR; - if (yych != 'l') goto yy1061; -yy1070: - ++YYCURSOR; - goto yy1066; +#line 7151 "cpp_re.inc" } -#line 507 "cpp.re" +#line 522 "cpp.re" - } // re2c will complain about -Wmatch-empty-string above // it's OK because we've already matched an integer @@ -7011,7 +7161,7 @@ yy1070: extcharlit: { -#line 7015 "cpp_re.inc" +#line 7165 "cpp_re.inc" { YYCTYPE yych; static const unsigned char yybm[] = { @@ -7052,288 +7202,288 @@ extcharlit: yych = *YYCURSOR; if (yych <= 0x1F) { if (yych <= '\n') { - if (yych <= 0x08) goto yy1073; - if (yych <= '\t') goto yy1075; - goto yy1077; + if (yych <= 0x08) goto yy1086; + if (yych <= '\t') goto yy1088; + goto yy1090; } else { - if (yych <= '\f') goto yy1075; - if (yych <= '\r') goto yy1077; + if (yych <= '\f') goto yy1088; + if (yych <= '\r') goto yy1090; } } else { if (yych <= '>') { - if (yych == '\'') goto yy1077; - goto yy1075; + if (yych == '\'') goto yy1090; + goto yy1088; } else { - if (yych <= '?') goto yy1078; - if (yych == '\\') goto yy1079; - goto yy1075; + if (yych <= '?') goto yy1091; + if (yych == '\\') goto yy1092; + goto yy1088; } } -yy1073: +yy1086: ++YYCURSOR; -#line 519 "cpp.re" +#line 533 "cpp.re" { (*s->error_proc)(s, lexing_exception::generic_lexing_error, "Invalid character in raw string delimiter ('%c')", yych); } -#line 7080 "cpp_re.inc" -yy1075: +#line 7230 "cpp_re.inc" +yy1088: yych = *++YYCURSOR; - if (yych == '\'') goto yy1080; -yy1076: -#line 528 "cpp.re" + if (yych == '\'') goto yy1093; +yy1089: +#line 542 "cpp.re" { BOOST_WAVE_RET(TOKEN_FROM_ID(*s->tok, UnknownTokenType)); } -#line 7087 "cpp_re.inc" -yy1077: +#line 7237 "cpp_re.inc" +yy1090: ++YYCURSOR; - goto yy1076; -yy1078: + goto yy1089; +yy1091: yych = *(YYMARKER = ++YYCURSOR); - if (yych == '\'') goto yy1080; - if (yych == '?') goto yy1082; - goto yy1076; -yy1079: + if (yych == '\'') goto yy1093; + if (yych == '?') goto yy1095; + goto yy1089; +yy1092: yych = *(YYMARKER = ++YYCURSOR); if (yych <= '\\') { if (yych <= '>') { if (yych <= '&') { - if (yych == '"') goto yy1084; - goto yy1076; + if (yych == '"') goto yy1097; + goto yy1089; } else { - if (yych <= '\'') goto yy1084; - if (yych <= '/') goto yy1076; - if (yych <= '7') goto yy1085; - goto yy1076; + if (yych <= '\'') goto yy1097; + if (yych <= '/') goto yy1089; + if (yych <= '7') goto yy1098; + goto yy1089; } } else { if (yych <= 'E') { - if (yych <= '?') goto yy1086; - if (yych <= 'D') goto yy1076; - goto yy1084; + if (yych <= '?') goto yy1099; + if (yych <= 'D') goto yy1089; + goto yy1097; } else { - if (yych == 'U') goto yy1087; - if (yych <= '[') goto yy1076; - goto yy1084; + if (yych == 'U') goto yy1100; + if (yych <= '[') goto yy1089; + goto yy1097; } } } else { if (yych <= 'q') { if (yych <= 'd') { - if (yych <= '`') goto yy1076; - if (yych <= 'b') goto yy1084; - goto yy1076; + if (yych <= '`') goto yy1089; + if (yych <= 'b') goto yy1097; + goto yy1089; } else { - if (yych <= 'f') goto yy1084; - if (yych == 'n') goto yy1084; - goto yy1076; + if (yych <= 'f') goto yy1097; + if (yych == 'n') goto yy1097; + goto yy1089; } } else { if (yych <= 'u') { - if (yych == 's') goto yy1076; - if (yych <= 't') goto yy1084; - goto yy1088; + if (yych == 's') goto yy1089; + if (yych <= 't') goto yy1097; + goto yy1101; } else { - if (yych <= 'v') goto yy1084; - if (yych == 'x') goto yy1089; - goto yy1076; + if (yych <= 'v') goto yy1097; + if (yych == 'x') goto yy1102; + goto yy1089; } } } -yy1080: +yy1093: ++YYCURSOR; -#line 525 "cpp.re" +#line 539 "cpp.re" { BOOST_WAVE_RET(T_CHARLIT); } -#line 7147 "cpp_re.inc" -yy1082: +#line 7297 "cpp_re.inc" +yy1095: yych = *++YYCURSOR; - if (yych == '/') goto yy1090; -yy1083: + if (yych == '/') goto yy1103; +yy1096: YYCURSOR = YYMARKER; - goto yy1076; -yy1084: + goto yy1089; +yy1097: yych = *++YYCURSOR; - if (yych == '\'') goto yy1080; - goto yy1083; -yy1085: + if (yych == '\'') goto yy1093; + goto yy1096; +yy1098: yych = *++YYCURSOR; - if (yych == '\'') goto yy1080; - if (yych <= '/') goto yy1083; - if (yych <= '7') goto yy1091; - goto yy1083; -yy1086: + if (yych == '\'') goto yy1093; + if (yych <= '/') goto yy1096; + if (yych <= '7') goto yy1104; + goto yy1096; +yy1099: yych = *++YYCURSOR; - if (yych == '\'') goto yy1080; - if (yych == '?') goto yy1092; - goto yy1083; -yy1087: + if (yych == '\'') goto yy1093; + if (yych == '?') goto yy1105; + goto yy1096; +yy1100: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1083; - if (yych <= '9') goto yy1093; - goto yy1083; + if (yych <= '/') goto yy1096; + if (yych <= '9') goto yy1106; + goto yy1096; } else { - if (yych <= 'F') goto yy1093; - if (yych <= '`') goto yy1083; - if (yych <= 'f') goto yy1093; - goto yy1083; + if (yych <= 'F') goto yy1106; + if (yych <= '`') goto yy1096; + if (yych <= 'f') goto yy1106; + goto yy1096; } -yy1088: +yy1101: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1083; - if (yych <= '9') goto yy1094; - goto yy1083; + if (yych <= '/') goto yy1096; + if (yych <= '9') goto yy1107; + goto yy1096; } else { - if (yych <= 'F') goto yy1094; - if (yych <= '`') goto yy1083; - if (yych <= 'f') goto yy1094; - goto yy1083; + if (yych <= 'F') goto yy1107; + if (yych <= '`') goto yy1096; + if (yych <= 'f') goto yy1107; + goto yy1096; } -yy1089: +yy1102: yych = *++YYCURSOR; - if (yych == '\'') goto yy1083; - goto yy1096; -yy1090: + if (yych == '\'') goto yy1096; + goto yy1109; +yy1103: yych = *++YYCURSOR; if (yych <= '\\') { if (yych <= '>') { if (yych <= '&') { - if (yych == '"') goto yy1084; - goto yy1083; + if (yych == '"') goto yy1097; + goto yy1096; } else { - if (yych <= '\'') goto yy1084; - if (yych <= '/') goto yy1083; - if (yych <= '7') goto yy1085; - goto yy1083; + if (yych <= '\'') goto yy1097; + if (yych <= '/') goto yy1096; + if (yych <= '7') goto yy1098; + goto yy1096; } } else { if (yych <= 'E') { - if (yych <= '?') goto yy1086; - if (yych <= 'D') goto yy1083; - goto yy1084; + if (yych <= '?') goto yy1099; + if (yych <= 'D') goto yy1096; + goto yy1097; } else { - if (yych == 'U') goto yy1087; - if (yych <= '[') goto yy1083; - goto yy1084; + if (yych == 'U') goto yy1100; + if (yych <= '[') goto yy1096; + goto yy1097; } } } else { if (yych <= 'q') { if (yych <= 'd') { - if (yych <= '`') goto yy1083; - if (yych <= 'b') goto yy1084; - goto yy1083; + if (yych <= '`') goto yy1096; + if (yych <= 'b') goto yy1097; + goto yy1096; } else { - if (yych <= 'f') goto yy1084; - if (yych == 'n') goto yy1084; - goto yy1083; + if (yych <= 'f') goto yy1097; + if (yych == 'n') goto yy1097; + goto yy1096; } } else { if (yych <= 'u') { - if (yych == 's') goto yy1083; - if (yych <= 't') goto yy1084; - goto yy1088; + if (yych == 's') goto yy1096; + if (yych <= 't') goto yy1097; + goto yy1101; } else { - if (yych <= 'v') goto yy1084; - if (yych == 'x') goto yy1089; - goto yy1083; + if (yych <= 'v') goto yy1097; + if (yych == 'x') goto yy1102; + goto yy1096; } } } -yy1091: +yy1104: yych = *++YYCURSOR; - if (yych == '\'') goto yy1080; - if (yych <= '/') goto yy1083; - if (yych <= '7') goto yy1084; - goto yy1083; -yy1092: + if (yych == '\'') goto yy1093; + if (yych <= '/') goto yy1096; + if (yych <= '7') goto yy1097; + goto yy1096; +yy1105: yych = *++YYCURSOR; - if (yych == '/') goto yy1084; - goto yy1083; -yy1093: + if (yych == '/') goto yy1097; + goto yy1096; +yy1106: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1083; - if (yych <= '9') goto yy1097; - goto yy1083; + if (yych <= '/') goto yy1096; + if (yych <= '9') goto yy1110; + goto yy1096; } else { - if (yych <= 'F') goto yy1097; - if (yych <= '`') goto yy1083; - if (yych <= 'f') goto yy1097; - goto yy1083; + if (yych <= 'F') goto yy1110; + if (yych <= '`') goto yy1096; + if (yych <= 'f') goto yy1110; + goto yy1096; } -yy1094: +yy1107: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1083; - if (yych <= '9') goto yy1098; - goto yy1083; + if (yych <= '/') goto yy1096; + if (yych <= '9') goto yy1111; + goto yy1096; } else { - if (yych <= 'F') goto yy1098; - if (yych <= '`') goto yy1083; - if (yych <= 'f') goto yy1098; - goto yy1083; + if (yych <= 'F') goto yy1111; + if (yych <= '`') goto yy1096; + if (yych <= 'f') goto yy1111; + goto yy1096; } -yy1095: +yy1108: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; -yy1096: +yy1109: if (yybm[0+yych] & 128) { - goto yy1095; + goto yy1108; } - if (yych == '\'') goto yy1080; - goto yy1083; -yy1097: + if (yych == '\'') goto yy1093; + goto yy1096; +yy1110: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1083; - if (yych <= '9') goto yy1099; - goto yy1083; + if (yych <= '/') goto yy1096; + if (yych <= '9') goto yy1112; + goto yy1096; } else { - if (yych <= 'F') goto yy1099; - if (yych <= '`') goto yy1083; - if (yych <= 'f') goto yy1099; - goto yy1083; + if (yych <= 'F') goto yy1112; + if (yych <= '`') goto yy1096; + if (yych <= 'f') goto yy1112; + goto yy1096; } -yy1098: +yy1111: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1083; - if (yych <= '9') goto yy1100; - goto yy1083; + if (yych <= '/') goto yy1096; + if (yych <= '9') goto yy1113; + goto yy1096; } else { - if (yych <= 'F') goto yy1100; - if (yych <= '`') goto yy1083; - if (yych <= 'f') goto yy1100; - goto yy1083; + if (yych <= 'F') goto yy1113; + if (yych <= '`') goto yy1096; + if (yych <= 'f') goto yy1113; + goto yy1096; } -yy1099: +yy1112: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1083; - if (yych <= '9') goto yy1088; - goto yy1083; + if (yych <= '/') goto yy1096; + if (yych <= '9') goto yy1101; + goto yy1096; } else { - if (yych <= 'F') goto yy1088; - if (yych <= '`') goto yy1083; - if (yych <= 'f') goto yy1088; - goto yy1083; + if (yych <= 'F') goto yy1101; + if (yych <= '`') goto yy1096; + if (yych <= 'f') goto yy1101; + goto yy1096; } -yy1100: +yy1113: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1083; - if (yych <= '9') goto yy1084; - goto yy1083; + if (yych <= '/') goto yy1096; + if (yych <= '9') goto yy1097; + goto yy1096; } else { - if (yych <= 'F') goto yy1084; - if (yych <= '`') goto yy1083; - if (yych <= 'f') goto yy1084; - goto yy1083; + if (yych <= 'F') goto yy1097; + if (yych <= '`') goto yy1096; + if (yych <= 'f') goto yy1097; + goto yy1096; } } -#line 529 "cpp.re" +#line 543 "cpp.re" } @@ -7341,7 +7491,7 @@ yy1100: extstringlit: { -#line 7345 "cpp_re.inc" +#line 7495 "cpp_re.inc" { YYCTYPE yych; unsigned int yyaccept = 0; @@ -7383,349 +7533,349 @@ extstringlit: yych = *YYCURSOR; if (yych <= 0x1F) { if (yych <= '\n') { - if (yych <= 0x08) goto yy1103; - if (yych <= '\t') goto yy1105; - goto yy1107; + if (yych <= 0x08) goto yy1116; + if (yych <= '\t') goto yy1118; + goto yy1120; } else { - if (yych <= '\f') goto yy1105; - if (yych <= '\r') goto yy1107; + if (yych <= '\f') goto yy1118; + if (yych <= '\r') goto yy1120; } } else { if (yych <= '>') { - if (yych == '"') goto yy1108; - goto yy1105; + if (yych == '"') goto yy1121; + goto yy1118; } else { - if (yych <= '?') goto yy1110; - if (yych == '\\') goto yy1111; - goto yy1105; + if (yych <= '?') goto yy1123; + if (yych == '\\') goto yy1124; + goto yy1118; } } -yy1103: +yy1116: ++YYCURSOR; -#line 536 "cpp.re" +#line 550 "cpp.re" { (*s->error_proc)(s, lexing_exception::generic_lexing_error, "Invalid character in raw string delimiter ('%c')", yych); } -#line 7411 "cpp_re.inc" -yy1105: +#line 7561 "cpp_re.inc" +yy1118: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if (yych <= '\n') { - if (yych == '\t') goto yy1113; + if (yych == '\t') goto yy1126; } else { - if (yych <= '\f') goto yy1113; - if (yych >= ' ') goto yy1113; + if (yych <= '\f') goto yy1126; + if (yych >= ' ') goto yy1126; } -yy1106: -#line 545 "cpp.re" +yy1119: +#line 559 "cpp.re" { BOOST_WAVE_RET(TOKEN_FROM_ID(*s->tok, UnknownTokenType)); } -#line 7424 "cpp_re.inc" -yy1107: +#line 7574 "cpp_re.inc" +yy1120: ++YYCURSOR; - goto yy1106; -yy1108: + goto yy1119; +yy1121: ++YYCURSOR; -yy1109: -#line 542 "cpp.re" +yy1122: +#line 556 "cpp.re" { BOOST_WAVE_RET(T_STRINGLIT); } -#line 7433 "cpp_re.inc" -yy1110: +#line 7583 "cpp_re.inc" +yy1123: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if (yybm[0+yych] & 64) { - goto yy1117; + goto yy1130; } if (yych <= '\n') { - if (yych == '\t') goto yy1113; - goto yy1106; + if (yych == '\t') goto yy1126; + goto yy1119; } else { - if (yych <= '\f') goto yy1113; - if (yych <= 0x1F) goto yy1106; - goto yy1113; + if (yych <= '\f') goto yy1126; + if (yych <= 0x1F) goto yy1119; + goto yy1126; } -yy1111: +yy1124: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if (yych <= '\\') { if (yych <= '>') { if (yych <= '&') { - if (yych != '"') goto yy1106; + if (yych != '"') goto yy1119; } else { - if (yych <= '\'') goto yy1112; - if (yych <= '/') goto yy1106; - if (yych >= '8') goto yy1106; + if (yych <= '\'') goto yy1125; + if (yych <= '/') goto yy1119; + if (yych >= '8') goto yy1119; } } else { if (yych <= 'E') { - if (yych <= '?') goto yy1112; - if (yych <= 'D') goto yy1106; + if (yych <= '?') goto yy1125; + if (yych <= 'D') goto yy1119; } else { - if (yych == 'U') goto yy1119; - if (yych <= '[') goto yy1106; + if (yych == 'U') goto yy1132; + if (yych <= '[') goto yy1119; } } } else { if (yych <= 'q') { if (yych <= 'd') { - if (yych <= '`') goto yy1106; - if (yych >= 'c') goto yy1106; + if (yych <= '`') goto yy1119; + if (yych >= 'c') goto yy1119; } else { - if (yych <= 'f') goto yy1112; - if (yych != 'n') goto yy1106; + if (yych <= 'f') goto yy1125; + if (yych != 'n') goto yy1119; } } else { if (yych <= 'u') { - if (yych == 's') goto yy1106; - if (yych >= 'u') goto yy1120; + if (yych == 's') goto yy1119; + if (yych >= 'u') goto yy1133; } else { - if (yych <= 'v') goto yy1112; - if (yych == 'x') goto yy1121; - goto yy1106; + if (yych <= 'v') goto yy1125; + if (yych == 'x') goto yy1134; + goto yy1119; } } } -yy1112: +yy1125: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; -yy1113: +yy1126: if (yybm[0+yych] & 32) { - goto yy1112; + goto yy1125; } - if (yych <= 0x1F) goto yy1114; - if (yych <= '"') goto yy1108; - if (yych <= '?') goto yy1115; - goto yy1116; -yy1114: + if (yych <= 0x1F) goto yy1127; + if (yych <= '"') goto yy1121; + if (yych <= '?') goto yy1128; + goto yy1129; +yy1127: YYCURSOR = YYMARKER; if (yyaccept == 0) { - goto yy1106; + goto yy1119; } else { - goto yy1109; + goto yy1122; } -yy1115: +yy1128: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yybm[0+yych] & 32) { - goto yy1112; + goto yy1125; } - if (yych <= 0x1F) goto yy1114; - if (yych <= '"') goto yy1108; - if (yych <= '?') goto yy1117; -yy1116: + if (yych <= 0x1F) goto yy1127; + if (yych <= '"') goto yy1121; + if (yych <= '?') goto yy1130; +yy1129: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '\\') { if (yych <= '>') { if (yych <= '&') { - if (yych == '"') goto yy1112; - goto yy1114; + if (yych == '"') goto yy1125; + goto yy1127; } else { - if (yych <= '\'') goto yy1112; - if (yych <= '/') goto yy1114; - if (yych <= '7') goto yy1112; - goto yy1114; + if (yych <= '\'') goto yy1125; + if (yych <= '/') goto yy1127; + if (yych <= '7') goto yy1125; + goto yy1127; } } else { if (yych <= 'E') { - if (yych <= '?') goto yy1112; - if (yych <= 'D') goto yy1114; - goto yy1112; + if (yych <= '?') goto yy1125; + if (yych <= 'D') goto yy1127; + goto yy1125; } else { - if (yych == 'U') goto yy1119; - if (yych <= '[') goto yy1114; - goto yy1112; + if (yych == 'U') goto yy1132; + if (yych <= '[') goto yy1127; + goto yy1125; } } } else { if (yych <= 'q') { if (yych <= 'd') { - if (yych <= '`') goto yy1114; - if (yych <= 'b') goto yy1112; - goto yy1114; + if (yych <= '`') goto yy1127; + if (yych <= 'b') goto yy1125; + goto yy1127; } else { - if (yych <= 'f') goto yy1112; - if (yych == 'n') goto yy1112; - goto yy1114; + if (yych <= 'f') goto yy1125; + if (yych == 'n') goto yy1125; + goto yy1127; } } else { if (yych <= 'u') { - if (yych == 's') goto yy1114; - if (yych <= 't') goto yy1112; - goto yy1120; + if (yych == 's') goto yy1127; + if (yych <= 't') goto yy1125; + goto yy1133; } else { - if (yych <= 'v') goto yy1112; - if (yych == 'x') goto yy1121; - goto yy1114; + if (yych <= 'v') goto yy1125; + if (yych == 'x') goto yy1134; + goto yy1127; } } } -yy1117: +yy1130: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yybm[0+yych] & 64) { - goto yy1117; + goto yy1130; } if (yych <= '!') { if (yych <= '\n') { - if (yych == '\t') goto yy1112; - goto yy1114; + if (yych == '\t') goto yy1125; + goto yy1127; } else { - if (yych <= '\f') goto yy1112; - if (yych <= 0x1F) goto yy1114; - goto yy1112; + if (yych <= '\f') goto yy1125; + if (yych <= 0x1F) goto yy1127; + goto yy1125; } } else { if (yych <= '/') { - if (yych <= '"') goto yy1108; - if (yych <= '.') goto yy1112; - goto yy1122; + if (yych <= '"') goto yy1121; + if (yych <= '.') goto yy1125; + goto yy1135; } else { - if (yych == '\\') goto yy1116; - goto yy1112; + if (yych == '\\') goto yy1129; + goto yy1125; } } -yy1119: +yy1132: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1114; - if (yych <= '9') goto yy1124; - goto yy1114; + if (yych <= '/') goto yy1127; + if (yych <= '9') goto yy1137; + goto yy1127; } else { - if (yych <= 'F') goto yy1124; - if (yych <= '`') goto yy1114; - if (yych <= 'f') goto yy1124; - goto yy1114; + if (yych <= 'F') goto yy1137; + if (yych <= '`') goto yy1127; + if (yych <= 'f') goto yy1137; + goto yy1127; } -yy1120: +yy1133: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1114; - if (yych <= '9') goto yy1125; - goto yy1114; + if (yych <= '/') goto yy1127; + if (yych <= '9') goto yy1138; + goto yy1127; } else { - if (yych <= 'F') goto yy1125; - if (yych <= '`') goto yy1114; - if (yych <= 'f') goto yy1125; - goto yy1114; + if (yych <= 'F') goto yy1138; + if (yych <= '`') goto yy1127; + if (yych <= 'f') goto yy1138; + goto yy1127; } -yy1121: +yy1134: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1114; - if (yych <= '9') goto yy1112; - goto yy1114; + if (yych <= '/') goto yy1127; + if (yych <= '9') goto yy1125; + goto yy1127; } else { - if (yych <= 'F') goto yy1112; - if (yych <= '`') goto yy1114; - if (yych <= 'f') goto yy1112; - goto yy1114; + if (yych <= 'F') goto yy1125; + if (yych <= '`') goto yy1127; + if (yych <= 'f') goto yy1125; + goto yy1127; } -yy1122: +yy1135: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yybm[0+yych] & 32) { - goto yy1112; + goto yy1125; } - if (yych <= 0x1F) goto yy1114; - if (yych <= '"') goto yy1126; - if (yych <= '?') goto yy1115; - goto yy1122; -yy1124: + if (yych <= 0x1F) goto yy1127; + if (yych <= '"') goto yy1139; + if (yych <= '?') goto yy1128; + goto yy1135; +yy1137: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1114; - if (yych <= '9') goto yy1127; - goto yy1114; + if (yych <= '/') goto yy1127; + if (yych <= '9') goto yy1140; + goto yy1127; } else { - if (yych <= 'F') goto yy1127; - if (yych <= '`') goto yy1114; - if (yych <= 'f') goto yy1127; - goto yy1114; + if (yych <= 'F') goto yy1140; + if (yych <= '`') goto yy1127; + if (yych <= 'f') goto yy1140; + goto yy1127; } -yy1125: +yy1138: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1114; - if (yych <= '9') goto yy1128; - goto yy1114; + if (yych <= '/') goto yy1127; + if (yych <= '9') goto yy1141; + goto yy1127; } else { - if (yych <= 'F') goto yy1128; - if (yych <= '`') goto yy1114; - if (yych <= 'f') goto yy1128; - goto yy1114; + if (yych <= 'F') goto yy1141; + if (yych <= '`') goto yy1127; + if (yych <= 'f') goto yy1141; + goto yy1127; } -yy1126: +yy1139: yyaccept = 1; YYMARKER = ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yybm[0+yych] & 32) { - goto yy1112; + goto yy1125; } - if (yych <= 0x1F) goto yy1109; - if (yych <= '"') goto yy1108; - if (yych <= '?') goto yy1115; - goto yy1116; -yy1127: + if (yych <= 0x1F) goto yy1122; + if (yych <= '"') goto yy1121; + if (yych <= '?') goto yy1128; + goto yy1129; +yy1140: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1114; - if (yych <= '9') goto yy1129; - goto yy1114; + if (yych <= '/') goto yy1127; + if (yych <= '9') goto yy1142; + goto yy1127; } else { - if (yych <= 'F') goto yy1129; - if (yych <= '`') goto yy1114; - if (yych <= 'f') goto yy1129; - goto yy1114; + if (yych <= 'F') goto yy1142; + if (yych <= '`') goto yy1127; + if (yych <= 'f') goto yy1142; + goto yy1127; } -yy1128: +yy1141: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1114; - if (yych <= '9') goto yy1121; - goto yy1114; + if (yych <= '/') goto yy1127; + if (yych <= '9') goto yy1134; + goto yy1127; } else { - if (yych <= 'F') goto yy1121; - if (yych <= '`') goto yy1114; - if (yych <= 'f') goto yy1121; - goto yy1114; + if (yych <= 'F') goto yy1134; + if (yych <= '`') goto yy1127; + if (yych <= 'f') goto yy1134; + goto yy1127; } -yy1129: +yy1142: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1114; - if (yych <= '9') goto yy1120; - goto yy1114; + if (yych <= '/') goto yy1127; + if (yych <= '9') goto yy1133; + goto yy1127; } else { - if (yych <= 'F') goto yy1120; - if (yych <= '`') goto yy1114; - if (yych <= 'f') goto yy1120; - goto yy1114; + if (yych <= 'F') goto yy1133; + if (yych <= '`') goto yy1127; + if (yych <= 'f') goto yy1133; + goto yy1127; } } -#line 546 "cpp.re" +#line 560 "cpp.re" } @@ -7735,30 +7885,30 @@ extrawstringlit: // at this point we may see a delimiter -#line 7739 "cpp_re.inc" +#line 7889 "cpp_re.inc" { YYCTYPE yych; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '(') { - if (yych <= 0x1F) goto yy1132; - if (yych <= '\'') goto yy1134; - goto yy1136; + if (yych <= 0x1F) goto yy1145; + if (yych <= '\'') goto yy1147; + goto yy1149; } else { - if (yych <= ')') goto yy1132; - if (yych != '\\') goto yy1134; + if (yych <= ')') goto yy1145; + if (yych != '\\') goto yy1147; } -yy1132: +yy1145: ++YYCURSOR; -#line 555 "cpp.re" +#line 569 "cpp.re" { (*s->error_proc)(s, lexing_exception::generic_lexing_error, "Invalid character in raw string delimiter ('%c')", yych); } -#line 7759 "cpp_re.inc" -yy1134: +#line 7909 "cpp_re.inc" +yy1147: ++YYCURSOR; -#line 562 "cpp.re" +#line 576 "cpp.re" { rawstringdelim += yych; if (rawstringdelim.size() > 16) @@ -7769,24 +7919,24 @@ yy1134: } goto extrawstringlit; } -#line 7773 "cpp_re.inc" -yy1136: +#line 7923 "cpp_re.inc" +yy1149: ++YYCURSOR; -#line 574 "cpp.re" +#line 588 "cpp.re" { rawstringdelim = ")" + rawstringdelim; goto extrawstringbody; } -#line 7781 "cpp_re.inc" +#line 7931 "cpp_re.inc" } -#line 579 "cpp.re" +#line 593 "cpp.re" } extrawstringbody: { -#line 7790 "cpp_re.inc" +#line 7940 "cpp_re.inc" { YYCTYPE yych; static const unsigned char yybm[] = { @@ -7827,56 +7977,56 @@ extrawstringbody: yych = *YYCURSOR; if (yych <= 0x1F) { if (yych <= '\n') { - if (yych <= 0x08) goto yy1140; - if (yych <= '\t') goto yy1142; - goto yy1144; + if (yych <= 0x08) goto yy1153; + if (yych <= '\t') goto yy1155; + goto yy1157; } else { - if (yych <= '\f') goto yy1142; - if (yych <= '\r') goto yy1146; + if (yych <= '\f') goto yy1155; + if (yych <= '\r') goto yy1159; } } else { if (yych <= '>') { - if (yych == '"') goto yy1147; - goto yy1142; + if (yych == '"') goto yy1160; + goto yy1155; } else { - if (yych <= '?') goto yy1149; - if (yych == '\\') goto yy1150; - goto yy1142; + if (yych <= '?') goto yy1162; + if (yych == '\\') goto yy1163; + goto yy1155; } } -yy1140: +yy1153: ++YYCURSOR; -#line 586 "cpp.re" +#line 600 "cpp.re" { (*s->error_proc)(s, lexing_exception::generic_lexing_error, "Invalid character in raw string body ('%c')", yych); } -#line 7855 "cpp_re.inc" -yy1142: +#line 8005 "cpp_re.inc" +yy1155: ++YYCURSOR; -yy1143: -#line 599 "cpp.re" +yy1156: +#line 613 "cpp.re" { goto extrawstringbody; } -#line 7863 "cpp_re.inc" -yy1144: +#line 8013 "cpp_re.inc" +yy1157: ++YYCURSOR; -yy1145: -#line 592 "cpp.re" +yy1158: +#line 606 "cpp.re" { s->line += count_backslash_newlines(s, cursor) +1; cursor.column = 1; goto extrawstringbody; } -#line 7873 "cpp_re.inc" -yy1146: +#line 8023 "cpp_re.inc" +yy1159: yych = *++YYCURSOR; - if (yych == '\n') goto yy1144; - goto yy1145; -yy1147: + if (yych == '\n') goto yy1157; + goto yy1158; +yy1160: ++YYCURSOR; -#line 604 "cpp.re" +#line 618 "cpp.re" { // check to see if we have completed a delimiter if (string_type((char *)(YYCURSOR - rawstringdelim.size() - 1), @@ -7887,240 +8037,240 @@ yy1147: goto extrawstringbody; } } -#line 7891 "cpp_re.inc" -yy1149: +#line 8041 "cpp_re.inc" +yy1162: yych = *(YYMARKER = ++YYCURSOR); - if (yych == '?') goto yy1151; - goto yy1143; -yy1150: + if (yych == '?') goto yy1164; + goto yy1156; +yy1163: yych = *(YYMARKER = ++YYCURSOR); if (yych <= '\\') { if (yych <= '>') { if (yych <= '&') { - if (yych == '"') goto yy1142; - goto yy1143; + if (yych == '"') goto yy1155; + goto yy1156; } else { - if (yych <= '\'') goto yy1142; - if (yych <= '/') goto yy1143; - if (yych <= '7') goto yy1153; - goto yy1143; + if (yych <= '\'') goto yy1155; + if (yych <= '/') goto yy1156; + if (yych <= '7') goto yy1166; + goto yy1156; } } else { if (yych <= 'E') { - if (yych <= '?') goto yy1154; - if (yych <= 'D') goto yy1143; - goto yy1142; + if (yych <= '?') goto yy1167; + if (yych <= 'D') goto yy1156; + goto yy1155; } else { - if (yych == 'U') goto yy1155; - if (yych <= '[') goto yy1143; - goto yy1142; + if (yych == 'U') goto yy1168; + if (yych <= '[') goto yy1156; + goto yy1155; } } } else { if (yych <= 'q') { if (yych <= 'd') { - if (yych <= '`') goto yy1143; - if (yych <= 'b') goto yy1142; - goto yy1143; + if (yych <= '`') goto yy1156; + if (yych <= 'b') goto yy1155; + goto yy1156; } else { - if (yych <= 'f') goto yy1142; - if (yych == 'n') goto yy1142; - goto yy1143; + if (yych <= 'f') goto yy1155; + if (yych == 'n') goto yy1155; + goto yy1156; } } else { if (yych <= 'u') { - if (yych == 's') goto yy1143; - if (yych <= 't') goto yy1142; - goto yy1156; + if (yych == 's') goto yy1156; + if (yych <= 't') goto yy1155; + goto yy1169; } else { - if (yych <= 'v') goto yy1142; - if (yych == 'x') goto yy1157; - goto yy1143; + if (yych <= 'v') goto yy1155; + if (yych == 'x') goto yy1170; + goto yy1156; } } } -yy1151: +yy1164: yych = *++YYCURSOR; - if (yych == '/') goto yy1158; -yy1152: + if (yych == '/') goto yy1171; +yy1165: YYCURSOR = YYMARKER; - goto yy1143; -yy1153: + goto yy1156; +yy1166: yych = *++YYCURSOR; - if (yych <= '/') goto yy1143; - if (yych <= '7') goto yy1159; - goto yy1143; -yy1154: + if (yych <= '/') goto yy1156; + if (yych <= '7') goto yy1172; + goto yy1156; +yy1167: yych = *(YYMARKER = ++YYCURSOR); - if (yych == '?') goto yy1160; - goto yy1143; -yy1155: + if (yych == '?') goto yy1173; + goto yy1156; +yy1168: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1152; - if (yych <= '9') goto yy1161; - goto yy1152; + if (yych <= '/') goto yy1165; + if (yych <= '9') goto yy1174; + goto yy1165; } else { - if (yych <= 'F') goto yy1161; - if (yych <= '`') goto yy1152; - if (yych <= 'f') goto yy1161; - goto yy1152; + if (yych <= 'F') goto yy1174; + if (yych <= '`') goto yy1165; + if (yych <= 'f') goto yy1174; + goto yy1165; } -yy1156: +yy1169: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1152; - if (yych <= '9') goto yy1162; - goto yy1152; + if (yych <= '/') goto yy1165; + if (yych <= '9') goto yy1175; + goto yy1165; } else { - if (yych <= 'F') goto yy1162; - if (yych <= '`') goto yy1152; - if (yych <= 'f') goto yy1162; - goto yy1152; + if (yych <= 'F') goto yy1175; + if (yych <= '`') goto yy1165; + if (yych <= 'f') goto yy1175; + goto yy1165; } -yy1157: +yy1170: yych = *++YYCURSOR; if (yybm[0+yych] & 128) { - goto yy1163; + goto yy1176; } - goto yy1152; -yy1158: + goto yy1165; +yy1171: yych = *++YYCURSOR; if (yych <= '\\') { if (yych <= '>') { if (yych <= '&') { - if (yych == '"') goto yy1142; - goto yy1152; + if (yych == '"') goto yy1155; + goto yy1165; } else { - if (yych <= '\'') goto yy1142; - if (yych <= '/') goto yy1152; - if (yych <= '7') goto yy1153; - goto yy1152; + if (yych <= '\'') goto yy1155; + if (yych <= '/') goto yy1165; + if (yych <= '7') goto yy1166; + goto yy1165; } } else { if (yych <= 'E') { - if (yych <= '?') goto yy1154; - if (yych <= 'D') goto yy1152; - goto yy1142; + if (yych <= '?') goto yy1167; + if (yych <= 'D') goto yy1165; + goto yy1155; } else { - if (yych == 'U') goto yy1155; - if (yych <= '[') goto yy1152; - goto yy1142; + if (yych == 'U') goto yy1168; + if (yych <= '[') goto yy1165; + goto yy1155; } } } else { if (yych <= 'q') { if (yych <= 'd') { - if (yych <= '`') goto yy1152; - if (yych <= 'b') goto yy1142; - goto yy1152; + if (yych <= '`') goto yy1165; + if (yych <= 'b') goto yy1155; + goto yy1165; } else { - if (yych <= 'f') goto yy1142; - if (yych == 'n') goto yy1142; - goto yy1152; + if (yych <= 'f') goto yy1155; + if (yych == 'n') goto yy1155; + goto yy1165; } } else { if (yych <= 'u') { - if (yych == 's') goto yy1152; - if (yych <= 't') goto yy1142; - goto yy1156; + if (yych == 's') goto yy1165; + if (yych <= 't') goto yy1155; + goto yy1169; } else { - if (yych <= 'v') goto yy1142; - if (yych == 'x') goto yy1157; - goto yy1152; + if (yych <= 'v') goto yy1155; + if (yych == 'x') goto yy1170; + goto yy1165; } } } -yy1159: +yy1172: yych = *++YYCURSOR; - if (yych <= '/') goto yy1143; - if (yych <= '7') goto yy1142; - goto yy1143; -yy1160: + if (yych <= '/') goto yy1156; + if (yych <= '7') goto yy1155; + goto yy1156; +yy1173: yych = *++YYCURSOR; - if (yych == '/') goto yy1142; - goto yy1152; -yy1161: + if (yych == '/') goto yy1155; + goto yy1165; +yy1174: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1152; - if (yych <= '9') goto yy1165; - goto yy1152; + if (yych <= '/') goto yy1165; + if (yych <= '9') goto yy1178; + goto yy1165; } else { - if (yych <= 'F') goto yy1165; - if (yych <= '`') goto yy1152; - if (yych <= 'f') goto yy1165; - goto yy1152; + if (yych <= 'F') goto yy1178; + if (yych <= '`') goto yy1165; + if (yych <= 'f') goto yy1178; + goto yy1165; } -yy1162: +yy1175: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1152; - if (yych <= '9') goto yy1166; - goto yy1152; + if (yych <= '/') goto yy1165; + if (yych <= '9') goto yy1179; + goto yy1165; } else { - if (yych <= 'F') goto yy1166; - if (yych <= '`') goto yy1152; - if (yych <= 'f') goto yy1166; - goto yy1152; + if (yych <= 'F') goto yy1179; + if (yych <= '`') goto yy1165; + if (yych <= 'f') goto yy1179; + goto yy1165; } -yy1163: +yy1176: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yybm[0+yych] & 128) { - goto yy1163; + goto yy1176; } - goto yy1143; -yy1165: + goto yy1156; +yy1178: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1152; - if (yych <= '9') goto yy1167; - goto yy1152; + if (yych <= '/') goto yy1165; + if (yych <= '9') goto yy1180; + goto yy1165; } else { - if (yych <= 'F') goto yy1167; - if (yych <= '`') goto yy1152; - if (yych <= 'f') goto yy1167; - goto yy1152; + if (yych <= 'F') goto yy1180; + if (yych <= '`') goto yy1165; + if (yych <= 'f') goto yy1180; + goto yy1165; } -yy1166: +yy1179: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1152; - if (yych <= '9') goto yy1168; - goto yy1152; + if (yych <= '/') goto yy1165; + if (yych <= '9') goto yy1181; + goto yy1165; } else { - if (yych <= 'F') goto yy1168; - if (yych <= '`') goto yy1152; - if (yych <= 'f') goto yy1168; - goto yy1152; + if (yych <= 'F') goto yy1181; + if (yych <= '`') goto yy1165; + if (yych <= 'f') goto yy1181; + goto yy1165; } -yy1167: +yy1180: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1152; - if (yych <= '9') goto yy1156; - goto yy1152; + if (yych <= '/') goto yy1165; + if (yych <= '9') goto yy1169; + goto yy1165; } else { - if (yych <= 'F') goto yy1156; - if (yych <= '`') goto yy1152; - if (yych <= 'f') goto yy1156; - goto yy1152; + if (yych <= 'F') goto yy1169; + if (yych <= '`') goto yy1165; + if (yych <= 'f') goto yy1169; + goto yy1165; } -yy1168: +yy1181: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1152; - if (yych <= '9') goto yy1142; - goto yy1152; + if (yych <= '/') goto yy1165; + if (yych <= '9') goto yy1155; + goto yy1165; } else { - if (yych <= 'F') goto yy1142; - if (yych <= '`') goto yy1152; - if (yych <= 'f') goto yy1142; - goto yy1152; + if (yych <= 'F') goto yy1155; + if (yych <= '`') goto yy1165; + if (yych <= 'f') goto yy1155; + goto yy1165; } } -#line 614 "cpp.re" +#line 628 "cpp.re" } diff --git a/include/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp b/include/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp index 8125366c6..12aeecdce 100644 --- a/include/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp +++ b/include/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp @@ -160,6 +160,17 @@ lexer::lexer(IteratorT const &first, #else scanner.act_in_cpp2a_mode = false; #endif + +#if BOOST_WAVE_SUPPORT_CPP2B != 0 + scanner.act_in_cpp2b_mode = boost::wave::need_cpp2b(language_); + scanner.act_in_cpp2a_mode = boost::wave::need_cpp2b(language_) + || boost::wave::need_cpp2a(language_); + scanner.act_in_cpp0x_mode = boost::wave::need_cpp2b(language_) + || boost::wave::need_cpp2a(language_) + || boost::wave::need_cpp0x(language_); +#else + scanner.act_in_cpp2b_mode = false; +#endif } template @@ -234,6 +245,7 @@ lexer::get(TokenT& result) case T_DECIMALINT: case T_HEXAINT: case T_INTLIT: + case T_SIZETLIT: case T_FLOATLIT: case T_FIXEDPOINTLIT: case T_CCOMMENT: diff --git a/include/boost/wave/cpplexer/re2clex/scanner.hpp b/include/boost/wave/cpplexer/re2clex/scanner.hpp index 81e5428c9..f095f5770 100644 --- a/include/boost/wave/cpplexer/re2clex/scanner.hpp +++ b/include/boost/wave/cpplexer/re2clex/scanner.hpp @@ -75,6 +75,7 @@ struct Scanner { bool single_line_only; /* don't report missing eol's in C++ comments */ bool act_in_cpp0x_mode; /* lexer works in C++11 mode */ bool act_in_cpp2a_mode; /* lexer works in C++20 mode */ + bool act_in_cpp2b_mode; /* lexer works in C++23 mode */ }; /////////////////////////////////////////////////////////////////////////////// diff --git a/include/boost/wave/cpplexer/re2clex/strict_cpp.re b/include/boost/wave/cpplexer/re2clex/strict_cpp.re index b9e84ed31..f183fb117 100644 --- a/include/boost/wave/cpplexer/re2clex/strict_cpp.re +++ b/include/boost/wave/cpplexer/re2clex/strict_cpp.re @@ -22,13 +22,16 @@ anyctrl = [\001-\037]; OctalDigit = [0-7]; Digit = [0-9]; HexDigit = [a-fA-F0-9]; -Integer = (("0" [xX] HexDigit+) | ("0" OctalDigit*) | ([1-9] Digit*)); +BinaryDigit = [01]; +Integer = (("0" [xX] HexDigit ([']? HexDigit)*) | ("0" ([']? OctalDigit)*) | ([1-9] ([']? Digit)*) | ("0" [bB] BinaryDigit ([']? BinaryDigit)*)); ExponentStart = [Ee] [+-]; -ExponentPart = [Ee] [+-]? Digit+; -FractionalConstant = (Digit* "." Digit+) | (Digit+ "."); +SeparatedDigits = Digit ([']? Digit)*; +ExponentPart = [Ee] [+-]? SeparatedDigits; +FractionalConstant = (SeparatedDigits? "." SeparatedDigits) | (SeparatedDigits "."); FloatingSuffix = [fF] [lL]? | [lL] [fF]?; IntegerSuffix = [uU] [lL]? | [lL] [uU]?; LongIntegerSuffix = [uU] ("ll" | "LL") | ("ll" | "LL") [uU]?; +SizeTSuffix = ([uU]? [zZ]) | ([zZ] [uU]?); Backslash = [\\] | "??/"; EscapeSequence = Backslash ([abfnrtv?'"] | Backslash | "x" HexDigit+ | OctalDigit OctalDigit? OctalDigit?); HexQuad = HexDigit HexDigit HexDigit HexDigit; @@ -88,6 +91,7 @@ NonDigit = [a-zA-Z_] | UniversalChar; "inline" { BOOST_WAVE_RET(T_INLINE); } "int" { BOOST_WAVE_RET(T_INT); } "long" { BOOST_WAVE_RET(T_LONG); } + "module" { BOOST_WAVE_RET(s->act_in_cpp2a_mode ? T_MODULE : T_IDENTIFIER); } "mutable" { BOOST_WAVE_RET(T_MUTABLE); } "namespace" { BOOST_WAVE_RET(T_NAMESPACE); } "new" { BOOST_WAVE_RET(T_NEW); } @@ -484,24 +488,34 @@ pp_number: /* this subscanner is called, whenever an Integer was recognized */ integer_suffix: { - if (s->enable_ms_extensions) { + auto suffix_start = YYCURSOR; + /*!re2c - LongIntegerSuffix | "i64" - { BOOST_WAVE_RET(T_LONGINTLIT); } + LongIntegerSuffix + { BOOST_WAVE_RET(T_LONGINTLIT); } + + "i64" { + if (s->enable_ms_extensions) { + BOOST_WAVE_RET(T_LONGINTLIT); + } else { + YYCURSOR = suffix_start; + BOOST_WAVE_RET(T_INTLIT); + } + } - IntegerSuffix? - { BOOST_WAVE_RET(T_INTLIT); } - */ + SizeTSuffix { + if (s->act_in_cpp2b_mode) { + BOOST_WAVE_RET(T_SIZETLIT); + } else { + YYCURSOR = suffix_start; + BOOST_WAVE_RET(T_INTLIT); + } } - else { - /*!re2c - LongIntegerSuffix - { BOOST_WAVE_RET(T_LONGINTLIT); } - IntegerSuffix? - { BOOST_WAVE_RET(T_INTLIT); } + IntegerSuffix? + { BOOST_WAVE_RET(T_INTLIT); } + */ - } // re2c will complain about -Wmatch-empty-string above // it's OK because we've already matched an integer diff --git a/include/boost/wave/cpplexer/re2clex/strict_cpp_re.inc b/include/boost/wave/cpplexer/re2clex/strict_cpp_re.inc index 797baf775..d7665768b 100644 --- a/include/boost/wave/cpplexer/re2clex/strict_cpp_re.inc +++ b/include/boost/wave/cpplexer/re2clex/strict_cpp_re.inc @@ -1,4 +1,4 @@ -/* Generated by re2c 1.0.2 on Sat Oct 24 21:16:00 2020 */ +/* Generated by re2c 1.0.2 on Sun Oct 26 21:28:07 2025 */ #line 1 "strict_cpp.re" /*============================================================================= Boost.Wave: A Standard compliant C++ preprocessor library @@ -17,7 +17,7 @@ handle errors better. =============================================================================*/ -#line 40 "strict_cpp.re" +#line 43 "strict_cpp.re" @@ -227,7 +227,7 @@ } yy2: ++YYCURSOR; -#line 353 "strict_cpp.re" +#line 357 "strict_cpp.re" { if (s->eof && cursor != s->eof) { @@ -240,7 +240,7 @@ yy2: #line 241 "strict_cpp_re.inc" yy4: ++YYCURSOR; -#line 366 "strict_cpp.re" +#line 370 "strict_cpp.re" { // flag the error BOOST_WAVE_UPDATE_CURSOR(); // adjust the input cursor @@ -255,13 +255,13 @@ yy6: if (yybm[256+yych] & 64) { goto yy6; } -#line 343 "strict_cpp.re" +#line 347 "strict_cpp.re" { BOOST_WAVE_RET(T_SPACE); } #line 261 "strict_cpp_re.inc" yy9: ++YYCURSOR; yy10: -#line 346 "strict_cpp.re" +#line 350 "strict_cpp.re" { s->line++; cursor.column = 1; @@ -275,7 +275,7 @@ yy11: yy12: yych = *++YYCURSOR; if (yych == '=') goto yy96; -#line 209 "strict_cpp.re" +#line 213 "strict_cpp.re" { BOOST_WAVE_RET(T_NOT); } #line 281 "strict_cpp_re.inc" yy14: @@ -288,7 +288,7 @@ yy14: if (yych >= ' ') goto yy99; } yy15: -#line 363 "strict_cpp.re" +#line 367 "strict_cpp.re" { BOOST_WAVE_RET(TOKEN_FROM_ID(*s->tok, UnknownTokenType)); } #line 294 "strict_cpp_re.inc" yy16: @@ -329,7 +329,7 @@ yy16: } } yy17: -#line 158 "strict_cpp.re" +#line 162 "strict_cpp.re" { BOOST_WAVE_RET(T_POUND); } #line 335 "strict_cpp_re.inc" yy18: @@ -343,14 +343,14 @@ yy19: if (yych <= '=') goto yy121; if (yych <= '>') goto yy123; } -#line 197 "strict_cpp.re" +#line 201 "strict_cpp.re" { BOOST_WAVE_RET(T_PERCENT); } #line 349 "strict_cpp_re.inc" yy21: yych = *++YYCURSOR; if (yych == '&') goto yy125; if (yych == '=') goto yy127; -#line 201 "strict_cpp.re" +#line 205 "strict_cpp.re" { BOOST_WAVE_RET(T_AND); } #line 356 "strict_cpp_re.inc" yy23: @@ -367,30 +367,30 @@ yy23: } yy24: ++YYCURSOR; -#line 166 "strict_cpp.re" +#line 170 "strict_cpp.re" { BOOST_WAVE_RET(T_LEFTPAREN); } #line 373 "strict_cpp_re.inc" yy26: ++YYCURSOR; -#line 167 "strict_cpp.re" +#line 171 "strict_cpp.re" { BOOST_WAVE_RET(T_RIGHTPAREN); } #line 378 "strict_cpp_re.inc" yy28: yych = *++YYCURSOR; if (yych == '=') goto yy133; -#line 195 "strict_cpp.re" +#line 199 "strict_cpp.re" { BOOST_WAVE_RET(T_STAR); } #line 384 "strict_cpp_re.inc" yy30: yych = *++YYCURSOR; if (yych == '+') goto yy135; if (yych == '=') goto yy137; -#line 193 "strict_cpp.re" +#line 197 "strict_cpp.re" { BOOST_WAVE_RET(T_PLUS); } #line 391 "strict_cpp_re.inc" yy32: ++YYCURSOR; -#line 255 "strict_cpp.re" +#line 259 "strict_cpp.re" { BOOST_WAVE_RET(T_COMMA); } #line 396 "strict_cpp_re.inc" yy34: @@ -401,7 +401,7 @@ yy34: if (yych <= '=') goto yy141; if (yych <= '>') goto yy143; } -#line 194 "strict_cpp.re" +#line 198 "strict_cpp.re" { BOOST_WAVE_RET(T_MINUS); } #line 407 "strict_cpp_re.inc" yy36: @@ -415,7 +415,7 @@ yy36: if (yych <= '9') goto yy40; } yy37: -#line 182 "strict_cpp.re" +#line 186 "strict_cpp.re" { BOOST_WAVE_RET(T_DOT); } #line 421 "strict_cpp_re.inc" yy38: @@ -426,24 +426,24 @@ yy38: if (yych <= '/') goto yy150; if (yych == '=') goto yy152; } -#line 196 "strict_cpp.re" +#line 200 "strict_cpp.re" { BOOST_WAVE_RET(T_DIVIDE); } #line 432 "strict_cpp_re.inc" yy40: ++YYCURSOR; -#line 45 "strict_cpp.re" +#line 48 "strict_cpp.re" { goto pp_number; } #line 437 "strict_cpp_re.inc" yy42: yych = *++YYCURSOR; if (yych == ':') goto yy154; if (yych == '>') goto yy156; -#line 169 "strict_cpp.re" +#line 173 "strict_cpp.re" { BOOST_WAVE_RET(T_COLON); } #line 444 "strict_cpp_re.inc" yy44: ++YYCURSOR; -#line 168 "strict_cpp.re" +#line 172 "strict_cpp.re" { BOOST_WAVE_RET(T_SEMICOLON); } #line 449 "strict_cpp_re.inc" yy46: @@ -457,13 +457,13 @@ yy46: if (yych <= '=') goto yy164; } yy47: -#line 212 "strict_cpp.re" +#line 216 "strict_cpp.re" { BOOST_WAVE_RET(T_LESS); } #line 463 "strict_cpp_re.inc" yy48: yych = *++YYCURSOR; if (yych == '=') goto yy166; -#line 211 "strict_cpp.re" +#line 215 "strict_cpp.re" { BOOST_WAVE_RET(T_ASSIGN); } #line 469 "strict_cpp_re.inc" yy50: @@ -472,7 +472,7 @@ yy50: if (yych <= '=') goto yy168; if (yych <= '>') goto yy170; yy51: -#line 213 "strict_cpp.re" +#line 217 "strict_cpp.re" { BOOST_WAVE_RET(T_GREATER); } #line 478 "strict_cpp_re.inc" yy52: @@ -480,7 +480,7 @@ yy52: yych = *(YYMARKER = ++YYCURSOR); if (yych == '?') goto yy172; yy53: -#line 171 "strict_cpp.re" +#line 175 "strict_cpp.re" { BOOST_WAVE_RET(T_QUESTION_MARK); } #line 486 "strict_cpp_re.inc" yy54: @@ -495,7 +495,7 @@ yy55: if (yych == '?') goto yy173; if (yych == '\\') goto yy174; yy56: -#line 314 "strict_cpp.re" +#line 318 "strict_cpp.re" { BOOST_WAVE_RET(T_IDENTIFIER); } #line 501 "strict_cpp_re.inc" yy57: @@ -526,7 +526,7 @@ yy59: } yy60: ++YYCURSOR; -#line 152 "strict_cpp.re" +#line 156 "strict_cpp.re" { BOOST_WAVE_RET(T_LEFTBRACKET); } #line 532 "strict_cpp_re.inc" yy62: @@ -537,13 +537,13 @@ yy62: goto yy15; yy63: ++YYCURSOR; -#line 155 "strict_cpp.re" +#line 159 "strict_cpp.re" { BOOST_WAVE_RET(T_RIGHTBRACKET); } #line 543 "strict_cpp_re.inc" yy65: yych = *++YYCURSOR; if (yych == '=') goto yy185; -#line 198 "strict_cpp.re" +#line 202 "strict_cpp.re" { BOOST_WAVE_RET(T_XOR); } #line 549 "strict_cpp_re.inc" yy67: @@ -647,56 +647,57 @@ yy76: yy77: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'u') goto yy223; + if (yych == 'o') goto yy223; + if (yych == 'u') goto yy224; goto yy55; yy78: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); switch (yych) { - case 'a': goto yy224; - case 'e': goto yy225; - case 'o': goto yy226; - case 'u': goto yy227; + case 'a': goto yy225; + case 'e': goto yy226; + case 'o': goto yy227; + case 'u': goto yy228; default: goto yy55; } yy79: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'p') goto yy228; - if (yych == 'r') goto yy229; + if (yych == 'p') goto yy229; + if (yych == 'r') goto yy230; goto yy55; yy80: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy231; - if (yych == 'u') goto yy232; + if (yych == 'r') goto yy232; + if (yych == 'u') goto yy233; goto yy55; yy81: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy233; + if (yych == 'e') goto yy234; goto yy55; yy82: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); if (yych <= 's') { if (yych <= 'g') goto yy55; - if (yych <= 'h') goto yy234; - if (yych <= 'i') goto yy235; + if (yych <= 'h') goto yy235; + if (yych <= 'i') goto yy236; goto yy55; } else { - if (yych <= 't') goto yy236; - if (yych == 'w') goto yy237; + if (yych <= 't') goto yy237; + if (yych == 'w') goto yy238; goto yy55; } yy83: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); switch (yych) { - case 'e': goto yy238; - case 'h': goto yy239; - case 'r': goto yy240; - case 'y': goto yy241; + case 'e': goto yy239; + case 'h': goto yy240; + case 'r': goto yy241; + case 'y': goto yy242; default: goto yy55; } yy84: @@ -709,68 +710,68 @@ yy84: } else { if (yych <= '\'') goto yy180; if (yych <= '7') goto yy55; - goto yy242; + goto yy243; } } else { if (yych <= 'm') { if (yych == 'R') goto yy182; goto yy55; } else { - if (yych <= 'n') goto yy243; - if (yych == 's') goto yy244; + if (yych <= 'n') goto yy244; + if (yych == 's') goto yy245; goto yy55; } } yy85: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy245; - if (yych == 'o') goto yy246; + if (yych == 'i') goto yy246; + if (yych == 'o') goto yy247; goto yy55; yy86: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'c') goto yy247; - if (yych == 'h') goto yy248; + if (yych == 'c') goto yy248; + if (yych == 'h') goto yy249; goto yy55; yy87: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'o') goto yy249; + if (yych == 'o') goto yy250; goto yy55; yy88: ++YYCURSOR; -#line 146 "strict_cpp.re" +#line 150 "strict_cpp.re" { BOOST_WAVE_RET(T_LEFTBRACE); } -#line 746 "strict_cpp_re.inc" +#line 747 "strict_cpp_re.inc" yy90: yyaccept = 5; yych = *(YYMARKER = ++YYCURSOR); if (yych <= '>') { - if (yych == '=') goto yy250; + if (yych == '=') goto yy251; } else { - if (yych <= '?') goto yy252; - if (yych == '|') goto yy253; + if (yych <= '?') goto yy253; + if (yych == '|') goto yy254; } yy91: -#line 203 "strict_cpp.re" +#line 207 "strict_cpp.re" { BOOST_WAVE_RET(T_OR); } -#line 759 "strict_cpp_re.inc" +#line 760 "strict_cpp_re.inc" yy92: ++YYCURSOR; -#line 149 "strict_cpp.re" +#line 153 "strict_cpp.re" { BOOST_WAVE_RET(T_RIGHTBRACE); } -#line 764 "strict_cpp_re.inc" +#line 765 "strict_cpp_re.inc" yy94: ++YYCURSOR; -#line 206 "strict_cpp.re" +#line 210 "strict_cpp.re" { BOOST_WAVE_RET(T_COMPL); } -#line 769 "strict_cpp_re.inc" +#line 770 "strict_cpp_re.inc" yy96: ++YYCURSOR; -#line 232 "strict_cpp.re" +#line 236 "strict_cpp.re" { BOOST_WAVE_RET(T_NOTEQUAL); } -#line 774 "strict_cpp_re.inc" +#line 775 "strict_cpp_re.inc" yy98: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); @@ -785,7 +786,7 @@ yy99: goto yy104; yy100: YYCURSOR = YYMARKER; - if (yyaccept <= 60) { + if (yyaccept <= 61) { if (yyaccept <= 30) { if (yyaccept <= 15) { if (yyaccept <= 7) { @@ -824,27 +825,27 @@ yy100: if (yyaccept == 8) { goto yy219; } else { - goto yy230; + goto yy231; } } else { if (yyaccept == 10) { - goto yy268; + goto yy269; } else { - goto yy294; + goto yy295; } } } else { if (yyaccept <= 13) { if (yyaccept == 12) { - goto yy304; + goto yy305; } else { - goto yy308; + goto yy309; } } else { if (yyaccept == 14) { - goto yy330; + goto yy331; } else { - goto yy332; + goto yy333; } } } @@ -854,29 +855,29 @@ yy100: if (yyaccept <= 19) { if (yyaccept <= 17) { if (yyaccept == 16) { - goto yy356; + goto yy357; } else { - goto yy362; + goto yy363; } } else { if (yyaccept == 18) { - goto yy367; + goto yy369; } else { - goto yy370; + goto yy372; } } } else { if (yyaccept <= 21) { if (yyaccept == 20) { - goto yy392; + goto yy394; } else { - goto yy403; + goto yy405; } } else { if (yyaccept == 22) { - goto yy450; + goto yy452; } else { - goto yy460; + goto yy462; } } } @@ -884,43 +885,43 @@ yy100: if (yyaccept <= 27) { if (yyaccept <= 25) { if (yyaccept == 24) { - goto yy464; + goto yy466; } else { - goto yy467; + goto yy469; } } else { if (yyaccept == 26) { - goto yy470; + goto yy472; } else { - goto yy485; + goto yy487; } } } else { if (yyaccept <= 29) { if (yyaccept == 28) { - goto yy487; + goto yy489; } else { - goto yy495; + goto yy497; } } else { - goto yy499; + goto yy501; } } } } } else { - if (yyaccept <= 45) { + if (yyaccept <= 46) { if (yyaccept <= 38) { if (yyaccept <= 34) { if (yyaccept <= 32) { if (yyaccept == 31) { - goto yy522; + goto yy525; } else { - goto yy526; + goto yy529; } } else { if (yyaccept == 33) { - goto yy533; + goto yy536; } else { goto yy102; } @@ -928,15 +929,15 @@ yy100: } else { if (yyaccept <= 36) { if (yyaccept == 35) { - goto yy277; + goto yy278; } else { - goto yy572; + goto yy575; } } else { if (yyaccept == 37) { - goto yy583; + goto yy586; } else { - goto yy585; + goto yy588; } } } @@ -944,326 +945,330 @@ yy100: if (yyaccept <= 42) { if (yyaccept <= 40) { if (yyaccept == 39) { - goto yy587; + goto yy590; } else { - goto yy592; + goto yy595; } } else { if (yyaccept == 41) { - goto yy597; - } else { goto yy600; + } else { + goto yy603; } } } else { if (yyaccept <= 44) { if (yyaccept == 43) { - goto yy611; + goto yy614; } else { - goto yy613; + goto yy616; } } else { - goto yy624; + if (yyaccept == 45) { + goto yy628; + } else { + goto yy637; + } } } } } else { - if (yyaccept <= 53) { - if (yyaccept <= 49) { - if (yyaccept <= 47) { - if (yyaccept == 46) { - goto yy633; + if (yyaccept <= 54) { + if (yyaccept <= 50) { + if (yyaccept <= 48) { + if (yyaccept == 47) { + goto yy646; } else { - goto yy642; + goto yy651; } } else { - if (yyaccept == 48) { - goto yy647; + if (yyaccept == 49) { + goto yy654; } else { - goto yy650; + goto yy659; } } } else { - if (yyaccept <= 51) { - if (yyaccept == 50) { - goto yy655; + if (yyaccept <= 52) { + if (yyaccept == 51) { + goto yy688; } else { - goto yy684; + goto yy691; } } else { - if (yyaccept == 52) { - goto yy687; + if (yyaccept == 53) { + goto yy693; } else { - goto yy689; + goto yy701; } } } } else { - if (yyaccept <= 57) { - if (yyaccept <= 55) { - if (yyaccept == 54) { - goto yy697; + if (yyaccept <= 58) { + if (yyaccept <= 56) { + if (yyaccept == 55) { + goto yy703; } else { - goto yy699; + goto yy718; } } else { - if (yyaccept == 56) { - goto yy714; + if (yyaccept == 57) { + goto yy720; } else { - goto yy716; + goto yy724; } } } else { - if (yyaccept <= 59) { - if (yyaccept == 58) { - goto yy720; + if (yyaccept <= 60) { + if (yyaccept == 59) { + goto yy726; } else { - goto yy722; + goto yy728; } } else { - goto yy724; + goto yy730; } } } } } } else { - if (yyaccept <= 91) { - if (yyaccept <= 76) { - if (yyaccept <= 68) { - if (yyaccept <= 64) { - if (yyaccept <= 62) { - if (yyaccept == 61) { - goto yy726; + if (yyaccept <= 92) { + if (yyaccept <= 77) { + if (yyaccept <= 69) { + if (yyaccept <= 65) { + if (yyaccept <= 63) { + if (yyaccept == 62) { + goto yy732; } else { - goto yy728; + goto yy734; } } else { - if (yyaccept == 63) { - goto yy733; - } else { + if (yyaccept == 64) { goto yy739; + } else { + goto yy745; } } } else { - if (yyaccept <= 66) { - if (yyaccept == 65) { - goto yy744; + if (yyaccept <= 67) { + if (yyaccept == 66) { + goto yy750; } else { - goto yy746; + goto yy752; } } else { - if (yyaccept == 67) { - goto yy748; + if (yyaccept == 68) { + goto yy754; } else { - goto yy750; + goto yy756; } } } } else { - if (yyaccept <= 72) { - if (yyaccept <= 70) { - if (yyaccept == 69) { - goto yy752; + if (yyaccept <= 73) { + if (yyaccept <= 71) { + if (yyaccept == 70) { + goto yy758; } else { - goto yy754; + goto yy760; } } else { - if (yyaccept == 71) { - goto yy759; + if (yyaccept == 72) { + goto yy765; } else { - goto yy766; + goto yy772; } } } else { - if (yyaccept <= 74) { - if (yyaccept == 73) { - goto yy781; + if (yyaccept <= 75) { + if (yyaccept == 74) { + goto yy787; } else { - goto yy783; + goto yy789; } } else { - if (yyaccept == 75) { - goto yy785; + if (yyaccept == 76) { + goto yy791; } else { - goto yy787; + goto yy793; } } } } } else { - if (yyaccept <= 84) { - if (yyaccept <= 80) { - if (yyaccept <= 78) { - if (yyaccept == 77) { - goto yy791; + if (yyaccept <= 85) { + if (yyaccept <= 81) { + if (yyaccept <= 79) { + if (yyaccept == 78) { + goto yy797; } else { - goto yy794; + goto yy800; } } else { - if (yyaccept == 79) { - goto yy796; + if (yyaccept == 80) { + goto yy802; } else { - goto yy800; + goto yy806; } } } else { - if (yyaccept <= 82) { - if (yyaccept == 81) { - goto yy805; + if (yyaccept <= 83) { + if (yyaccept == 82) { + goto yy811; } else { - goto yy813; + goto yy819; } } else { - if (yyaccept == 83) { - goto yy817; + if (yyaccept == 84) { + goto yy823; } else { - goto yy821; + goto yy827; } } } } else { - if (yyaccept <= 88) { - if (yyaccept <= 86) { - if (yyaccept == 85) { - goto yy824; + if (yyaccept <= 89) { + if (yyaccept <= 87) { + if (yyaccept == 86) { + goto yy830; } else { - goto yy833; + goto yy839; } } else { - if (yyaccept == 87) { - goto yy837; + if (yyaccept == 88) { + goto yy843; } else { - goto yy840; + goto yy846; } } } else { - if (yyaccept <= 90) { - if (yyaccept == 89) { - goto yy843; + if (yyaccept <= 91) { + if (yyaccept == 90) { + goto yy849; } else { - goto yy847; + goto yy853; } } else { - goto yy852; + goto yy858; } } } } } else { - if (yyaccept <= 106) { - if (yyaccept <= 99) { - if (yyaccept <= 95) { - if (yyaccept <= 93) { - if (yyaccept == 92) { - goto yy854; + if (yyaccept <= 107) { + if (yyaccept <= 100) { + if (yyaccept <= 96) { + if (yyaccept <= 94) { + if (yyaccept == 93) { + goto yy860; } else { - goto yy856; + goto yy862; } } else { - if (yyaccept == 94) { - goto yy858; + if (yyaccept == 95) { + goto yy864; } else { - goto yy861; + goto yy867; } } } else { - if (yyaccept <= 97) { - if (yyaccept == 96) { - goto yy867; + if (yyaccept <= 98) { + if (yyaccept == 97) { + goto yy873; } else { - goto yy869; + goto yy875; } } else { - if (yyaccept == 98) { - goto yy872; + if (yyaccept == 99) { + goto yy878; } else { - goto yy875; + goto yy881; } } } } else { - if (yyaccept <= 103) { - if (yyaccept <= 101) { - if (yyaccept == 100) { - goto yy877; + if (yyaccept <= 104) { + if (yyaccept <= 102) { + if (yyaccept == 101) { + goto yy883; } else { - goto yy880; + goto yy886; } } else { - if (yyaccept == 102) { - goto yy883; + if (yyaccept == 103) { + goto yy889; } else { - goto yy887; + goto yy893; } } } else { - if (yyaccept <= 105) { - if (yyaccept == 104) { - goto yy890; + if (yyaccept <= 106) { + if (yyaccept == 105) { + goto yy896; } else { - goto yy892; + goto yy898; } } else { - goto yy894; + goto yy900; } } } } else { - if (yyaccept <= 114) { - if (yyaccept <= 110) { - if (yyaccept <= 108) { - if (yyaccept == 107) { - goto yy903; + if (yyaccept <= 115) { + if (yyaccept <= 111) { + if (yyaccept <= 109) { + if (yyaccept == 108) { + goto yy909; } else { - goto yy905; + goto yy911; } } else { - if (yyaccept == 109) { - goto yy907; + if (yyaccept == 110) { + goto yy913; } else { - goto yy909; + goto yy915; } } } else { - if (yyaccept <= 112) { - if (yyaccept == 111) { - goto yy912; + if (yyaccept <= 113) { + if (yyaccept == 112) { + goto yy918; } else { - goto yy914; + goto yy920; } } else { - if (yyaccept == 113) { - goto yy916; + if (yyaccept == 114) { + goto yy922; } else { - goto yy919; + goto yy925; } } } } else { - if (yyaccept <= 118) { - if (yyaccept <= 116) { - if (yyaccept == 115) { - goto yy921; + if (yyaccept <= 119) { + if (yyaccept <= 117) { + if (yyaccept == 116) { + goto yy927; } else { - goto yy936; + goto yy942; } } else { - if (yyaccept == 117) { - goto yy953; + if (yyaccept == 118) { + goto yy959; } else { - goto yy957; + goto yy963; } } } else { - if (yyaccept <= 120) { - if (yyaccept == 119) { - goto yy961; + if (yyaccept <= 121) { + if (yyaccept == 120) { + goto yy967; } else { - goto yy964; + goto yy970; } } else { - goto yy968; + goto yy974; } } } @@ -1273,9 +1278,9 @@ yy100: yy101: ++YYCURSOR; yy102: -#line 273 "strict_cpp.re" +#line 277 "strict_cpp.re" { BOOST_WAVE_RET(T_STRINGLIT); } -#line 1279 "strict_cpp_re.inc" +#line 1284 "strict_cpp_re.inc" yy103: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); @@ -1285,7 +1290,7 @@ yy103: } if (yych <= 0x1F) goto yy100; if (yych <= '"') goto yy101; - if (yych <= '?') goto yy255; + if (yych <= '?') goto yy256; yy104: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); @@ -1305,7 +1310,7 @@ yy104: if (yych == '?') goto yy98; goto yy100; } else { - if (yych <= 'U') goto yy257; + if (yych <= 'U') goto yy258; if (yych == '\\') goto yy98; goto yy100; } @@ -1325,10 +1330,10 @@ yy104: if (yych <= 'u') { if (yych <= 's') goto yy100; if (yych <= 't') goto yy98; - goto yy258; + goto yy259; } else { if (yych <= 'v') goto yy98; - if (yych == 'x') goto yy259; + if (yych == 'x') goto yy260; goto yy100; } } @@ -1381,57 +1386,57 @@ yy106: } yy107: ++YYCURSOR; -#line 161 "strict_cpp.re" +#line 165 "strict_cpp.re" { BOOST_WAVE_RET(T_POUND_POUND); } -#line 1387 "strict_cpp_re.inc" +#line 1392 "strict_cpp_re.inc" yy109: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; - if (yych == '*') goto yy260; + if (yych == '*') goto yy261; goto yy100; yy110: yych = *++YYCURSOR; - if (yych == '?') goto yy262; + if (yych == '?') goto yy263; goto yy100; yy111: yych = *++YYCURSOR; - if (yych == 'e') goto yy263; + if (yych == 'e') goto yy264; goto yy100; yy112: yych = *++YYCURSOR; if (yych <= 'm') { - if (yych == 'l') goto yy264; + if (yych == 'l') goto yy265; goto yy100; } else { - if (yych <= 'n') goto yy265; - if (yych == 'r') goto yy266; + if (yych <= 'n') goto yy266; + if (yych == 'r') goto yy267; goto yy100; } yy113: yych = *++YYCURSOR; - if (yych == 'f') goto yy267; - if (yych == 'n') goto yy269; + if (yych == 'f') goto yy268; + if (yych == 'n') goto yy270; goto yy100; yy114: yych = *++YYCURSOR; - if (yych == 'i') goto yy270; + if (yych == 'i') goto yy271; goto yy100; yy115: yych = *++YYCURSOR; - if (yych == 'r') goto yy271; + if (yych == 'r') goto yy272; goto yy100; yy116: yych = *++YYCURSOR; - if (yych == 'e') goto yy272; + if (yych == 'e') goto yy273; goto yy100; yy117: yych = *++YYCURSOR; - if (yych == 'n') goto yy273; + if (yych == 'n') goto yy274; goto yy100; yy118: yych = *++YYCURSOR; - if (yych == 'a') goto yy274; + if (yych == 'a') goto yy275; goto yy100; yy119: yyaccept = 6; @@ -1446,7 +1451,7 @@ yy119: } } else { if (yych <= '.') { - if (yych == '%') goto yy275; + if (yych == '%') goto yy276; } else { if (yych <= '/') goto yy106; if (yych >= 'd') goto yy106; @@ -1470,29 +1475,29 @@ yy119: } } yy120: -#line 159 "strict_cpp.re" +#line 163 "strict_cpp.re" { BOOST_WAVE_RET(T_POUND_ALT); } -#line 1476 "strict_cpp_re.inc" +#line 1481 "strict_cpp_re.inc" yy121: ++YYCURSOR; -#line 218 "strict_cpp.re" +#line 222 "strict_cpp.re" { BOOST_WAVE_RET(T_PERCENTASSIGN); } -#line 1481 "strict_cpp_re.inc" +#line 1486 "strict_cpp_re.inc" yy123: ++YYCURSOR; -#line 151 "strict_cpp.re" +#line 155 "strict_cpp.re" { BOOST_WAVE_RET(T_RIGHTBRACE_ALT); } -#line 1486 "strict_cpp_re.inc" +#line 1491 "strict_cpp_re.inc" yy125: ++YYCURSOR; -#line 246 "strict_cpp.re" +#line 250 "strict_cpp.re" { BOOST_WAVE_RET(T_ANDAND); } -#line 1491 "strict_cpp_re.inc" +#line 1496 "strict_cpp_re.inc" yy127: ++YYCURSOR; -#line 222 "strict_cpp.re" +#line 226 "strict_cpp.re" { BOOST_WAVE_RET(T_ANDASSIGN); } -#line 1496 "strict_cpp_re.inc" +#line 1501 "strict_cpp_re.inc" yy129: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); @@ -1502,7 +1507,7 @@ yy130: goto yy129; } if (yych <= 0x1F) goto yy100; - if (yych <= '\'') goto yy276; + if (yych <= '\'') goto yy277; if (yych >= '@') goto yy132; yy131: ++YYCURSOR; @@ -1512,8 +1517,8 @@ yy131: goto yy129; } if (yych <= 0x1F) goto yy100; - if (yych <= '\'') goto yy276; - if (yych <= '?') goto yy278; + if (yych <= '\'') goto yy277; + if (yych <= '?') goto yy279; yy132: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); @@ -1533,7 +1538,7 @@ yy132: if (yych == '?') goto yy129; goto yy100; } else { - if (yych <= 'U') goto yy280; + if (yych <= 'U') goto yy281; if (yych == '\\') goto yy129; goto yy100; } @@ -1553,48 +1558,48 @@ yy132: if (yych <= 'u') { if (yych <= 's') goto yy100; if (yych <= 't') goto yy129; - goto yy281; + goto yy282; } else { if (yych <= 'v') goto yy129; - if (yych == 'x') goto yy282; + if (yych == 'x') goto yy283; goto yy100; } } } yy133: ++YYCURSOR; -#line 216 "strict_cpp.re" +#line 220 "strict_cpp.re" { BOOST_WAVE_RET(T_STARASSIGN); } -#line 1569 "strict_cpp_re.inc" +#line 1574 "strict_cpp_re.inc" yy135: ++YYCURSOR; -#line 253 "strict_cpp.re" +#line 257 "strict_cpp.re" { BOOST_WAVE_RET(T_PLUSPLUS); } -#line 1574 "strict_cpp_re.inc" +#line 1579 "strict_cpp_re.inc" yy137: ++YYCURSOR; -#line 214 "strict_cpp.re" +#line 218 "strict_cpp.re" { BOOST_WAVE_RET(T_PLUSASSIGN); } -#line 1579 "strict_cpp_re.inc" +#line 1584 "strict_cpp_re.inc" yy139: ++YYCURSOR; -#line 254 "strict_cpp.re" +#line 258 "strict_cpp.re" { BOOST_WAVE_RET(T_MINUSMINUS); } -#line 1584 "strict_cpp_re.inc" +#line 1589 "strict_cpp_re.inc" yy141: ++YYCURSOR; -#line 215 "strict_cpp.re" +#line 219 "strict_cpp.re" { BOOST_WAVE_RET(T_MINUSASSIGN); } -#line 1589 "strict_cpp_re.inc" +#line 1594 "strict_cpp_re.inc" yy143: yych = *++YYCURSOR; - if (yych == '*') goto yy283; -#line 266 "strict_cpp.re" + if (yych == '*') goto yy284; +#line 270 "strict_cpp.re" { BOOST_WAVE_RET(T_ARROW); } -#line 1595 "strict_cpp_re.inc" +#line 1600 "strict_cpp_re.inc" yy145: ++YYCURSOR; -#line 184 "strict_cpp.re" +#line 188 "strict_cpp.re" { if (s->act_in_c99_mode) { --YYCURSOR; @@ -1604,29 +1609,29 @@ yy145: BOOST_WAVE_RET(T_DOTSTAR); } } -#line 1608 "strict_cpp_re.inc" +#line 1613 "strict_cpp_re.inc" yy147: yych = *++YYCURSOR; - if (yych == '.') goto yy285; + if (yych == '.') goto yy286; goto yy100; yy148: ++YYCURSOR; -#line 43 "strict_cpp.re" +#line 46 "strict_cpp.re" { goto ccomment; } -#line 1617 "strict_cpp_re.inc" +#line 1622 "strict_cpp_re.inc" yy150: ++YYCURSOR; -#line 44 "strict_cpp.re" +#line 47 "strict_cpp.re" { goto cppcomment; } -#line 1622 "strict_cpp_re.inc" +#line 1627 "strict_cpp_re.inc" yy152: ++YYCURSOR; -#line 217 "strict_cpp.re" +#line 221 "strict_cpp.re" { BOOST_WAVE_RET(T_DIVIDEASSIGN); } -#line 1627 "strict_cpp_re.inc" +#line 1632 "strict_cpp_re.inc" yy154: ++YYCURSOR; -#line 173 "strict_cpp.re" +#line 177 "strict_cpp.re" { if (s->act_in_c99_mode) { --YYCURSOR; @@ -1636,69 +1641,69 @@ yy154: BOOST_WAVE_RET(T_COLON_COLON); } } -#line 1640 "strict_cpp_re.inc" +#line 1645 "strict_cpp_re.inc" yy156: ++YYCURSOR; -#line 157 "strict_cpp.re" +#line 161 "strict_cpp.re" { BOOST_WAVE_RET(T_RIGHTBRACKET_ALT); } -#line 1645 "strict_cpp_re.inc" +#line 1650 "strict_cpp_re.inc" yy158: ++YYCURSOR; -#line 148 "strict_cpp.re" +#line 152 "strict_cpp.re" { BOOST_WAVE_RET(T_LEFTBRACE_ALT); } -#line 1650 "strict_cpp_re.inc" +#line 1655 "strict_cpp_re.inc" yy160: ++YYCURSOR; -#line 154 "strict_cpp.re" +#line 158 "strict_cpp.re" { BOOST_WAVE_RET(T_LEFTBRACKET_ALT); } -#line 1655 "strict_cpp_re.inc" +#line 1660 "strict_cpp_re.inc" yy162: yych = *++YYCURSOR; - if (yych == '=') goto yy287; -#line 227 "strict_cpp.re" + if (yych == '=') goto yy288; +#line 231 "strict_cpp.re" { BOOST_WAVE_RET(T_SHIFTLEFT); } -#line 1661 "strict_cpp_re.inc" +#line 1666 "strict_cpp_re.inc" yy164: yych = *++YYCURSOR; - if (yych == '>') goto yy289; -#line 244 "strict_cpp.re" + if (yych == '>') goto yy290; +#line 248 "strict_cpp.re" { BOOST_WAVE_RET(T_LESSEQUAL); } -#line 1667 "strict_cpp_re.inc" +#line 1672 "strict_cpp_re.inc" yy166: ++YYCURSOR; -#line 231 "strict_cpp.re" +#line 235 "strict_cpp.re" { BOOST_WAVE_RET(T_EQUAL); } -#line 1672 "strict_cpp_re.inc" +#line 1677 "strict_cpp_re.inc" yy168: ++YYCURSOR; -#line 245 "strict_cpp.re" +#line 249 "strict_cpp.re" { BOOST_WAVE_RET(T_GREATEREQUAL); } -#line 1677 "strict_cpp_re.inc" +#line 1682 "strict_cpp_re.inc" yy170: yych = *++YYCURSOR; - if (yych == '=') goto yy291; -#line 228 "strict_cpp.re" + if (yych == '=') goto yy292; +#line 232 "strict_cpp.re" { BOOST_WAVE_RET(T_SHIFTRIGHT); } -#line 1683 "strict_cpp_re.inc" +#line 1688 "strict_cpp_re.inc" yy172: yych = *++YYCURSOR; switch (yych) { - case '!': goto yy293; - case '\'': goto yy295; - case '(': goto yy297; - case ')': goto yy299; - case '-': goto yy301; - case '/': goto yy303; - case '<': goto yy305; - case '=': goto yy307; - case '>': goto yy309; + case '!': goto yy294; + case '\'': goto yy296; + case '(': goto yy298; + case ')': goto yy300; + case '-': goto yy302; + case '/': goto yy304; + case '<': goto yy306; + case '=': goto yy308; + case '>': goto yy310; default: goto yy100; } yy173: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; - if (yych == '?') goto yy311; + if (yych == '?') goto yy312; goto yy100; yy174: ++YYCURSOR; @@ -1713,7 +1718,7 @@ yy175: goto yy130; yy176: ++YYCURSOR; -#line 276 "strict_cpp.re" +#line 280 "strict_cpp.re" { if (s->act_in_cpp0x_mode) { @@ -1723,31 +1728,31 @@ yy176: --YYCURSOR; BOOST_WAVE_RET(T_IDENTIFIER); } -#line 1727 "strict_cpp_re.inc" +#line 1732 "strict_cpp_re.inc" yy178: ++YYCURSOR; -#line 295 "strict_cpp.re" +#line 299 "strict_cpp.re" { if (s->act_in_cpp0x_mode) goto extstringlit; --YYCURSOR; BOOST_WAVE_RET(T_IDENTIFIER); } -#line 1737 "strict_cpp_re.inc" +#line 1742 "strict_cpp_re.inc" yy180: ++YYCURSOR; -#line 287 "strict_cpp.re" +#line 291 "strict_cpp.re" { if (s->act_in_cpp0x_mode) goto extcharlit; --YYCURSOR; BOOST_WAVE_RET(T_IDENTIFIER); } -#line 1747 "strict_cpp_re.inc" +#line 1752 "strict_cpp_re.inc" yy182: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == '"') goto yy312; + if (yych == '"') goto yy313; goto yy55; yy183: ++YYCURSOR; @@ -1755,12 +1760,12 @@ yy183: yych = *YYCURSOR; if (yych <= '@') { if (yych <= '/') goto yy100; - if (yych <= '9') goto yy314; + if (yych <= '9') goto yy315; goto yy100; } else { - if (yych <= 'F') goto yy314; + if (yych <= 'F') goto yy315; if (yych <= '`') goto yy100; - if (yych <= 'f') goto yy314; + if (yych <= 'f') goto yy315; goto yy100; } yy184: @@ -1769,19 +1774,19 @@ yy184: yych = *YYCURSOR; if (yych <= '@') { if (yych <= '/') goto yy100; - if (yych <= '9') goto yy315; + if (yych <= '9') goto yy316; goto yy100; } else { - if (yych <= 'F') goto yy315; + if (yych <= 'F') goto yy316; if (yych <= '`') goto yy100; - if (yych <= 'f') goto yy315; + if (yych <= 'f') goto yy316; goto yy100; } yy185: ++YYCURSOR; -#line 219 "strict_cpp.re" +#line 223 "strict_cpp.re" { BOOST_WAVE_RET(T_XORASSIGN); } -#line 1785 "strict_cpp_re.inc" +#line 1790 "strict_cpp_re.inc" yy187: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); @@ -1790,121 +1795,121 @@ yy187: case 'b': goto yy189; case 'c': goto yy190; case 'd': goto yy191; - case 'e': goto yy316; - case 'f': goto yy317; - case 'i': goto yy318; - case 'l': goto yy319; + case 'e': goto yy317; + case 'f': goto yy318; + case 'i': goto yy319; + case 'l': goto yy320; case 's': goto yy194; - case 't': goto yy320; + case 't': goto yy321; default: goto yy55; } yy188: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 's') goto yy321; + if (yych == 's') goto yy322; goto yy55; yy189: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy322; + if (yych == 'a') goto yy323; goto yy55; yy190: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'd') goto yy323; + if (yych == 'd') goto yy324; goto yy55; yy191: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy324; + if (yych == 'e') goto yy325; goto yy55; yy192: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy325; + if (yych == 'a') goto yy326; goto yy55; yy193: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'n') goto yy326; + if (yych == 'n') goto yy327; goto yy55; yy194: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy327; + if (yych == 't') goto yy328; goto yy55; yy195: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy328; + if (yych == 'i') goto yy329; goto yy55; yy196: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'd') goto yy329; + if (yych == 'd') goto yy330; goto yy55; yy197: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'm') goto yy331; + if (yych == 'm') goto yy332; goto yy55; yy198: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy333; + if (yych == 't') goto yy334; goto yy55; yy199: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy334; + if (yych == 't') goto yy335; goto yy55; yy200: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'o') goto yy335; + if (yych == 'o') goto yy336; goto yy55; yy201: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy336; + if (yych == 'e') goto yy337; goto yy55; yy202: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); if (yych <= 'r') goto yy55; - if (yych <= 's') goto yy337; - if (yych <= 't') goto yy338; + if (yych <= 's') goto yy338; + if (yych <= 't') goto yy339; goto yy55; yy203: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy339; + if (yych == 'a') goto yy340; goto yy55; yy204: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy340; + if (yych == 'a') goto yy341; goto yy55; yy205: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); if (yych <= 'l') { - if (yych == '_') goto yy341; + if (yych == '_') goto yy342; goto yy55; } else { - if (yych <= 'm') goto yy342; - if (yych <= 'n') goto yy343; + if (yych <= 'm') goto yy343; + if (yych <= 'n') goto yy344; goto yy55; } yy206: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); if (yych <= 'e') { - if (yych == 'c') goto yy344; + if (yych == 'c') goto yy345; goto yy55; } else { - if (yych <= 'f') goto yy345; - if (yych == 'l') goto yy346; + if (yych <= 'f') goto yy346; + if (yych == 'l') goto yy347; goto yy55; } yy207: @@ -1924,59 +1929,59 @@ yy207: if (yych <= '\\') goto yy174; if (yych == '_') goto yy54; } else { - if (yych == 'u') goto yy347; + if (yych == 'u') goto yy348; if (yych <= 'z') goto yy54; } } yy208: -#line 73 "strict_cpp.re" +#line 76 "strict_cpp.re" { BOOST_WAVE_RET(T_DO); } -#line 1935 "strict_cpp_re.inc" +#line 1940 "strict_cpp_re.inc" yy209: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'n') goto yy348; + if (yych == 'n') goto yy349; goto yy55; yy210: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 's') goto yy349; + if (yych == 's') goto yy350; goto yy55; yy211: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'u') goto yy350; + if (yych == 'u') goto yy351; goto yy55; yy212: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'p') goto yy351; - if (yych == 't') goto yy352; + if (yych == 'p') goto yy352; + if (yych == 't') goto yy353; goto yy55; yy213: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy353; + if (yych == 'l') goto yy354; goto yy55; yy214: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'o') goto yy354; + if (yych == 'o') goto yy355; goto yy55; yy215: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy355; + if (yych == 'r') goto yy356; goto yy55; yy216: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy357; + if (yych == 'i') goto yy358; goto yy55; yy217: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy358; + if (yych == 't') goto yy359; goto yy55; yy218: yyaccept = 8; @@ -1987,62 +1992,67 @@ yy218: if (yych == '?') goto yy173; if (yych == '\\') goto yy174; yy219: -#line 86 "strict_cpp.re" +#line 89 "strict_cpp.re" { BOOST_WAVE_RET(T_IF); } -#line 1993 "strict_cpp_re.inc" +#line 1998 "strict_cpp_re.inc" yy220: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'p') goto yy359; + if (yych == 'p') goto yy360; goto yy55; yy221: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy360; - if (yych == 't') goto yy361; + if (yych == 'l') goto yy361; + if (yych == 't') goto yy362; goto yy55; yy222: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'n') goto yy363; + if (yych == 'n') goto yy364; goto yy55; yy223: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy364; + if (yych == 'd') goto yy365; goto yy55; yy224: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'm') goto yy365; + if (yych == 't') goto yy366; goto yy55; yy225: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'w') goto yy366; + if (yych == 'm') goto yy367; goto yy55; yy226: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy368; - if (yych == 't') goto yy369; + if (yych == 'w') goto yy368; goto yy55; yy227: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy371; + if (yych == 'e') goto yy370; + if (yych == 't') goto yy371; goto yy55; yy228: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy372; + if (yych == 'l') goto yy373; goto yy55; yy229: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 'e') goto yy374; + goto yy55; +yy230: yyaccept = 9; yych = *(YYMARKER = ++YYCURSOR); if (yych <= 'Z') { if (yych <= '>') { - if (yych <= '/') goto yy230; + if (yych <= '/') goto yy231; if (yych <= '9') goto yy54; } else { if (yych <= '?') goto yy173; @@ -2052,143 +2062,143 @@ yy229: if (yych <= '^') { if (yych == '\\') goto yy174; } else { - if (yych <= '_') goto yy373; - if (yych <= '`') goto yy230; + if (yych <= '_') goto yy375; + if (yych <= '`') goto yy231; if (yych <= 'z') goto yy54; } } -yy230: -#line 251 "strict_cpp.re" - { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_OROR_ALT); } -#line 2064 "strict_cpp_re.inc" yy231: +#line 255 "strict_cpp.re" + { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_OROR_ALT); } +#line 2074 "strict_cpp_re.inc" +yy232: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy374; - if (yych == 'o') goto yy375; + if (yych == 'i') goto yy376; + if (yych == 'o') goto yy377; goto yy55; -yy232: +yy233: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'b') goto yy376; + if (yych == 'b') goto yy378; goto yy55; -yy233: +yy234: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); switch (yych) { - case 'g': goto yy377; - case 'i': goto yy378; - case 'q': goto yy379; - case 't': goto yy380; + case 'g': goto yy379; + case 'i': goto yy380; + case 'q': goto yy381; + case 't': goto yy382; default: goto yy55; } -yy234: - yyaccept = 4; - yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'o') goto yy381; - goto yy55; yy235: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'g') goto yy382; - if (yych == 'z') goto yy383; + if (yych == 'o') goto yy383; goto yy55; yy236: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy384; - if (yych == 'r') goto yy385; + if (yych == 'g') goto yy384; + if (yych == 'z') goto yy385; goto yy55; yy237: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy386; + if (yych == 'a') goto yy386; + if (yych == 'r') goto yy387; goto yy55; yy238: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'm') goto yy387; + if (yych == 'i') goto yy388; goto yy55; yy239: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy388; - if (yych == 'r') goto yy389; + if (yych == 'm') goto yy389; goto yy55; yy240: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'u') goto yy390; - if (yych == 'y') goto yy391; + if (yych == 'i') goto yy390; + if (yych == 'r') goto yy391; goto yy55; yy241: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'p') goto yy393; + if (yych == 'u') goto yy392; + if (yych == 'y') goto yy393; goto yy55; yy242: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == '"') goto yy178; - if (yych == 'R') goto yy182; + if (yych == 'p') goto yy395; goto yy55; yy243: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy394; - if (yych == 's') goto yy395; + if (yych == '"') goto yy178; + if (yych == 'R') goto yy182; goto yy55; yy244: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); if (yych == 'i') goto yy396; + if (yych == 's') goto yy397; goto yy55; yy245: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy397; + if (yych == 'i') goto yy398; goto yy55; yy246: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy398; - if (yych == 'l') goto yy399; + if (yych == 'r') goto yy399; goto yy55; yy247: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'h') goto yy400; + if (yych == 'i') goto yy400; + if (yych == 'l') goto yy401; goto yy55; yy248: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy401; + if (yych == 'h') goto yy402; goto yy55; yy249: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy402; + if (yych == 'i') goto yy403; goto yy55; yy250: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 'r') goto yy404; + goto yy55; +yy251: ++YYCURSOR; -#line 224 "strict_cpp.re" +#line 228 "strict_cpp.re" { BOOST_WAVE_RET(T_ORASSIGN); } -#line 2177 "strict_cpp_re.inc" -yy252: +#line 2187 "strict_cpp_re.inc" +yy253: yych = *++YYCURSOR; - if (yych == '?') goto yy404; + if (yych == '?') goto yy406; goto yy100; -yy253: +yy254: ++YYCURSOR; -#line 248 "strict_cpp.re" +#line 252 "strict_cpp.re" { BOOST_WAVE_RET(T_OROR); } -#line 2186 "strict_cpp_re.inc" -yy255: +#line 2196 "strict_cpp_re.inc" +yy256: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yybm[0+yych] & 4) { - goto yy255; + goto yy256; } if (yych <= '!') { if (yych <= '\n') { @@ -2203,41 +2213,41 @@ yy255: if (yych <= '/') { if (yych <= '"') goto yy101; if (yych <= '.') goto yy98; - goto yy405; + goto yy407; } else { if (yych == '\\') goto yy104; goto yy98; } } -yy257: +yy258: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { if (yych <= '/') goto yy100; - if (yych <= '9') goto yy407; + if (yych <= '9') goto yy409; goto yy100; } else { - if (yych <= 'F') goto yy407; + if (yych <= 'F') goto yy409; if (yych <= '`') goto yy100; - if (yych <= 'f') goto yy407; + if (yych <= 'f') goto yy409; goto yy100; } -yy258: +yy259: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { if (yych <= '/') goto yy100; - if (yych <= '9') goto yy408; + if (yych <= '9') goto yy410; goto yy100; } else { - if (yych <= 'F') goto yy408; + if (yych <= 'F') goto yy410; if (yych <= '`') goto yy100; - if (yych <= 'f') goto yy408; + if (yych <= 'f') goto yy410; goto yy100; } -yy259: +yy260: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; @@ -2251,80 +2261,80 @@ yy259: if (yych <= 'f') goto yy98; goto yy100; } -yy260: +yy261: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yybm[0+yych] & 8) { - goto yy260; + goto yy261; } if (yych <= 0x1F) goto yy100; - goto yy409; -yy262: - yych = *++YYCURSOR; - if (yych == '=') goto yy411; - goto yy100; + goto yy411; yy263: yych = *++YYCURSOR; - if (yych == 'f') goto yy413; + if (yych == '=') goto yy413; goto yy100; yy264: yych = *++YYCURSOR; - if (yych == 'i') goto yy414; - if (yych == 's') goto yy415; + if (yych == 'f') goto yy415; goto yy100; yy265: yych = *++YYCURSOR; - if (yych == 'd') goto yy416; + if (yych == 'i') goto yy416; + if (yych == 's') goto yy417; goto yy100; yy266: yych = *++YYCURSOR; - if (yych == 'r') goto yy417; + if (yych == 'd') goto yy418; goto yy100; yy267: + yych = *++YYCURSOR; + if (yych == 'r') goto yy419; + goto yy100; +yy268: yyaccept = 10; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'd') goto yy418; - if (yych == 'n') goto yy419; -yy268: -#line 325 "strict_cpp.re" - { BOOST_WAVE_RET(T_PP_IF); } -#line 2293 "strict_cpp_re.inc" + if (yych == 'd') goto yy420; + if (yych == 'n') goto yy421; yy269: - yych = *++YYCURSOR; - if (yych == 'c') goto yy420; - goto yy100; +#line 329 "strict_cpp.re" + { BOOST_WAVE_RET(T_PP_IF); } +#line 2303 "strict_cpp_re.inc" yy270: yych = *++YYCURSOR; - if (yych == 'n') goto yy421; + if (yych == 'c') goto yy422; goto yy100; yy271: yych = *++YYCURSOR; - if (yych == 'a') goto yy422; + if (yych == 'n') goto yy423; goto yy100; yy272: yych = *++YYCURSOR; - if (yych == 'g') goto yy423; + if (yych == 'a') goto yy424; goto yy100; yy273: yych = *++YYCURSOR; - if (yych == 'd') goto yy424; + if (yych == 'g') goto yy425; goto yy100; yy274: yych = *++YYCURSOR; - if (yych == 'r') goto yy425; + if (yych == 'd') goto yy426; goto yy100; yy275: yych = *++YYCURSOR; - if (yych == ':') goto yy426; + if (yych == 'r') goto yy427; goto yy100; yy276: - ++YYCURSOR; + yych = *++YYCURSOR; + if (yych == ':') goto yy428; + goto yy100; yy277: -#line 270 "strict_cpp.re" - { BOOST_WAVE_RET(T_CHARLIT); } -#line 2327 "strict_cpp_re.inc" + ++YYCURSOR; yy278: +#line 274 "strict_cpp.re" + { BOOST_WAVE_RET(T_CHARLIT); } +#line 2337 "strict_cpp_re.inc" +yy279: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; @@ -2336,47 +2346,47 @@ yy278: if (yych <= '\f') goto yy129; if (yych <= 0x1F) goto yy100; if (yych <= '&') goto yy129; - goto yy276; + goto yy277; } } else { if (yych <= '>') { - if (yych == '/') goto yy428; + if (yych == '/') goto yy430; goto yy129; } else { - if (yych <= '?') goto yy278; + if (yych <= '?') goto yy279; if (yych == '\\') goto yy132; goto yy129; } } -yy280: +yy281: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { if (yych <= '/') goto yy100; - if (yych <= '9') goto yy430; + if (yych <= '9') goto yy432; goto yy100; } else { - if (yych <= 'F') goto yy430; + if (yych <= 'F') goto yy432; if (yych <= '`') goto yy100; - if (yych <= 'f') goto yy430; + if (yych <= 'f') goto yy432; goto yy100; } -yy281: +yy282: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { if (yych <= '/') goto yy100; - if (yych <= '9') goto yy431; + if (yych <= '9') goto yy433; goto yy100; } else { - if (yych <= 'F') goto yy431; + if (yych <= 'F') goto yy433; if (yych <= '`') goto yy100; - if (yych <= 'f') goto yy431; + if (yych <= 'f') goto yy433; goto yy100; } -yy282: +yy283: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; @@ -2390,9 +2400,9 @@ yy282: if (yych <= 'f') goto yy129; goto yy100; } -yy283: +yy284: ++YYCURSOR; -#line 257 "strict_cpp.re" +#line 261 "strict_cpp.re" { if (s->act_in_c99_mode) { --YYCURSOR; @@ -2402,20 +2412,20 @@ yy283: BOOST_WAVE_RET(T_ARROWSTAR); } } -#line 2406 "strict_cpp_re.inc" -yy285: +#line 2416 "strict_cpp_re.inc" +yy286: ++YYCURSOR; -#line 170 "strict_cpp.re" +#line 174 "strict_cpp.re" { BOOST_WAVE_RET(T_ELLIPSIS); } -#line 2411 "strict_cpp_re.inc" -yy287: +#line 2421 "strict_cpp_re.inc" +yy288: ++YYCURSOR; -#line 230 "strict_cpp.re" +#line 234 "strict_cpp.re" { BOOST_WAVE_RET(T_SHIFTLEFTASSIGN); } -#line 2416 "strict_cpp_re.inc" -yy289: +#line 2426 "strict_cpp_re.inc" +yy290: ++YYCURSOR; -#line 235 "strict_cpp.re" +#line 239 "strict_cpp.re" { if (s->act_in_cpp2a_mode) { BOOST_WAVE_RET(T_SPACESHIP); @@ -2425,61 +2435,61 @@ yy289: BOOST_WAVE_RET(T_LESSEQUAL); } } -#line 2429 "strict_cpp_re.inc" -yy291: +#line 2439 "strict_cpp_re.inc" +yy292: ++YYCURSOR; -#line 229 "strict_cpp.re" +#line 233 "strict_cpp.re" { BOOST_WAVE_RET(T_SHIFTRIGHTASSIGN); } -#line 2434 "strict_cpp_re.inc" -yy293: +#line 2444 "strict_cpp_re.inc" +yy294: yyaccept = 11; yych = *(YYMARKER = ++YYCURSOR); if (yych <= '>') { - if (yych == '=') goto yy432; + if (yych == '=') goto yy434; } else { - if (yych <= '?') goto yy434; - if (yych == '|') goto yy435; + if (yych <= '?') goto yy436; + if (yych == '|') goto yy437; } -yy294: -#line 205 "strict_cpp.re" - { BOOST_WAVE_RET(T_OR_TRIGRAPH); } -#line 2447 "strict_cpp_re.inc" yy295: +#line 209 "strict_cpp.re" + { BOOST_WAVE_RET(T_OR_TRIGRAPH); } +#line 2457 "strict_cpp_re.inc" +yy296: yych = *++YYCURSOR; - if (yych == '=') goto yy437; -#line 199 "strict_cpp.re" + if (yych == '=') goto yy439; +#line 203 "strict_cpp.re" { BOOST_WAVE_RET(T_XOR_TRIGRAPH); } -#line 2453 "strict_cpp_re.inc" -yy297: +#line 2463 "strict_cpp_re.inc" +yy298: ++YYCURSOR; -#line 153 "strict_cpp.re" +#line 157 "strict_cpp.re" { BOOST_WAVE_RET(T_LEFTBRACKET_TRIGRAPH); } -#line 2458 "strict_cpp_re.inc" -yy299: +#line 2468 "strict_cpp_re.inc" +yy300: ++YYCURSOR; -#line 156 "strict_cpp.re" +#line 160 "strict_cpp.re" { BOOST_WAVE_RET(T_RIGHTBRACKET_TRIGRAPH); } -#line 2463 "strict_cpp_re.inc" -yy301: +#line 2473 "strict_cpp_re.inc" +yy302: ++YYCURSOR; -#line 207 "strict_cpp.re" +#line 211 "strict_cpp.re" { BOOST_WAVE_RET(T_COMPL_TRIGRAPH); } -#line 2468 "strict_cpp_re.inc" -yy303: +#line 2478 "strict_cpp_re.inc" +yy304: yyaccept = 12; yych = *(YYMARKER = ++YYCURSOR); if (yych == 'U') goto yy183; if (yych == 'u') goto yy184; -yy304: -#line 267 "strict_cpp.re" - { BOOST_WAVE_RET(T_ANY_TRIGRAPH); } -#line 2477 "strict_cpp_re.inc" yy305: +#line 271 "strict_cpp.re" + { BOOST_WAVE_RET(T_ANY_TRIGRAPH); } +#line 2487 "strict_cpp_re.inc" +yy306: ++YYCURSOR; -#line 147 "strict_cpp.re" +#line 151 "strict_cpp.re" { BOOST_WAVE_RET(T_LEFTBRACE_TRIGRAPH); } -#line 2482 "strict_cpp_re.inc" -yy307: +#line 2492 "strict_cpp_re.inc" +yy308: yyaccept = 13; yych = *(YYMARKER = ++YYCURSOR); if (yych <= 'c') { @@ -2492,10 +2502,10 @@ yy307: } } else { if (yych <= '.') { - if (yych == '#') goto yy439; + if (yych == '#') goto yy441; } else { if (yych <= '/') goto yy106; - if (yych == '?') goto yy441; + if (yych == '?') goto yy443; } } } else { @@ -2511,29 +2521,29 @@ yy307: if (yych <= 't') { if (yych == 'r') goto yy106; } else { - if (yych == 'v') goto yy308; + if (yych == 'v') goto yy309; if (yych <= 'w') goto yy106; } } } -yy308: -#line 160 "strict_cpp.re" - { BOOST_WAVE_RET(T_POUND_TRIGRAPH); } -#line 2523 "strict_cpp_re.inc" yy309: +#line 164 "strict_cpp.re" + { BOOST_WAVE_RET(T_POUND_TRIGRAPH); } +#line 2533 "strict_cpp_re.inc" +yy310: ++YYCURSOR; -#line 150 "strict_cpp.re" +#line 154 "strict_cpp.re" { BOOST_WAVE_RET(T_RIGHTBRACE_TRIGRAPH); } -#line 2528 "strict_cpp_re.inc" -yy311: +#line 2538 "strict_cpp_re.inc" +yy312: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych == '/') goto yy174; goto yy100; -yy312: +yy313: ++YYCURSOR; -#line 303 "strict_cpp.re" +#line 307 "strict_cpp.re" { if (s->act_in_cpp0x_mode) { @@ -2543,107 +2553,107 @@ yy312: --YYCURSOR; BOOST_WAVE_RET(T_IDENTIFIER); } -#line 2547 "strict_cpp_re.inc" -yy314: +#line 2557 "strict_cpp_re.inc" +yy315: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { if (yych <= '/') goto yy100; - if (yych <= '9') goto yy442; + if (yych <= '9') goto yy444; goto yy100; } else { - if (yych <= 'F') goto yy442; + if (yych <= 'F') goto yy444; if (yych <= '`') goto yy100; - if (yych <= 'f') goto yy442; + if (yych <= 'f') goto yy444; goto yy100; } -yy315: +yy316: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { if (yych <= '/') goto yy100; - if (yych <= '9') goto yy443; + if (yych <= '9') goto yy445; goto yy100; } else { - if (yych <= 'F') goto yy443; + if (yych <= 'F') goto yy445; if (yych <= '`') goto yy100; - if (yych <= 'f') goto yy443; + if (yych <= 'f') goto yy445; goto yy100; } -yy316: - yyaccept = 4; - yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'x') goto yy444; - goto yy55; yy317: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy325; - if (yych == 'i') goto yy445; + if (yych == 'x') goto yy446; goto yy55; yy318: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'n') goto yy446; + if (yych == 'a') goto yy326; + if (yych == 'i') goto yy447; goto yy55; yy319: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy447; + if (yych == 'n') goto yy448; goto yy55; yy320: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy448; + if (yych == 'e') goto yy449; goto yy55; yy321: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'm') goto yy449; + if (yych == 'r') goto yy450; goto yy55; yy322: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 's') goto yy451; + if (yych == 'm') goto yy451; goto yy55; yy323: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy452; + if (yych == 's') goto yy453; goto yy55; yy324: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'c') goto yy453; + if (yych == 'e') goto yy454; goto yy55; yy325: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 's') goto yy454; + if (yych == 'c') goto yy455; goto yy55; yy326: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy455; + if (yych == 's') goto yy456; goto yy55; yy327: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'd') goto yy456; + if (yych == 'l') goto yy457; goto yy55; yy328: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'g') goto yy457; + if (yych == 'd') goto yy458; goto yy55; yy329: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 'g') goto yy459; + goto yy55; +yy330: yyaccept = 14; yych = *(YYMARKER = ++YYCURSOR); if (yych <= 'Z') { if (yych <= '>') { - if (yych <= '/') goto yy330; + if (yych <= '/') goto yy331; if (yych <= '9') goto yy54; } else { if (yych <= '?') goto yy173; @@ -2653,16 +2663,16 @@ yy329: if (yych <= '^') { if (yych == '\\') goto yy174; } else { - if (yych <= '_') goto yy458; - if (yych <= '`') goto yy330; + if (yych <= '_') goto yy460; + if (yych <= '`') goto yy331; if (yych <= 'z') goto yy54; } } -yy330: -#line 247 "strict_cpp.re" - { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_ANDAND_ALT); } -#line 2665 "strict_cpp_re.inc" yy331: +#line 251 "strict_cpp.re" + { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_ANDAND_ALT); } +#line 2675 "strict_cpp_re.inc" +yy332: yyaccept = 15; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -2670,135 +2680,135 @@ yy331: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy332: -#line 49 "strict_cpp.re" - { BOOST_WAVE_RET(T_ASM); } -#line 2677 "strict_cpp_re.inc" yy333: - yyaccept = 4; - yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'o') goto yy459; - goto yy55; +#line 52 "strict_cpp.re" + { BOOST_WAVE_RET(T_ASM); } +#line 2687 "strict_cpp_re.inc" yy334: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy461; - if (yych == 'o') goto yy462; + if (yych == 'o') goto yy461; goto yy55; yy335: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy463; + if (yych == 'a') goto yy463; + if (yych == 'o') goto yy464; goto yy55; yy336: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy465; + if (yych == 'l') goto yy465; goto yy55; yy337: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy466; + if (yych == 'a') goto yy467; goto yy55; yy338: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'c') goto yy468; + if (yych == 'e') goto yy468; goto yy55; yy339: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy469; + if (yych == 'c') goto yy470; goto yy55; yy340: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 's') goto yy471; + if (yych == 'r') goto yy471; goto yy55; yy341: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 's') goto yy473; + goto yy55; +yy342: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); if (yych <= 'q') { - if (yych == 'a') goto yy472; + if (yych == 'a') goto yy474; goto yy55; } else { - if (yych <= 'r') goto yy473; - if (yych == 'y') goto yy474; + if (yych <= 'r') goto yy475; + if (yych == 'y') goto yy476; goto yy55; } -yy342: +yy343: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'p') goto yy475; + if (yych == 'p') goto yy477; goto yy55; -yy343: +yy344: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); if (yych <= 'r') { - if (yych == 'c') goto yy476; + if (yych == 'c') goto yy478; goto yy55; } else { - if (yych <= 's') goto yy477; - if (yych <= 't') goto yy478; + if (yych <= 's') goto yy479; + if (yych <= 't') goto yy480; goto yy55; } -yy344: - yyaccept = 4; - yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy479; - goto yy55; yy345: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy480; + if (yych == 'l') goto yy481; goto yy55; yy346: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy481; + if (yych == 'a') goto yy482; goto yy55; yy347: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'b') goto yy482; + if (yych == 'e') goto yy483; goto yy55; yy348: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy483; + if (yych == 'b') goto yy484; goto yy55; yy349: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy484; + if (yych == 'a') goto yy485; goto yy55; yy350: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'm') goto yy486; + if (yych == 'e') goto yy486; goto yy55; yy351: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy488; - if (yych == 'o') goto yy489; + if (yych == 'm') goto yy488; goto yy55; yy352: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy490; + if (yych == 'l') goto yy490; + if (yych == 'o') goto yy491; goto yy55; yy353: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 's') goto yy491; + if (yych == 'e') goto yy492; goto yy55; yy354: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy492; + if (yych == 's') goto yy493; goto yy55; yy355: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 'a') goto yy494; + goto yy55; +yy356: yyaccept = 16; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -2806,19 +2816,14 @@ yy355: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy356: -#line 83 "strict_cpp.re" - { BOOST_WAVE_RET(T_FOR); } -#line 2813 "strict_cpp_re.inc" yy357: - yyaccept = 4; - yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy493; - goto yy55; +#line 86 "strict_cpp.re" + { BOOST_WAVE_RET(T_FOR); } +#line 2823 "strict_cpp_re.inc" yy358: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'o') goto yy494; + if (yych == 'e') goto yy495; goto yy55; yy359: yyaccept = 4; @@ -2828,9 +2833,14 @@ yy359: yy360: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy497; + if (yych == 'o') goto yy498; goto yy55; yy361: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 'i') goto yy499; + goto yy55; +yy362: yyaccept = 17; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -2838,26 +2848,31 @@ yy361: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy362: -#line 89 "strict_cpp.re" - { BOOST_WAVE_RET(T_INT); } -#line 2845 "strict_cpp_re.inc" yy363: - yyaccept = 4; - yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'g') goto yy498; - goto yy55; +#line 92 "strict_cpp.re" + { BOOST_WAVE_RET(T_INT); } +#line 2855 "strict_cpp_re.inc" yy364: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy500; + if (yych == 'g') goto yy500; goto yy55; yy365: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy501; + if (yych == 'u') goto yy502; goto yy55; yy366: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 'a') goto yy503; + goto yy55; +yy367: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 'e') goto yy504; + goto yy55; +yy368: yyaccept = 18; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -2865,21 +2880,21 @@ yy366: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy367: -#line 93 "strict_cpp.re" +yy369: +#line 97 "strict_cpp.re" { BOOST_WAVE_RET(T_NEW); } -#line 2872 "strict_cpp_re.inc" -yy368: +#line 2887 "strict_cpp_re.inc" +yy370: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'x') goto yy502; + if (yych == 'x') goto yy505; goto yy55; -yy369: +yy371: yyaccept = 19; yych = *(YYMARKER = ++YYCURSOR); if (yych <= 'Z') { if (yych <= '>') { - if (yych <= '/') goto yy370; + if (yych <= '/') goto yy372; if (yych <= '9') goto yy54; } else { if (yych <= '?') goto yy173; @@ -2889,117 +2904,117 @@ yy369: if (yych <= '^') { if (yych == '\\') goto yy174; } else { - if (yych <= '_') goto yy503; - if (yych <= '`') goto yy370; + if (yych <= '_') goto yy506; + if (yych <= '`') goto yy372; if (yych <= 'z') goto yy54; } } -yy370: -#line 210 "strict_cpp.re" - { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_NOT_ALT); } -#line 2901 "strict_cpp_re.inc" -yy371: - yyaccept = 4; - yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy504; - goto yy55; yy372: - yyaccept = 4; - yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy505; - goto yy55; +#line 214 "strict_cpp.re" + { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_NOT_ALT); } +#line 2916 "strict_cpp_re.inc" yy373: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy506; + if (yych == 'l') goto yy507; goto yy55; yy374: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'v') goto yy507; + if (yych == 'r') goto yy508; goto yy55; yy375: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy508; + if (yych == 'e') goto yy509; goto yy55; yy376: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy509; + if (yych == 'v') goto yy510; goto yy55; yy377: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy510; + if (yych == 't') goto yy511; goto yy55; yy378: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'n') goto yy511; + if (yych == 'l') goto yy512; goto yy55; yy379: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'u') goto yy512; + if (yych == 'i') goto yy513; goto yy55; yy380: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'u') goto yy513; + if (yych == 'n') goto yy514; goto yy55; yy381: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy514; + if (yych == 'u') goto yy515; goto yy55; yy382: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'n') goto yy515; + if (yych == 'u') goto yy516; goto yy55; yy383: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy516; + if (yych == 'r') goto yy517; goto yy55; yy384: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy517; + if (yych == 'n') goto yy518; goto yy55; yy385: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'u') goto yy518; + if (yych == 'e') goto yy519; goto yy55; yy386: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy519; + if (yych == 't') goto yy520; goto yy55; yy387: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'p') goto yy520; + if (yych == 'u') goto yy521; goto yy55; yy388: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 's') goto yy521; + if (yych == 't') goto yy522; goto yy55; yy389: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy523; - if (yych == 'o') goto yy524; + if (yych == 'p') goto yy523; goto yy55; yy390: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy525; + if (yych == 's') goto yy524; goto yy55; yy391: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 'e') goto yy526; + if (yych == 'o') goto yy527; + goto yy55; +yy392: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 'e') goto yy528; + goto yy55; +yy393: yyaccept = 20; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -3007,61 +3022,61 @@ yy391: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy392: -#line 117 "strict_cpp.re" - { BOOST_WAVE_RET(T_TRY); } -#line 3014 "strict_cpp_re.inc" -yy393: - yyaccept = 4; - yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy527; - goto yy55; yy394: - yyaccept = 4; - yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'o') goto yy528; - goto yy55; +#line 121 "strict_cpp.re" + { BOOST_WAVE_RET(T_TRY); } +#line 3029 "strict_cpp_re.inc" yy395: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy529; + if (yych == 'e') goto yy530; goto yy55; yy396: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'n') goto yy530; + if (yych == 'o') goto yy531; goto yy55; yy397: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy531; + if (yych == 'i') goto yy532; goto yy55; yy398: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'd') goto yy532; + if (yych == 'n') goto yy533; goto yy55; yy399: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy534; + if (yych == 't') goto yy534; goto yy55; yy400: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy535; + if (yych == 'd') goto yy535; goto yy55; yy401: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy536; + if (yych == 'a') goto yy537; goto yy55; yy402: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 'a') goto yy538; + goto yy55; +yy403: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 'l') goto yy539; + goto yy55; +yy404: yyaccept = 21; yych = *(YYMARKER = ++YYCURSOR); if (yych <= 'Z') { if (yych <= '>') { - if (yych <= '/') goto yy403; + if (yych <= '/') goto yy405; if (yych <= '9') goto yy54; } else { if (yych <= '?') goto yy173; @@ -3071,20 +3086,20 @@ yy402: if (yych <= '^') { if (yych == '\\') goto yy174; } else { - if (yych <= '_') goto yy537; - if (yych <= '`') goto yy403; + if (yych <= '_') goto yy540; + if (yych <= '`') goto yy405; if (yych <= 'z') goto yy54; } } -yy403: -#line 200 "strict_cpp.re" +yy405: +#line 204 "strict_cpp.re" { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_XOR_ALT); } -#line 3083 "strict_cpp_re.inc" -yy404: +#line 3098 "strict_cpp_re.inc" +yy406: yych = *++YYCURSOR; - if (yych == '!') goto yy538; + if (yych == '!') goto yy541; goto yy100; -yy405: +yy407: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; @@ -3092,116 +3107,116 @@ yy405: goto yy98; } if (yych <= 0x1F) goto yy100; - if (yych <= '"') goto yy540; + if (yych <= '"') goto yy543; if (yych <= '?') goto yy103; - goto yy405; -yy407: + goto yy407; +yy409: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { if (yych <= '/') goto yy100; - if (yych <= '9') goto yy541; + if (yych <= '9') goto yy544; goto yy100; } else { - if (yych <= 'F') goto yy541; + if (yych <= 'F') goto yy544; if (yych <= '`') goto yy100; - if (yych <= 'f') goto yy541; + if (yych <= 'f') goto yy544; goto yy100; } -yy408: +yy410: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { if (yych <= '/') goto yy100; - if (yych <= '9') goto yy542; + if (yych <= '9') goto yy545; goto yy100; } else { - if (yych <= 'F') goto yy542; + if (yych <= 'F') goto yy545; if (yych <= '`') goto yy100; - if (yych <= 'f') goto yy542; + if (yych <= 'f') goto yy545; goto yy100; } -yy409: +yy411: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yybm[0+yych] & 32) { - goto yy409; + goto yy411; } if (yych <= 0x1F) { if (yych <= 0x08) goto yy100; - if (yych <= '\r') goto yy260; + if (yych <= '\r') goto yy261; goto yy100; } else { if (yych == '/') goto yy105; - goto yy260; + goto yy261; } -yy411: +yy413: ++YYCURSOR; -#line 162 "strict_cpp.re" +#line 166 "strict_cpp.re" { BOOST_WAVE_RET(T_POUND_POUND_TRIGRAPH); } -#line 3146 "strict_cpp_re.inc" -yy413: - yych = *++YYCURSOR; - if (yych == 'i') goto yy543; - goto yy100; -yy414: - yych = *++YYCURSOR; - if (yych == 'f') goto yy544; - goto yy100; +#line 3161 "strict_cpp_re.inc" yy415: yych = *++YYCURSOR; - if (yych == 'e') goto yy546; + if (yych == 'i') goto yy546; goto yy100; yy416: yych = *++YYCURSOR; - if (yych == 'i') goto yy548; - if (yych == 'r') goto yy549; + if (yych == 'f') goto yy547; goto yy100; yy417: yych = *++YYCURSOR; - if (yych == 'o') goto yy550; + if (yych == 'e') goto yy549; goto yy100; yy418: yych = *++YYCURSOR; - if (yych == 'e') goto yy551; + if (yych == 'i') goto yy551; + if (yych == 'r') goto yy552; goto yy100; yy419: yych = *++YYCURSOR; - if (yych == 'd') goto yy552; + if (yych == 'o') goto yy553; goto yy100; yy420: yych = *++YYCURSOR; - if (yych == 'l') goto yy553; + if (yych == 'e') goto yy554; goto yy100; yy421: yych = *++YYCURSOR; - if (yych == 'e') goto yy554; + if (yych == 'd') goto yy555; goto yy100; yy422: yych = *++YYCURSOR; - if (yych == 'g') goto yy556; + if (yych == 'l') goto yy556; goto yy100; yy423: yych = *++YYCURSOR; - if (yych == 'i') goto yy557; + if (yych == 'e') goto yy557; goto yy100; yy424: yych = *++YYCURSOR; - if (yych == 'e') goto yy558; + if (yych == 'g') goto yy559; goto yy100; yy425: yych = *++YYCURSOR; - if (yych == 'n') goto yy559; + if (yych == 'i') goto yy560; goto yy100; yy426: + yych = *++YYCURSOR; + if (yych == 'e') goto yy561; + goto yy100; +yy427: + yych = *++YYCURSOR; + if (yych == 'n') goto yy562; + goto yy100; +yy428: ++YYCURSOR; -#line 165 "strict_cpp.re" +#line 169 "strict_cpp.re" { BOOST_WAVE_RET(T_POUND_POUND_ALT); } -#line 3204 "strict_cpp_re.inc" -yy428: +#line 3219 "strict_cpp_re.inc" +yy430: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; @@ -3209,120 +3224,120 @@ yy428: goto yy129; } if (yych <= 0x1F) goto yy100; - if (yych <= '\'') goto yy560; + if (yych <= '\'') goto yy563; if (yych <= '?') goto yy131; - goto yy428; -yy430: + goto yy430; +yy432: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { if (yych <= '/') goto yy100; - if (yych <= '9') goto yy561; + if (yych <= '9') goto yy564; goto yy100; } else { - if (yych <= 'F') goto yy561; + if (yych <= 'F') goto yy564; if (yych <= '`') goto yy100; - if (yych <= 'f') goto yy561; + if (yych <= 'f') goto yy564; goto yy100; } -yy431: +yy433: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { if (yych <= '/') goto yy100; - if (yych <= '9') goto yy562; + if (yych <= '9') goto yy565; goto yy100; } else { - if (yych <= 'F') goto yy562; + if (yych <= 'F') goto yy565; if (yych <= '`') goto yy100; - if (yych <= 'f') goto yy562; + if (yych <= 'f') goto yy565; goto yy100; } -yy432: +yy434: ++YYCURSOR; -#line 226 "strict_cpp.re" +#line 230 "strict_cpp.re" { BOOST_WAVE_RET(T_ORASSIGN_TRIGRAPH); } -#line 3248 "strict_cpp_re.inc" -yy434: +#line 3263 "strict_cpp_re.inc" +yy436: yych = *++YYCURSOR; - if (yych == '?') goto yy563; + if (yych == '?') goto yy566; goto yy100; -yy435: +yy437: ++YYCURSOR; -#line 249 "strict_cpp.re" +#line 253 "strict_cpp.re" { BOOST_WAVE_RET(T_OROR_TRIGRAPH); } -#line 3257 "strict_cpp_re.inc" -yy437: +#line 3272 "strict_cpp_re.inc" +yy439: ++YYCURSOR; -#line 221 "strict_cpp.re" +#line 225 "strict_cpp.re" { BOOST_WAVE_RET(T_XORASSIGN_TRIGRAPH); } -#line 3262 "strict_cpp_re.inc" -yy439: +#line 3277 "strict_cpp_re.inc" +yy441: ++YYCURSOR; -#line 163 "strict_cpp.re" +#line 167 "strict_cpp.re" { BOOST_WAVE_RET(T_POUND_POUND_TRIGRAPH); } -#line 3267 "strict_cpp_re.inc" -yy441: +#line 3282 "strict_cpp_re.inc" +yy443: yych = *++YYCURSOR; - if (yych == '?') goto yy564; + if (yych == '?') goto yy567; goto yy100; -yy442: +yy444: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { if (yych <= '/') goto yy100; - if (yych <= '9') goto yy565; + if (yych <= '9') goto yy568; goto yy100; } else { - if (yych <= 'F') goto yy565; + if (yych <= 'F') goto yy568; if (yych <= '`') goto yy100; - if (yych <= 'f') goto yy565; + if (yych <= 'f') goto yy568; goto yy100; } -yy443: +yy445: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { if (yych <= '/') goto yy100; - if (yych <= '9') goto yy566; + if (yych <= '9') goto yy569; goto yy100; } else { - if (yych <= 'F') goto yy566; + if (yych <= 'F') goto yy569; if (yych <= '`') goto yy100; - if (yych <= 'f') goto yy566; + if (yych <= 'f') goto yy569; goto yy100; } -yy444: +yy446: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'c') goto yy567; + if (yych == 'c') goto yy570; goto yy55; -yy445: +yy447: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'n') goto yy568; + if (yych == 'n') goto yy571; goto yy55; -yy446: +yy448: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy455; - if (yych == 't') goto yy569; + if (yych == 'l') goto yy457; + if (yych == 't') goto yy572; goto yy55; -yy447: +yy449: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy570; + if (yych == 'a') goto yy573; goto yy55; -yy448: +yy450: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'y') goto yy571; + if (yych == 'y') goto yy574; goto yy55; -yy449: +yy451: yyaccept = 22; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -3330,51 +3345,51 @@ yy449: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy450: -#line 144 "strict_cpp.re" - { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_ASM : T_IDENTIFIER); } -#line 3337 "strict_cpp_re.inc" -yy451: - yyaccept = 4; - yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy573; - goto yy55; yy452: - yyaccept = 4; - yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'c') goto yy574; - goto yy55; +#line 148 "strict_cpp.re" + { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_ASM : T_IDENTIFIER); } +#line 3352 "strict_cpp_re.inc" yy453: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy575; + if (yych == 'e') goto yy576; goto yy55; yy454: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy576; + if (yych == 'c') goto yy577; goto yy55; yy455: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy577; + if (yych == 'l') goto yy578; goto yy55; yy456: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'c') goto yy578; + if (yych == 't') goto yy579; goto yy55; yy457: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'n') goto yy579; + if (yych == 'i') goto yy580; goto yy55; yy458: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy580; + if (yych == 'c') goto yy581; goto yy55; yy459: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 'n') goto yy582; + goto yy55; +yy460: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 'e') goto yy583; + goto yy55; +yy461: yyaccept = 23; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -3382,21 +3397,21 @@ yy459: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy460: -#line 50 "strict_cpp.re" +yy462: +#line 53 "strict_cpp.re" { BOOST_WAVE_RET(T_AUTO); } -#line 3389 "strict_cpp_re.inc" -yy461: +#line 3404 "strict_cpp_re.inc" +yy463: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'n') goto yy581; + if (yych == 'n') goto yy584; goto yy55; -yy462: +yy464: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy582; + if (yych == 'r') goto yy585; goto yy55; -yy463: +yy465: yyaccept = 24; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -3404,16 +3419,16 @@ yy463: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy464: -#line 51 "strict_cpp.re" +yy466: +#line 54 "strict_cpp.re" { BOOST_WAVE_RET(T_BOOL); } -#line 3411 "strict_cpp_re.inc" -yy465: +#line 3426 "strict_cpp_re.inc" +yy467: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'k') goto yy584; + if (yych == 'k') goto yy587; goto yy55; -yy466: +yy468: yyaccept = 25; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -3421,29 +3436,29 @@ yy466: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy467: -#line 53 "strict_cpp.re" +yy469: +#line 56 "strict_cpp.re" { BOOST_WAVE_RET(T_CASE); } -#line 3428 "strict_cpp_re.inc" -yy468: +#line 3443 "strict_cpp_re.inc" +yy470: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'h') goto yy586; + if (yych == 'h') goto yy589; goto yy55; -yy469: +yy471: yyaccept = 26; yych = *(YYMARKER = ++YYCURSOR); if (yych <= '>') { if (yych <= '2') { - if (yych <= '/') goto yy470; - if (yych == '1') goto yy588; + if (yych <= '/') goto yy472; + if (yych == '1') goto yy591; goto yy54; } else { if (yych <= '7') { - if (yych <= '3') goto yy589; + if (yych <= '3') goto yy592; goto yy54; } else { - if (yych <= '8') goto yy590; + if (yych <= '8') goto yy593; if (yych <= '9') goto yy54; } } @@ -3459,54 +3474,44 @@ yy469: if (yych <= '_') { if (yych >= '_') goto yy54; } else { - if (yych <= '`') goto yy470; + if (yych <= '`') goto yy472; if (yych <= 'z') goto yy54; } } } -yy470: -#line 55 "strict_cpp.re" - { BOOST_WAVE_RET(T_CHAR); } -#line 3471 "strict_cpp_re.inc" -yy471: - yyaccept = 4; - yych = *(YYMARKER = ++YYCURSOR); - if (yych == 's') goto yy591; - goto yy55; yy472: - yyaccept = 4; - yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'w') goto yy593; - goto yy55; +#line 58 "strict_cpp.re" + { BOOST_WAVE_RET(T_CHAR); } +#line 3486 "strict_cpp_re.inc" yy473: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy594; + if (yych == 's') goto yy594; goto yy55; yy474: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy595; + if (yych == 'w') goto yy596; goto yy55; yy475: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy596; + if (yych == 'e') goto yy597; goto yy55; yy476: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy598; + if (yych == 'i') goto yy598; goto yy55; yy477: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy599; + if (yych == 'l') goto yy599; goto yy55; yy478: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy601; + if (yych == 'e') goto yy601; goto yy55; yy479: yyaccept = 4; @@ -3516,24 +3521,34 @@ yy479: yy480: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'u') goto yy603; + if (yych == 'i') goto yy604; goto yy55; yy481: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy604; + if (yych == 't') goto yy605; goto yy55; yy482: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy605; + if (yych == 'u') goto yy606; goto yy55; yy483: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'm') goto yy606; + if (yych == 't') goto yy607; goto yy55; yy484: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 'l') goto yy608; + goto yy55; +yy485: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 'm') goto yy609; + goto yy55; +yy486: yyaccept = 27; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -3541,11 +3556,11 @@ yy484: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy485: -#line 76 "strict_cpp.re" +yy487: +#line 79 "strict_cpp.re" { BOOST_WAVE_RET(T_ELSE); } -#line 3548 "strict_cpp_re.inc" -yy486: +#line 3563 "strict_cpp_re.inc" +yy488: yyaccept = 28; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -3553,41 +3568,41 @@ yy486: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy487: -#line 77 "strict_cpp.re" +yy489: +#line 80 "strict_cpp.re" { BOOST_WAVE_RET(T_ENUM); } -#line 3560 "strict_cpp_re.inc" -yy488: +#line 3575 "strict_cpp_re.inc" +yy490: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy607; + if (yych == 'i') goto yy610; goto yy55; -yy489: +yy491: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy608; + if (yych == 'r') goto yy611; goto yy55; -yy490: +yy492: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy609; + if (yych == 'r') goto yy612; goto yy55; -yy491: +yy493: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy610; + if (yych == 'e') goto yy613; goto yy55; -yy492: +yy494: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy612; + if (yych == 't') goto yy615; goto yy55; -yy493: +yy495: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'n') goto yy614; + if (yych == 'n') goto yy617; goto yy55; -yy494: +yy496: yyaccept = 29; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -3595,21 +3610,21 @@ yy494: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy495: -#line 85 "strict_cpp.re" +yy497: +#line 88 "strict_cpp.re" { BOOST_WAVE_RET(T_GOTO); } -#line 3602 "strict_cpp_re.inc" -yy496: +#line 3617 "strict_cpp_re.inc" +yy498: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy615; + if (yych == 'r') goto yy618; goto yy55; -yy497: +yy499: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'n') goto yy616; + if (yych == 'n') goto yy619; goto yy55; -yy498: +yy500: yyaccept = 30; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -3617,116 +3632,121 @@ yy498: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy499: -#line 90 "strict_cpp.re" - { BOOST_WAVE_RET(T_LONG); } -#line 3624 "strict_cpp_re.inc" -yy500: - yyaccept = 4; - yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'b') goto yy617; - goto yy55; yy501: - yyaccept = 4; - yych = *(YYMARKER = ++YYCURSOR); - if (yych == 's') goto yy618; - goto yy55; +#line 93 "strict_cpp.re" + { BOOST_WAVE_RET(T_LONG); } +#line 3639 "strict_cpp_re.inc" yy502: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'c') goto yy619; + if (yych == 'l') goto yy620; goto yy55; yy503: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy620; + if (yych == 'b') goto yy621; goto yy55; yy504: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'p') goto yy621; + if (yych == 's') goto yy622; goto yy55; yy505: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy622; + if (yych == 'c') goto yy623; goto yy55; yy506: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'q') goto yy623; + if (yych == 'e') goto yy624; goto yy55; yy507: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy625; + if (yych == 'p') goto yy625; goto yy55; yy508: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy626; + if (yych == 'a') goto yy626; goto yy55; yy509: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy627; + if (yych == 'q') goto yy627; goto yy55; yy510: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 's') goto yy628; + if (yych == 'a') goto yy629; goto yy55; yy511: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy629; + if (yych == 'e') goto yy630; goto yy55; yy512: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy630; + if (yych == 'i') goto yy631; goto yy55; yy513: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy631; + if (yych == 's') goto yy632; goto yy55; yy514: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy632; + if (yych == 't') goto yy633; goto yy55; yy515: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy634; + if (yych == 'i') goto yy634; goto yy55; yy516: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'o') goto yy635; + if (yych == 'r') goto yy635; goto yy55; yy517: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy636; + if (yych == 't') goto yy636; goto yy55; yy518: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'c') goto yy637; + if (yych == 'e') goto yy638; goto yy55; yy519: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'c') goto yy638; + if (yych == 'o') goto yy639; goto yy55; yy520: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy639; + if (yych == 'i') goto yy640; goto yy55; yy521: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 'c') goto yy641; + goto yy55; +yy522: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 'c') goto yy642; + goto yy55; +yy523: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 'l') goto yy643; + goto yy55; +yy524: yyaccept = 31; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -3734,21 +3754,21 @@ yy521: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy522: -#line 113 "strict_cpp.re" +yy525: +#line 117 "strict_cpp.re" { BOOST_WAVE_RET(T_THIS); } -#line 3741 "strict_cpp_re.inc" -yy523: +#line 3761 "strict_cpp_re.inc" +yy526: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy640; + if (yych == 'a') goto yy644; goto yy55; -yy524: +yy527: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'w') goto yy641; + if (yych == 'w') goto yy645; goto yy55; -yy525: +yy528: yyaccept = 32; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -3756,42 +3776,42 @@ yy525: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy526: -#line 116 "strict_cpp.re" +yy529: +#line 120 "strict_cpp.re" { BOOST_WAVE_RET(T_TRUE); } -#line 3763 "strict_cpp_re.inc" -yy527: +#line 3783 "strict_cpp_re.inc" +yy530: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); if (yych <= 'h') { - if (yych == 'd') goto yy643; + if (yych == 'd') goto yy647; goto yy55; } else { - if (yych <= 'i') goto yy644; - if (yych == 'n') goto yy645; + if (yych <= 'i') goto yy648; + if (yych == 'n') goto yy649; goto yy55; } -yy528: +yy531: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'n') goto yy646; + if (yych == 'n') goto yy650; goto yy55; -yy529: +yy532: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'g') goto yy648; + if (yych == 'g') goto yy652; goto yy55; -yy530: +yy533: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'g') goto yy649; + if (yych == 'g') goto yy653; goto yy55; -yy531: +yy534: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'u') goto yy651; + if (yych == 'u') goto yy655; goto yy55; -yy532: +yy535: yyaccept = 33; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -3799,36 +3819,36 @@ yy532: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy533: -#line 125 "strict_cpp.re" +yy536: +#line 129 "strict_cpp.re" { BOOST_WAVE_RET(T_VOID); } -#line 3806 "strict_cpp_re.inc" -yy534: +#line 3826 "strict_cpp_re.inc" +yy537: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy652; + if (yych == 't') goto yy656; goto yy55; -yy535: +yy538: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy653; + if (yych == 'r') goto yy657; goto yy55; -yy536: +yy539: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy654; + if (yych == 'e') goto yy658; goto yy55; -yy537: +yy540: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy656; + if (yych == 'e') goto yy660; goto yy55; -yy538: +yy541: ++YYCURSOR; -#line 250 "strict_cpp.re" +#line 254 "strict_cpp.re" { BOOST_WAVE_RET(T_OROR_TRIGRAPH); } -#line 3831 "strict_cpp_re.inc" -yy540: +#line 3851 "strict_cpp_re.inc" +yy543: yyaccept = 34; YYMARKER = ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); @@ -3840,94 +3860,94 @@ yy540: if (yych <= '"') goto yy101; if (yych <= '?') goto yy103; goto yy104; -yy541: +yy544: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { if (yych <= '/') goto yy100; - if (yych <= '9') goto yy657; + if (yych <= '9') goto yy661; goto yy100; } else { - if (yych <= 'F') goto yy657; + if (yych <= 'F') goto yy661; if (yych <= '`') goto yy100; - if (yych <= 'f') goto yy657; + if (yych <= 'f') goto yy661; goto yy100; } -yy542: +yy545: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { if (yych <= '/') goto yy100; - if (yych <= '9') goto yy259; + if (yych <= '9') goto yy260; goto yy100; } else { - if (yych <= 'F') goto yy259; + if (yych <= 'F') goto yy260; if (yych <= '`') goto yy100; - if (yych <= 'f') goto yy259; + if (yych <= 'f') goto yy260; goto yy100; } -yy543: +yy546: yych = *++YYCURSOR; - if (yych == 'n') goto yy658; + if (yych == 'n') goto yy662; goto yy100; -yy544: +yy547: ++YYCURSOR; -#line 329 "strict_cpp.re" +#line 333 "strict_cpp.re" { BOOST_WAVE_RET(T_PP_ELIF); } -#line 3880 "strict_cpp_re.inc" -yy546: +#line 3900 "strict_cpp_re.inc" +yy549: ++YYCURSOR; -#line 328 "strict_cpp.re" +#line 332 "strict_cpp.re" { BOOST_WAVE_RET(T_PP_ELSE); } -#line 3885 "strict_cpp_re.inc" -yy548: +#line 3905 "strict_cpp_re.inc" +yy551: yych = *++YYCURSOR; - if (yych == 'f') goto yy659; + if (yych == 'f') goto yy663; goto yy100; -yy549: +yy552: yych = *++YYCURSOR; - if (yych == 'e') goto yy661; + if (yych == 'e') goto yy665; goto yy100; -yy550: +yy553: yych = *++YYCURSOR; - if (yych == 'r') goto yy662; + if (yych == 'r') goto yy666; goto yy100; -yy551: +yy554: yych = *++YYCURSOR; - if (yych == 'f') goto yy664; + if (yych == 'f') goto yy668; goto yy100; -yy552: +yy555: yych = *++YYCURSOR; - if (yych == 'e') goto yy666; + if (yych == 'e') goto yy670; goto yy100; -yy553: +yy556: yych = *++YYCURSOR; - if (yych == 'u') goto yy667; + if (yych == 'u') goto yy671; goto yy100; -yy554: +yy557: ++YYCURSOR; -#line 333 "strict_cpp.re" +#line 337 "strict_cpp.re" { BOOST_WAVE_RET(T_PP_LINE); } -#line 3914 "strict_cpp_re.inc" -yy556: +#line 3934 "strict_cpp_re.inc" +yy559: yych = *++YYCURSOR; - if (yych == 'm') goto yy668; + if (yych == 'm') goto yy672; goto yy100; -yy557: +yy560: yych = *++YYCURSOR; - if (yych == 'o') goto yy669; + if (yych == 'o') goto yy673; goto yy100; -yy558: +yy561: yych = *++YYCURSOR; - if (yych == 'f') goto yy670; + if (yych == 'f') goto yy674; goto yy100; -yy559: +yy562: yych = *++YYCURSOR; - if (yych == 'i') goto yy672; + if (yych == 'i') goto yy676; goto yy100; -yy560: +yy563: yyaccept = 35; YYMARKER = ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); @@ -3935,47 +3955,47 @@ yy560: if (yybm[0+yych] & 2) { goto yy129; } - if (yych <= 0x1F) goto yy277; - if (yych <= '\'') goto yy276; + if (yych <= 0x1F) goto yy278; + if (yych <= '\'') goto yy277; if (yych <= '?') goto yy131; goto yy132; -yy561: +yy564: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { if (yych <= '/') goto yy100; - if (yych <= '9') goto yy673; + if (yych <= '9') goto yy677; goto yy100; } else { - if (yych <= 'F') goto yy673; + if (yych <= 'F') goto yy677; if (yych <= '`') goto yy100; - if (yych <= 'f') goto yy673; + if (yych <= 'f') goto yy677; goto yy100; } -yy562: +yy565: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { if (yych <= '/') goto yy100; - if (yych <= '9') goto yy282; + if (yych <= '9') goto yy283; goto yy100; } else { - if (yych <= 'F') goto yy282; + if (yych <= 'F') goto yy283; if (yych <= '`') goto yy100; - if (yych <= 'f') goto yy282; + if (yych <= 'f') goto yy283; goto yy100; } -yy563: +yy566: yych = *++YYCURSOR; - if (yych == '!') goto yy674; + if (yych == '!') goto yy678; goto yy100; -yy564: +yy567: yych = *++YYCURSOR; - if (yych == '=') goto yy676; + if (yych == '=') goto yy680; goto yy100; -yy565: +yy568: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; @@ -3989,7 +4009,7 @@ yy565: if (yych <= 'f') goto yy184; goto yy100; } -yy566: +yy569: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; @@ -4003,32 +4023,32 @@ yy566: if (yych <= 'f') goto yy54; goto yy100; } -yy567: +yy570: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy678; + if (yych == 'e') goto yy682; goto yy55; -yy568: +yy571: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy679; + if (yych == 'a') goto yy683; goto yy55; -yy569: +yy572: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); switch (yych) { - case '1': goto yy680; - case '3': goto yy681; - case '6': goto yy682; - case '8': goto yy683; + case '1': goto yy684; + case '3': goto yy685; + case '6': goto yy686; + case '8': goto yy687; default: goto yy55; } -yy570: +yy573: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'v') goto yy685; + if (yych == 'v') goto yy689; goto yy55; -yy571: +yy574: yyaccept = 36; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4036,57 +4056,57 @@ yy571: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy572: -#line 139 "strict_cpp.re" +yy575: +#line 143 "strict_cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_TRY : T_IDENTIFIER); } -#line 4043 "strict_cpp_re.inc" -yy573: +#line 4063 "strict_cpp_re.inc" +yy576: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'd') goto yy686; + if (yych == 'd') goto yy690; goto yy55; -yy574: +yy577: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy688; + if (yych == 'l') goto yy692; goto yy55; -yy575: +yy578: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 's') goto yy690; + if (yych == 's') goto yy694; goto yy55; -yy576: +yy579: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'c') goto yy691; + if (yych == 'c') goto yy695; goto yy55; -yy577: +yy580: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'n') goto yy692; + if (yych == 'n') goto yy696; goto yy55; -yy578: +yy581: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy693; + if (yych == 'a') goto yy697; goto yy55; -yy579: +yy582: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy694; - if (yych == 'o') goto yy695; + if (yych == 'a') goto yy698; + if (yych == 'o') goto yy699; goto yy55; -yy580: +yy583: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'q') goto yy696; + if (yych == 'q') goto yy700; goto yy55; -yy581: +yy584: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'd') goto yy698; + if (yych == 'd') goto yy702; goto yy55; -yy582: +yy585: yyaccept = 37; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4094,11 +4114,11 @@ yy582: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy583: -#line 204 "strict_cpp.re" +yy586: +#line 208 "strict_cpp.re" { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_OR_ALT); } -#line 4101 "strict_cpp_re.inc" -yy584: +#line 4121 "strict_cpp_re.inc" +yy587: yyaccept = 38; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4106,11 +4126,11 @@ yy584: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy585: -#line 52 "strict_cpp.re" +yy588: +#line 55 "strict_cpp.re" { BOOST_WAVE_RET(T_BREAK); } -#line 4113 "strict_cpp_re.inc" -yy586: +#line 4133 "strict_cpp_re.inc" +yy589: yyaccept = 39; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4118,26 +4138,26 @@ yy586: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy587: -#line 54 "strict_cpp.re" +yy590: +#line 57 "strict_cpp.re" { BOOST_WAVE_RET(T_CATCH); } -#line 4125 "strict_cpp_re.inc" -yy588: +#line 4145 "strict_cpp_re.inc" +yy591: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == '6') goto yy700; + if (yych == '6') goto yy704; goto yy55; -yy589: +yy592: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == '2') goto yy701; + if (yych == '2') goto yy705; goto yy55; -yy590: +yy593: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == '_') goto yy702; + if (yych == '_') goto yy706; goto yy55; -yy591: +yy594: yyaccept = 40; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4145,26 +4165,26 @@ yy591: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy592: -#line 59 "strict_cpp.re" +yy595: +#line 62 "strict_cpp.re" { BOOST_WAVE_RET(T_CLASS); } -#line 4152 "strict_cpp_re.inc" -yy593: +#line 4172 "strict_cpp_re.inc" +yy596: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy703; + if (yych == 'a') goto yy707; goto yy55; -yy594: +yy597: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy704; + if (yych == 't') goto yy708; goto yy55; -yy595: +yy598: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy705; + if (yych == 'e') goto yy709; goto yy55; -yy596: +yy599: yyaccept = 41; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4172,92 +4192,92 @@ yy596: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy597: -#line 208 "strict_cpp.re" +yy600: +#line 212 "strict_cpp.re" { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_COMPL_ALT); } -#line 4179 "strict_cpp_re.inc" -yy598: +#line 4199 "strict_cpp_re.inc" +yy601: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'p') goto yy706; + if (yych == 'p') goto yy710; goto yy55; -yy599: +yy602: yyaccept = 42; yych = *(YYMARKER = ++YYCURSOR); if (yych <= '\\') { if (yych <= '?') { - if (yych <= '/') goto yy600; + if (yych <= '/') goto yy603; if (yych <= '9') goto yy54; if (yych >= '?') goto yy173; } else { - if (yych <= '@') goto yy600; + if (yych <= '@') goto yy603; if (yych <= 'Z') goto yy54; if (yych >= '\\') goto yy174; } } else { if (yych <= 'd') { - if (yych == '_') goto yy707; + if (yych == '_') goto yy711; if (yych >= 'a') goto yy54; } else { if (yych <= 'h') { - if (yych <= 'e') goto yy708; + if (yych <= 'e') goto yy712; goto yy54; } else { - if (yych <= 'i') goto yy709; + if (yych <= 'i') goto yy713; if (yych <= 'z') goto yy54; } } } -yy600: -#line 61 "strict_cpp.re" +yy603: +#line 64 "strict_cpp.re" { BOOST_WAVE_RET(T_CONST); } -#line 4215 "strict_cpp_re.inc" -yy601: +#line 4235 "strict_cpp_re.inc" +yy604: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'n') goto yy710; + if (yych == 'n') goto yy714; goto yy55; -yy602: +yy605: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'y') goto yy711; + if (yych == 'y') goto yy715; goto yy55; -yy603: +yy606: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy712; + if (yych == 'l') goto yy716; goto yy55; -yy604: +yy607: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy713; + if (yych == 'e') goto yy717; goto yy55; -yy605: +yy608: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy715; + if (yych == 'e') goto yy719; goto yy55; -yy606: +yy609: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy717; + if (yych == 'i') goto yy721; goto yy55; -yy607: +yy610: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'c') goto yy718; + if (yych == 'c') goto yy722; goto yy55; -yy608: +yy611: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy719; + if (yych == 't') goto yy723; goto yy55; -yy609: +yy612: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'n') goto yy721; + if (yych == 'n') goto yy725; goto yy55; -yy610: +yy613: yyaccept = 43; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4265,11 +4285,11 @@ yy610: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy611: -#line 81 "strict_cpp.re" +yy614: +#line 84 "strict_cpp.re" { BOOST_WAVE_RET(T_FALSE); } -#line 4272 "strict_cpp_re.inc" -yy612: +#line 4292 "strict_cpp_re.inc" +yy615: yyaccept = 44; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4277,56 +4297,61 @@ yy612: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy613: -#line 82 "strict_cpp.re" +yy616: +#line 85 "strict_cpp.re" { BOOST_WAVE_RET(T_FLOAT); } -#line 4284 "strict_cpp_re.inc" -yy614: +#line 4304 "strict_cpp_re.inc" +yy617: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'd') goto yy723; + if (yych == 'd') goto yy727; goto yy55; -yy615: +yy618: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy725; + if (yych == 't') goto yy729; goto yy55; -yy616: +yy619: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy727; + if (yych == 'e') goto yy731; goto yy55; -yy617: +yy620: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy729; + if (yych == 'e') goto yy733; goto yy55; -yy618: +yy621: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'p') goto yy730; + if (yych == 'l') goto yy735; goto yy55; -yy619: +yy622: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy731; + if (yych == 'p') goto yy736; goto yy55; -yy620: +yy623: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'q') goto yy732; + if (yych == 'e') goto yy737; goto yy55; -yy621: +yy624: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy734; + if (yych == 'q') goto yy738; goto yy55; -yy622: +yy625: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy735; + if (yych == 't') goto yy740; goto yy55; -yy623: +yy626: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 't') goto yy741; + goto yy55; +yy627: yyaccept = 45; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4334,46 +4359,46 @@ yy623: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy624: -#line 225 "strict_cpp.re" +yy628: +#line 229 "strict_cpp.re" { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_ORASSIGN_ALT); } -#line 4341 "strict_cpp_re.inc" -yy625: +#line 4366 "strict_cpp_re.inc" +yy629: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy736; + if (yych == 't') goto yy742; goto yy55; -yy626: +yy630: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'c') goto yy737; + if (yych == 'c') goto yy743; goto yy55; -yy627: +yy631: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'c') goto yy738; + if (yych == 'c') goto yy744; goto yy55; -yy628: +yy632: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy740; + if (yych == 't') goto yy746; goto yy55; -yy629: +yy633: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy741; + if (yych == 'e') goto yy747; goto yy55; -yy630: +yy634: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy742; + if (yych == 'r') goto yy748; goto yy55; -yy631: +yy635: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'n') goto yy743; + if (yych == 'n') goto yy749; goto yy55; -yy632: +yy636: yyaccept = 46; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4381,46 +4406,46 @@ yy632: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy633: -#line 104 "strict_cpp.re" +yy637: +#line 108 "strict_cpp.re" { BOOST_WAVE_RET(T_SHORT); } -#line 4388 "strict_cpp_re.inc" -yy634: +#line 4413 "strict_cpp_re.inc" +yy638: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'd') goto yy745; + if (yych == 'd') goto yy751; goto yy55; -yy635: +yy639: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'f') goto yy747; + if (yych == 'f') goto yy753; goto yy55; -yy636: +yy640: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'c') goto yy749; + if (yych == 'c') goto yy755; goto yy55; -yy637: +yy641: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy751; + if (yych == 't') goto yy757; goto yy55; -yy638: +yy642: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'h') goto yy753; + if (yych == 'h') goto yy759; goto yy55; -yy639: +yy643: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy755; + if (yych == 'a') goto yy761; goto yy55; -yy640: +yy644: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'd') goto yy756; + if (yych == 'd') goto yy762; goto yy55; -yy641: +yy645: yyaccept = 47; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4428,26 +4453,26 @@ yy641: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy642: -#line 115 "strict_cpp.re" +yy646: +#line 119 "strict_cpp.re" { BOOST_WAVE_RET(T_THROW); } -#line 4435 "strict_cpp_re.inc" -yy643: +#line 4460 "strict_cpp_re.inc" +yy647: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy757; + if (yych == 'e') goto yy763; goto yy55; -yy644: +yy648: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'd') goto yy758; + if (yych == 'd') goto yy764; goto yy55; -yy645: +yy649: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy760; + if (yych == 'a') goto yy766; goto yy55; -yy646: +yy650: yyaccept = 48; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4455,16 +4480,16 @@ yy646: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy647: -#line 121 "strict_cpp.re" +yy651: +#line 125 "strict_cpp.re" { BOOST_WAVE_RET(T_UNION); } -#line 4462 "strict_cpp_re.inc" -yy648: +#line 4487 "strict_cpp_re.inc" +yy652: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'n') goto yy761; + if (yych == 'n') goto yy767; goto yy55; -yy649: +yy653: yyaccept = 49; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4472,26 +4497,26 @@ yy649: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy650: -#line 123 "strict_cpp.re" +yy654: +#line 127 "strict_cpp.re" { BOOST_WAVE_RET(T_USING); } -#line 4479 "strict_cpp_re.inc" -yy651: +#line 4504 "strict_cpp_re.inc" +yy655: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy762; + if (yych == 'a') goto yy768; goto yy55; -yy652: +yy656: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy763; + if (yych == 'i') goto yy769; goto yy55; -yy653: +yy657: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == '_') goto yy764; + if (yych == '_') goto yy770; goto yy55; -yy654: +yy658: yyaccept = 50; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4499,127 +4524,127 @@ yy654: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy655: -#line 128 "strict_cpp.re" +yy659: +#line 132 "strict_cpp.re" { BOOST_WAVE_RET(T_WHILE); } -#line 4506 "strict_cpp_re.inc" -yy656: +#line 4531 "strict_cpp_re.inc" +yy660: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'q') goto yy765; + if (yych == 'q') goto yy771; goto yy55; -yy657: +yy661: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { if (yych <= '/') goto yy100; - if (yych <= '9') goto yy258; + if (yych <= '9') goto yy259; goto yy100; } else { - if (yych <= 'F') goto yy258; + if (yych <= 'F') goto yy259; if (yych <= '`') goto yy100; - if (yych <= 'f') goto yy258; + if (yych <= 'f') goto yy259; goto yy100; } -yy658: +yy662: yych = *++YYCURSOR; - if (yych == 'e') goto yy767; + if (yych == 'e') goto yy773; goto yy100; -yy659: +yy663: ++YYCURSOR; -#line 330 "strict_cpp.re" +#line 334 "strict_cpp.re" { BOOST_WAVE_RET(T_PP_ENDIF); } -#line 4534 "strict_cpp_re.inc" -yy661: +#line 4559 "strict_cpp_re.inc" +yy665: yych = *++YYCURSOR; - if (yych == 'g') goto yy769; + if (yych == 'g') goto yy775; goto yy100; -yy662: +yy666: ++YYCURSOR; -#line 334 "strict_cpp.re" +#line 338 "strict_cpp.re" { BOOST_WAVE_RET(T_PP_ERROR); } -#line 4543 "strict_cpp_re.inc" -yy664: +#line 4568 "strict_cpp_re.inc" +yy668: ++YYCURSOR; -#line 326 "strict_cpp.re" +#line 330 "strict_cpp.re" { BOOST_WAVE_RET(T_PP_IFDEF); } -#line 4548 "strict_cpp_re.inc" -yy666: +#line 4573 "strict_cpp_re.inc" +yy670: yych = *++YYCURSOR; - if (yych == 'f') goto yy770; + if (yych == 'f') goto yy776; goto yy100; -yy667: +yy671: yych = *++YYCURSOR; - if (yych == 'd') goto yy772; + if (yych == 'd') goto yy778; goto yy100; -yy668: +yy672: yych = *++YYCURSOR; - if (yych == 'a') goto yy773; + if (yych == 'a') goto yy779; goto yy100; -yy669: +yy673: yych = *++YYCURSOR; - if (yych == 'n') goto yy775; + if (yych == 'n') goto yy781; goto yy100; -yy670: +yy674: ++YYCURSOR; -#line 332 "strict_cpp.re" +#line 336 "strict_cpp.re" { BOOST_WAVE_RET(T_PP_UNDEF); } -#line 4569 "strict_cpp_re.inc" -yy672: +#line 4594 "strict_cpp_re.inc" +yy676: yych = *++YYCURSOR; - if (yych == 'n') goto yy777; + if (yych == 'n') goto yy783; goto yy100; -yy673: +yy677: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { if (yych <= '/') goto yy100; - if (yych <= '9') goto yy281; + if (yych <= '9') goto yy282; goto yy100; } else { - if (yych <= 'F') goto yy281; + if (yych <= 'F') goto yy282; if (yych <= '`') goto yy100; - if (yych <= 'f') goto yy281; + if (yych <= 'f') goto yy282; goto yy100; } -yy674: +yy678: ++YYCURSOR; -#line 252 "strict_cpp.re" +#line 256 "strict_cpp.re" { BOOST_WAVE_RET(T_OROR_TRIGRAPH); } -#line 4592 "strict_cpp_re.inc" -yy676: +#line 4617 "strict_cpp_re.inc" +yy680: ++YYCURSOR; -#line 164 "strict_cpp.re" +#line 168 "strict_cpp.re" { BOOST_WAVE_RET(T_POUND_POUND_TRIGRAPH); } -#line 4597 "strict_cpp_re.inc" -yy678: +#line 4622 "strict_cpp_re.inc" +yy682: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'p') goto yy778; + if (yych == 'p') goto yy784; goto yy55; -yy679: +yy683: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy779; + if (yych == 'l') goto yy785; goto yy55; -yy680: +yy684: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == '6') goto yy780; + if (yych == '6') goto yy786; goto yy55; -yy681: +yy685: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == '2') goto yy782; + if (yych == '2') goto yy788; goto yy55; -yy682: +yy686: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == '4') goto yy784; + if (yych == '4') goto yy790; goto yy55; -yy683: +yy687: yyaccept = 51; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4627,16 +4652,16 @@ yy683: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy684: -#line 130 "strict_cpp.re" +yy688: +#line 134 "strict_cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_INT8 : T_IDENTIFIER); } -#line 4634 "strict_cpp_re.inc" -yy685: +#line 4659 "strict_cpp_re.inc" +yy689: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy786; + if (yych == 'e') goto yy792; goto yy55; -yy686: +yy690: yyaccept = 52; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4644,11 +4669,11 @@ yy686: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy687: -#line 134 "strict_cpp.re" +yy691: +#line 138 "strict_cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_BASED : T_IDENTIFIER); } -#line 4651 "strict_cpp_re.inc" -yy688: +#line 4676 "strict_cpp_re.inc" +yy692: yyaccept = 53; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4656,41 +4681,41 @@ yy688: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy689: -#line 136 "strict_cpp.re" +yy693: +#line 140 "strict_cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_CDECL : T_IDENTIFIER); } -#line 4663 "strict_cpp_re.inc" -yy690: +#line 4688 "strict_cpp_re.inc" +yy694: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'p') goto yy788; + if (yych == 'p') goto yy794; goto yy55; -yy691: +yy695: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy789; + if (yych == 'a') goto yy795; goto yy55; -yy692: +yy696: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy790; + if (yych == 'e') goto yy796; goto yy55; -yy693: +yy697: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy792; + if (yych == 'l') goto yy798; goto yy55; -yy694: +yy698: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 's') goto yy793; + if (yych == 's') goto yy799; goto yy55; -yy695: +yy699: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'f') goto yy795; + if (yych == 'f') goto yy801; goto yy55; -yy696: +yy700: yyaccept = 54; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4698,11 +4723,11 @@ yy696: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy697: -#line 223 "strict_cpp.re" +yy701: +#line 227 "strict_cpp.re" { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_ANDASSIGN_ALT); } -#line 4705 "strict_cpp_re.inc" -yy698: +#line 4730 "strict_cpp_re.inc" +yy702: yyaccept = 55; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4710,77 +4735,77 @@ yy698: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy699: -#line 202 "strict_cpp.re" +yy703: +#line 206 "strict_cpp.re" { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_AND_ALT); } -#line 4717 "strict_cpp_re.inc" -yy700: +#line 4742 "strict_cpp_re.inc" +yy704: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == '_') goto yy797; + if (yych == '_') goto yy803; goto yy55; -yy701: +yy705: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == '_') goto yy798; + if (yych == '_') goto yy804; goto yy55; -yy702: +yy706: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy799; + if (yych == 't') goto yy805; goto yy55; -yy703: +yy707: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy801; + if (yych == 'i') goto yy807; goto yy55; -yy704: +yy708: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'u') goto yy802; + if (yych == 'u') goto yy808; goto yy55; -yy705: +yy709: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy803; + if (yych == 'l') goto yy809; goto yy55; -yy706: +yy710: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy804; + if (yych == 't') goto yy810; goto yy55; -yy707: +yy711: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'c') goto yy806; + if (yych == 'c') goto yy812; goto yy55; -yy708: +yy712: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'v') goto yy807; - if (yych == 'x') goto yy808; + if (yych == 'v') goto yy813; + if (yych == 'x') goto yy814; goto yy55; -yy709: +yy713: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'n') goto yy809; + if (yych == 'n') goto yy815; goto yy55; -yy710: +yy714: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'u') goto yy810; + if (yych == 'u') goto yy816; goto yy55; -yy711: +yy715: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'p') goto yy811; + if (yych == 'p') goto yy817; goto yy55; -yy712: +yy716: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy812; + if (yych == 't') goto yy818; goto yy55; -yy713: +yy717: yyaccept = 56; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4788,11 +4813,11 @@ yy713: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy714: -#line 72 "strict_cpp.re" +yy718: +#line 75 "strict_cpp.re" { BOOST_WAVE_RET(T_DELETE); } -#line 4795 "strict_cpp_re.inc" -yy715: +#line 4820 "strict_cpp_re.inc" +yy719: yyaccept = 57; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4800,21 +4825,21 @@ yy715: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy716: -#line 74 "strict_cpp.re" +yy720: +#line 77 "strict_cpp.re" { BOOST_WAVE_RET(T_DOUBLE); } -#line 4807 "strict_cpp_re.inc" -yy717: +#line 4832 "strict_cpp_re.inc" +yy721: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'c') goto yy814; + if (yych == 'c') goto yy820; goto yy55; -yy718: +yy722: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy815; + if (yych == 'i') goto yy821; goto yy55; -yy719: +yy723: yyaccept = 58; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4822,11 +4847,11 @@ yy719: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy720: -#line 79 "strict_cpp.re" +yy724: +#line 82 "strict_cpp.re" { BOOST_WAVE_RET(T_EXPORT); } -#line 4829 "strict_cpp_re.inc" -yy721: +#line 4854 "strict_cpp_re.inc" +yy725: yyaccept = 59; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4834,11 +4859,11 @@ yy721: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy722: -#line 80 "strict_cpp.re" +yy726: +#line 83 "strict_cpp.re" { BOOST_WAVE_RET(T_EXTERN); } -#line 4841 "strict_cpp_re.inc" -yy723: +#line 4866 "strict_cpp_re.inc" +yy727: yyaccept = 60; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4846,11 +4871,11 @@ yy723: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy724: -#line 84 "strict_cpp.re" +yy728: +#line 87 "strict_cpp.re" { BOOST_WAVE_RET(T_FRIEND); } -#line 4853 "strict_cpp_re.inc" -yy725: +#line 4878 "strict_cpp_re.inc" +yy729: yyaccept = 61; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4858,11 +4883,11 @@ yy725: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy726: -#line 87 "strict_cpp.re" +yy730: +#line 90 "strict_cpp.re" { BOOST_WAVE_RET(s->enable_import_keyword ? T_IMPORT : T_IDENTIFIER); } -#line 4865 "strict_cpp_re.inc" -yy727: +#line 4890 "strict_cpp_re.inc" +yy731: yyaccept = 62; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4870,26 +4895,11 @@ yy727: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy728: -#line 88 "strict_cpp.re" - { BOOST_WAVE_RET(T_INLINE); } -#line 4877 "strict_cpp_re.inc" -yy729: - yyaccept = 4; - yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy816; - goto yy55; -yy730: - yyaccept = 4; - yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy818; - goto yy55; -yy731: - yyaccept = 4; - yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'p') goto yy819; - goto yy55; yy732: +#line 91 "strict_cpp.re" + { BOOST_WAVE_RET(T_INLINE); } +#line 4902 "strict_cpp_re.inc" +yy733: yyaccept = 63; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4897,29 +4907,24 @@ yy732: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy733: -#line 233 "strict_cpp.re" - { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_NOTEQUAL_ALT); } -#line 4904 "strict_cpp_re.inc" yy734: - yyaccept = 4; - yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy820; - goto yy55; +#line 94 "strict_cpp.re" + { BOOST_WAVE_RET(s->act_in_cpp2a_mode ? T_MODULE : T_IDENTIFIER); } +#line 4914 "strict_cpp_re.inc" yy735: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'o') goto yy822; + if (yych == 'e') goto yy822; goto yy55; yy736: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy823; + if (yych == 'a') goto yy824; goto yy55; yy737: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy825; + if (yych == 'p') goto yy825; goto yy55; yy738: yyaccept = 64; @@ -4930,25 +4935,30 @@ yy738: if (yych == '?') goto yy173; if (yych == '\\') goto yy174; yy739: -#line 99 "strict_cpp.re" - { BOOST_WAVE_RET(T_PUBLIC); } -#line 4936 "strict_cpp_re.inc" +#line 237 "strict_cpp.re" + { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_NOTEQUAL_ALT); } +#line 4941 "strict_cpp_re.inc" yy740: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy826; + if (yych == 'r') goto yy826; goto yy55; yy741: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy827; + if (yych == 'o') goto yy828; goto yy55; yy742: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy828; + if (yych == 'e') goto yy829; goto yy55; yy743: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 't') goto yy831; + goto yy55; +yy744: yyaccept = 65; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4956,11 +4966,26 @@ yy743: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy744: -#line 103 "strict_cpp.re" - { BOOST_WAVE_RET(T_RETURN); } -#line 4963 "strict_cpp_re.inc" yy745: +#line 103 "strict_cpp.re" + { BOOST_WAVE_RET(T_PUBLIC); } +#line 4973 "strict_cpp_re.inc" +yy746: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 'e') goto yy832; + goto yy55; +yy747: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 'r') goto yy833; + goto yy55; +yy748: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == 'e') goto yy834; + goto yy55; +yy749: yyaccept = 66; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4968,11 +4993,11 @@ yy745: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy746: -#line 105 "strict_cpp.re" - { BOOST_WAVE_RET(T_SIGNED); } -#line 4975 "strict_cpp_re.inc" -yy747: +yy750: +#line 107 "strict_cpp.re" + { BOOST_WAVE_RET(T_RETURN); } +#line 5000 "strict_cpp_re.inc" +yy751: yyaccept = 67; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { @@ -4980,16 +5005,28 @@ yy747: } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy748: -#line 106 "strict_cpp.re" - { BOOST_WAVE_RET(T_SIZEOF); } -#line 4987 "strict_cpp_re.inc" -yy749: +yy752: +#line 109 "strict_cpp.re" + { BOOST_WAVE_RET(T_SIGNED); } +#line 5012 "strict_cpp_re.inc" +yy753: yyaccept = 68; yych = *(YYMARKER = ++YYCURSOR); + if (yybm[256+yych] & 128) { + goto yy54; + } + if (yych == '?') goto yy173; + if (yych == '\\') goto yy174; +yy754: +#line 110 "strict_cpp.re" + { BOOST_WAVE_RET(T_SIZEOF); } +#line 5024 "strict_cpp_re.inc" +yy755: + yyaccept = 69; + yych = *(YYMARKER = ++YYCURSOR); if (yych <= 'Z') { if (yych <= '>') { - if (yych <= '/') goto yy750; + if (yych <= '/') goto yy756; if (yych <= '9') goto yy54; } else { if (yych <= '?') goto yy173; @@ -4999,1203 +5036,1203 @@ yy749: if (yych <= '^') { if (yych == '\\') goto yy174; } else { - if (yych <= '_') goto yy829; - if (yych <= '`') goto yy750; + if (yych <= '_') goto yy835; + if (yych <= '`') goto yy756; if (yych <= 'z') goto yy54; } } -yy750: -#line 107 "strict_cpp.re" +yy756: +#line 111 "strict_cpp.re" { BOOST_WAVE_RET(T_STATIC); } -#line 5011 "strict_cpp_re.inc" -yy751: - yyaccept = 69; +#line 5048 "strict_cpp_re.inc" +yy757: + yyaccept = 70; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy752: -#line 110 "strict_cpp.re" +yy758: +#line 114 "strict_cpp.re" { BOOST_WAVE_RET(T_STRUCT); } -#line 5023 "strict_cpp_re.inc" -yy753: - yyaccept = 70; +#line 5060 "strict_cpp_re.inc" +yy759: + yyaccept = 71; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy754: -#line 111 "strict_cpp.re" +yy760: +#line 115 "strict_cpp.re" { BOOST_WAVE_RET(T_SWITCH); } -#line 5035 "strict_cpp_re.inc" -yy755: +#line 5072 "strict_cpp_re.inc" +yy761: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy830; + if (yych == 't') goto yy836; goto yy55; -yy756: +yy762: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == '_') goto yy831; + if (yych == '_') goto yy837; goto yy55; -yy757: +yy763: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'f') goto yy832; + if (yych == 'f') goto yy838; goto yy55; -yy758: - yyaccept = 71; +yy764: + yyaccept = 72; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy759: -#line 119 "strict_cpp.re" +yy765: +#line 123 "strict_cpp.re" { BOOST_WAVE_RET(T_TYPEID); } -#line 5062 "strict_cpp_re.inc" -yy760: +#line 5099 "strict_cpp_re.inc" +yy766: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'm') goto yy834; + if (yych == 'm') goto yy840; goto yy55; -yy761: +yy767: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy835; + if (yych == 'e') goto yy841; goto yy55; -yy762: +yy768: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy836; + if (yych == 'l') goto yy842; goto yy55; -yy763: +yy769: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy838; + if (yych == 'l') goto yy844; goto yy55; -yy764: +yy770: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy839; + if (yych == 't') goto yy845; goto yy55; -yy765: - yyaccept = 72; +yy771: + yyaccept = 73; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy766: -#line 220 "strict_cpp.re" +yy772: +#line 224 "strict_cpp.re" { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_XORASSIGN_ALT); } -#line 5099 "strict_cpp_re.inc" -yy767: +#line 5136 "strict_cpp_re.inc" +yy773: ++YYCURSOR; -#line 331 "strict_cpp.re" +#line 335 "strict_cpp.re" { BOOST_WAVE_RET(T_PP_DEFINE); } -#line 5104 "strict_cpp_re.inc" -yy769: +#line 5141 "strict_cpp_re.inc" +yy775: yych = *++YYCURSOR; - if (yych == 'i') goto yy841; + if (yych == 'i') goto yy847; goto yy100; -yy770: +yy776: ++YYCURSOR; -#line 327 "strict_cpp.re" +#line 331 "strict_cpp.re" { BOOST_WAVE_RET(T_PP_IFNDEF); } -#line 5113 "strict_cpp_re.inc" -yy772: +#line 5150 "strict_cpp_re.inc" +yy778: yych = *++YYCURSOR; - if (yych == 'e') goto yy842; + if (yych == 'e') goto yy848; goto yy100; -yy773: +yy779: ++YYCURSOR; -#line 335 "strict_cpp.re" +#line 339 "strict_cpp.re" { BOOST_WAVE_RET(T_PP_PRAGMA); } -#line 5122 "strict_cpp_re.inc" -yy775: +#line 5159 "strict_cpp_re.inc" +yy781: ++YYCURSOR; -#line 339 "strict_cpp.re" +#line 343 "strict_cpp.re" { BOOST_WAVE_RET(T_MSEXT_PP_REGION); } -#line 5127 "strict_cpp_re.inc" -yy777: +#line 5164 "strict_cpp_re.inc" +yy783: yych = *++YYCURSOR; - if (yych == 'g') goto yy844; + if (yych == 'g') goto yy850; goto yy100; -yy778: +yy784: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy846; + if (yych == 't') goto yy852; goto yy55; -yy779: +yy785: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy848; + if (yych == 'l') goto yy854; goto yy55; -yy780: - yyaccept = 73; +yy786: + yyaccept = 74; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy781: -#line 131 "strict_cpp.re" +yy787: +#line 135 "strict_cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_INT16 : T_IDENTIFIER); } -#line 5153 "strict_cpp_re.inc" -yy782: - yyaccept = 74; +#line 5190 "strict_cpp_re.inc" +yy788: + yyaccept = 75; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy783: -#line 132 "strict_cpp.re" +yy789: +#line 136 "strict_cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_INT32 : T_IDENTIFIER); } -#line 5165 "strict_cpp_re.inc" -yy784: - yyaccept = 75; +#line 5202 "strict_cpp_re.inc" +yy790: + yyaccept = 76; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy785: -#line 133 "strict_cpp.re" +yy791: +#line 137 "strict_cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_INT64 : T_IDENTIFIER); } -#line 5177 "strict_cpp_re.inc" -yy786: - yyaccept = 76; +#line 5214 "strict_cpp_re.inc" +yy792: + yyaccept = 77; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy787: -#line 142 "strict_cpp.re" +yy793: +#line 146 "strict_cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_LEAVE : T_IDENTIFIER); } -#line 5189 "strict_cpp_re.inc" -yy788: +#line 5226 "strict_cpp_re.inc" +yy794: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy849; + if (yych == 'e') goto yy855; goto yy55; -yy789: +yy795: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy850; + if (yych == 'l') goto yy856; goto yy55; -yy790: - yyaccept = 77; +yy796: + yyaccept = 78; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy791: -#line 143 "strict_cpp.re" +yy797: +#line 147 "strict_cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_INLINE : T_IDENTIFIER); } -#line 5211 "strict_cpp_re.inc" -yy792: +#line 5248 "strict_cpp_re.inc" +yy798: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy851; + if (yych == 'l') goto yy857; goto yy55; -yy793: - yyaccept = 78; +yy799: + yyaccept = 79; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy794: -#line 47 "strict_cpp.re" +yy800: +#line 50 "strict_cpp.re" { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_ALIGNAS : T_IDENTIFIER); } -#line 5228 "strict_cpp_re.inc" -yy795: - yyaccept = 79; +#line 5265 "strict_cpp_re.inc" +yy801: + yyaccept = 80; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy796: -#line 48 "strict_cpp.re" +yy802: +#line 51 "strict_cpp.re" { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_ALIGNOF : T_IDENTIFIER); } -#line 5240 "strict_cpp_re.inc" -yy797: +#line 5277 "strict_cpp_re.inc" +yy803: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy853; + if (yych == 't') goto yy859; goto yy55; -yy798: +yy804: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy855; + if (yych == 't') goto yy861; goto yy55; -yy799: - yyaccept = 80; +yy805: + yyaccept = 81; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy800: -#line 56 "strict_cpp.re" +yy806: +#line 59 "strict_cpp.re" { BOOST_WAVE_RET(s->act_in_cpp2a_mode ? T_CHAR8_T : T_IDENTIFIER); } -#line 5262 "strict_cpp_re.inc" -yy801: +#line 5299 "strict_cpp_re.inc" +yy807: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy857; + if (yych == 't') goto yy863; goto yy55; -yy802: +yy808: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy859; + if (yych == 'r') goto yy865; goto yy55; -yy803: +yy809: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'd') goto yy860; + if (yych == 'd') goto yy866; goto yy55; -yy804: - yyaccept = 81; +yy810: + yyaccept = 82; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy805: -#line 60 "strict_cpp.re" +yy811: +#line 63 "strict_cpp.re" { BOOST_WAVE_RET(s->act_in_cpp2a_mode ? T_CONCEPT : T_IDENTIFIER); } -#line 5289 "strict_cpp_re.inc" -yy806: +#line 5326 "strict_cpp_re.inc" +yy812: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy862; + if (yych == 'a') goto yy868; goto yy55; -yy807: +yy813: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy863; + if (yych == 'a') goto yy869; goto yy55; -yy808: +yy814: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'p') goto yy864; + if (yych == 'p') goto yy870; goto yy55; -yy809: +yy815: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'i') goto yy865; + if (yych == 'i') goto yy871; goto yy55; -yy810: +yy816: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy866; + if (yych == 'e') goto yy872; goto yy55; -yy811: +yy817: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy868; + if (yych == 'e') goto yy874; goto yy55; -yy812: - yyaccept = 82; +yy818: + yyaccept = 83; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy813: -#line 71 "strict_cpp.re" +yy819: +#line 74 "strict_cpp.re" { BOOST_WAVE_RET(T_DEFAULT); } -#line 5331 "strict_cpp_re.inc" -yy814: +#line 5368 "strict_cpp_re.inc" +yy820: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == '_') goto yy870; + if (yych == '_') goto yy876; goto yy55; -yy815: +yy821: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy871; + if (yych == 't') goto yy877; goto yy55; -yy816: - yyaccept = 83; +yy822: + yyaccept = 84; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy817: -#line 91 "strict_cpp.re" +yy823: +#line 95 "strict_cpp.re" { BOOST_WAVE_RET(T_MUTABLE); } -#line 5353 "strict_cpp_re.inc" -yy818: +#line 5390 "strict_cpp_re.inc" +yy824: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'c') goto yy873; + if (yych == 'c') goto yy879; goto yy55; -yy819: +yy825: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy874; + if (yych == 't') goto yy880; goto yy55; -yy820: - yyaccept = 84; +yy826: + yyaccept = 85; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy821: -#line 95 "strict_cpp.re" +yy827: +#line 99 "strict_cpp.re" { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_NULLPTR : T_IDENTIFIER); } -#line 5375 "strict_cpp_re.inc" -yy822: +#line 5412 "strict_cpp_re.inc" +yy828: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy876; + if (yych == 'r') goto yy882; goto yy55; -yy823: - yyaccept = 85; +yy829: + yyaccept = 86; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy824: -#line 97 "strict_cpp.re" +yy830: +#line 101 "strict_cpp.re" { BOOST_WAVE_RET(T_PRIVATE); } -#line 5392 "strict_cpp_re.inc" -yy825: +#line 5429 "strict_cpp_re.inc" +yy831: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy878; + if (yych == 'e') goto yy884; goto yy55; -yy826: +yy832: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy879; + if (yych == 'r') goto yy885; goto yy55; -yy827: +yy833: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'p') goto yy881; + if (yych == 'p') goto yy887; goto yy55; -yy828: +yy834: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 's') goto yy882; + if (yych == 's') goto yy888; goto yy55; -yy829: +yy835: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy884; - if (yych == 'c') goto yy885; + if (yych == 'a') goto yy890; + if (yych == 'c') goto yy891; goto yy55; -yy830: +yy836: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy886; + if (yych == 'e') goto yy892; goto yy55; -yy831: +yy837: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy888; + if (yych == 'l') goto yy894; goto yy55; -yy832: - yyaccept = 86; +yy838: + yyaccept = 87; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy833: -#line 118 "strict_cpp.re" +yy839: +#line 122 "strict_cpp.re" { BOOST_WAVE_RET(T_TYPEDEF); } -#line 5440 "strict_cpp_re.inc" -yy834: +#line 5477 "strict_cpp_re.inc" +yy840: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy889; + if (yych == 'e') goto yy895; goto yy55; -yy835: +yy841: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'd') goto yy891; + if (yych == 'd') goto yy897; goto yy55; -yy836: - yyaccept = 87; +yy842: + yyaccept = 88; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy837: -#line 124 "strict_cpp.re" +yy843: +#line 128 "strict_cpp.re" { BOOST_WAVE_RET(T_VIRTUAL); } -#line 5462 "strict_cpp_re.inc" -yy838: +#line 5499 "strict_cpp_re.inc" +yy844: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy893; + if (yych == 'e') goto yy899; goto yy55; -yy839: - yyaccept = 88; +yy845: + yyaccept = 89; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy840: -#line 127 "strict_cpp.re" +yy846: +#line 131 "strict_cpp.re" { BOOST_WAVE_RET(T_WCHART); } -#line 5479 "strict_cpp_re.inc" -yy841: +#line 5516 "strict_cpp_re.inc" +yy847: yych = *++YYCURSOR; - if (yych == 'o') goto yy895; + if (yych == 'o') goto yy901; goto yy100; -yy842: - yyaccept = 89; +yy848: + yyaccept = 90; yych = *(YYMARKER = ++YYCURSOR); - if (yych == '_') goto yy901; - goto yy897; -yy843: -#line 323 "strict_cpp.re" + if (yych == '_') goto yy907; + goto yy903; +yy849: +#line 327 "strict_cpp.re" { BOOST_WAVE_RET(T_PP_INCLUDE); } -#line 5492 "strict_cpp_re.inc" -yy844: +#line 5529 "strict_cpp_re.inc" +yy850: ++YYCURSOR; -#line 337 "strict_cpp.re" +#line 341 "strict_cpp.re" { BOOST_WAVE_RET(T_PP_WARNING); } -#line 5497 "strict_cpp_re.inc" -yy846: - yyaccept = 90; +#line 5534 "strict_cpp_re.inc" +yy852: + yyaccept = 91; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy847: -#line 140 "strict_cpp.re" +yy853: +#line 144 "strict_cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_EXCEPT : T_IDENTIFIER); } -#line 5509 "strict_cpp_re.inc" -yy848: +#line 5546 "strict_cpp_re.inc" +yy854: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'y') goto yy902; + if (yych == 'y') goto yy908; goto yy55; -yy849: +yy855: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'c') goto yy904; + if (yych == 'c') goto yy910; goto yy55; -yy850: +yy856: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy906; + if (yych == 'l') goto yy912; goto yy55; -yy851: - yyaccept = 91; +yy857: + yyaccept = 92; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy852: -#line 138 "strict_cpp.re" +yy858: +#line 142 "strict_cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_STDCALL : T_IDENTIFIER); } -#line 5536 "strict_cpp_re.inc" -yy853: - yyaccept = 92; +#line 5573 "strict_cpp_re.inc" +yy859: + yyaccept = 93; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy854: -#line 57 "strict_cpp.re" +yy860: +#line 60 "strict_cpp.re" { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_CHAR16_T : T_IDENTIFIER); } -#line 5548 "strict_cpp_re.inc" -yy855: - yyaccept = 93; +#line 5585 "strict_cpp_re.inc" +yy861: + yyaccept = 94; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy856: -#line 58 "strict_cpp.re" +yy862: +#line 61 "strict_cpp.re" { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_CHAR32_T : T_IDENTIFIER); } -#line 5560 "strict_cpp_re.inc" -yy857: - yyaccept = 94; +#line 5597 "strict_cpp_re.inc" +yy863: + yyaccept = 95; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy858: -#line 67 "strict_cpp.re" +yy864: +#line 70 "strict_cpp.re" { BOOST_WAVE_RET(s->act_in_cpp2a_mode ? T_CO_AWAIT : T_IDENTIFIER); } -#line 5572 "strict_cpp_re.inc" -yy859: +#line 5609 "strict_cpp_re.inc" +yy865: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'n') goto yy908; + if (yych == 'n') goto yy914; goto yy55; -yy860: - yyaccept = 95; +yy866: + yyaccept = 96; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy861: -#line 69 "strict_cpp.re" +yy867: +#line 72 "strict_cpp.re" { BOOST_WAVE_RET(s->act_in_cpp2a_mode ? T_CO_YIELD : T_IDENTIFIER); } -#line 5589 "strict_cpp_re.inc" -yy862: +#line 5626 "strict_cpp_re.inc" +yy868: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 's') goto yy910; + if (yych == 's') goto yy916; goto yy55; -yy863: +yy869: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy911; + if (yych == 'l') goto yy917; goto yy55; -yy864: +yy870: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy913; + if (yych == 'r') goto yy919; goto yy55; -yy865: +yy871: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy915; + if (yych == 't') goto yy921; goto yy55; -yy866: - yyaccept = 96; +yy872: + yyaccept = 97; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy867: -#line 66 "strict_cpp.re" +yy873: +#line 69 "strict_cpp.re" { BOOST_WAVE_RET(T_CONTINUE); } -#line 5621 "strict_cpp_re.inc" -yy868: - yyaccept = 97; +#line 5658 "strict_cpp_re.inc" +yy874: + yyaccept = 98; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy869: -#line 70 "strict_cpp.re" +yy875: +#line 73 "strict_cpp.re" { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_DECLTYPE : T_IDENTIFIER); } -#line 5633 "strict_cpp_re.inc" -yy870: +#line 5670 "strict_cpp_re.inc" +yy876: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'c') goto yy917; + if (yych == 'c') goto yy923; goto yy55; -yy871: - yyaccept = 98; +yy877: + yyaccept = 99; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy872: -#line 78 "strict_cpp.re" +yy878: +#line 81 "strict_cpp.re" { BOOST_WAVE_RET(T_EXPLICIT); } -#line 5650 "strict_cpp_re.inc" -yy873: +#line 5687 "strict_cpp_re.inc" +yy879: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy918; + if (yych == 'e') goto yy924; goto yy55; -yy874: - yyaccept = 99; +yy880: + yyaccept = 100; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy875: -#line 94 "strict_cpp.re" +yy881: +#line 98 "strict_cpp.re" { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_NOEXCEPT : T_IDENTIFIER); } -#line 5667 "strict_cpp_re.inc" -yy876: - yyaccept = 100; +#line 5704 "strict_cpp_re.inc" +yy882: + yyaccept = 101; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy877: -#line 96 "strict_cpp.re" +yy883: +#line 100 "strict_cpp.re" { BOOST_WAVE_RET(T_OPERATOR); } -#line 5679 "strict_cpp_re.inc" -yy878: +#line 5716 "strict_cpp_re.inc" +yy884: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'd') goto yy920; + if (yych == 'd') goto yy926; goto yy55; -yy879: - yyaccept = 101; +yy885: + yyaccept = 102; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy880: -#line 100 "strict_cpp.re" +yy886: +#line 104 "strict_cpp.re" { BOOST_WAVE_RET(T_REGISTER); } -#line 5696 "strict_cpp_re.inc" -yy881: +#line 5733 "strict_cpp_re.inc" +yy887: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy922; + if (yych == 'r') goto yy928; goto yy55; -yy882: - yyaccept = 102; +yy888: + yyaccept = 103; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy883: -#line 102 "strict_cpp.re" +yy889: +#line 106 "strict_cpp.re" { BOOST_WAVE_RET(s->act_in_cpp2a_mode ? T_REQUIRES : T_IDENTIFIER); } -#line 5713 "strict_cpp_re.inc" -yy884: +#line 5750 "strict_cpp_re.inc" +yy890: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 's') goto yy923; + if (yych == 's') goto yy929; goto yy55; -yy885: +yy891: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy924; + if (yych == 'a') goto yy930; goto yy55; -yy886: - yyaccept = 103; +yy892: + yyaccept = 104; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy887: -#line 112 "strict_cpp.re" +yy893: +#line 116 "strict_cpp.re" { BOOST_WAVE_RET(T_TEMPLATE); } -#line 5735 "strict_cpp_re.inc" -yy888: +#line 5772 "strict_cpp_re.inc" +yy894: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'o') goto yy925; + if (yych == 'o') goto yy931; goto yy55; -yy889: - yyaccept = 104; +yy895: + yyaccept = 105; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy890: -#line 120 "strict_cpp.re" +yy896: +#line 124 "strict_cpp.re" { BOOST_WAVE_RET(T_TYPENAME); } -#line 5752 "strict_cpp_re.inc" -yy891: - yyaccept = 105; +#line 5789 "strict_cpp_re.inc" +yy897: + yyaccept = 106; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy892: -#line 122 "strict_cpp.re" +yy898: +#line 126 "strict_cpp.re" { BOOST_WAVE_RET(T_UNSIGNED); } -#line 5764 "strict_cpp_re.inc" -yy893: - yyaccept = 106; +#line 5801 "strict_cpp_re.inc" +yy899: + yyaccept = 107; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy894: -#line 126 "strict_cpp.re" +yy900: +#line 130 "strict_cpp.re" { BOOST_WAVE_RET(T_VOLATILE); } -#line 5776 "strict_cpp_re.inc" -yy895: +#line 5813 "strict_cpp_re.inc" +yy901: yych = *++YYCURSOR; - if (yych == 'n') goto yy926; + if (yych == 'n') goto yy932; goto yy100; -yy896: - yyaccept = 89; +yy902: + yyaccept = 90; YYMARKER = ++YYCURSOR; if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2); yych = *YYCURSOR; -yy897: +yy903: if (yych <= ' ') { if (yych <= '\n') { - if (yych == '\t') goto yy896; - goto yy843; + if (yych == '\t') goto yy902; + goto yy849; } else { - if (yych <= '\f') goto yy896; - if (yych <= 0x1F) goto yy843; - goto yy896; + if (yych <= '\f') goto yy902; + if (yych <= 0x1F) goto yy849; + goto yy902; } } else { if (yych <= '.') { - if (yych != '"') goto yy843; + if (yych != '"') goto yy849; } else { - if (yych <= '/') goto yy899; - if (yych == '<') goto yy900; - goto yy843; + if (yych <= '/') goto yy905; + if (yych == '<') goto yy906; + goto yy849; } } yych = *++YYCURSOR; if (yych == '"') goto yy100; - goto yy929; -yy899: + goto yy935; +yy905: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; - if (yych == '*') goto yy930; + if (yych == '*') goto yy936; goto yy100; -yy900: +yy906: yych = *++YYCURSOR; if (yych == '>') goto yy100; - goto yy933; -yy901: + goto yy939; +yy907: yych = *++YYCURSOR; - if (yych == 'n') goto yy934; + if (yych == 'n') goto yy940; goto yy100; -yy902: - yyaccept = 107; +yy908: + yyaccept = 108; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy903: -#line 141 "strict_cpp.re" +yy909: +#line 145 "strict_cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_FINALLY : T_IDENTIFIER); } -#line 5833 "strict_cpp_re.inc" -yy904: - yyaccept = 108; +#line 5870 "strict_cpp_re.inc" +yy910: + yyaccept = 109; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy905: -#line 135 "strict_cpp.re" +yy911: +#line 139 "strict_cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_DECLSPEC : T_IDENTIFIER); } -#line 5845 "strict_cpp_re.inc" -yy906: - yyaccept = 109; +#line 5882 "strict_cpp_re.inc" +yy912: + yyaccept = 110; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy907: -#line 137 "strict_cpp.re" +yy913: +#line 141 "strict_cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_FASTCALL : T_IDENTIFIER); } -#line 5857 "strict_cpp_re.inc" -yy908: - yyaccept = 110; +#line 5894 "strict_cpp_re.inc" +yy914: + yyaccept = 111; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy909: -#line 68 "strict_cpp.re" +yy915: +#line 71 "strict_cpp.re" { BOOST_WAVE_RET(s->act_in_cpp2a_mode ? T_CO_RETURN : T_IDENTIFIER); } -#line 5869 "strict_cpp_re.inc" -yy910: +#line 5906 "strict_cpp_re.inc" +yy916: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy935; + if (yych == 't') goto yy941; goto yy55; -yy911: - yyaccept = 111; +yy917: + yyaccept = 112; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy912: -#line 62 "strict_cpp.re" +yy918: +#line 65 "strict_cpp.re" { BOOST_WAVE_RET(s->act_in_cpp2a_mode ? T_CONSTEVAL : T_IDENTIFIER); } -#line 5886 "strict_cpp_re.inc" -yy913: - yyaccept = 112; +#line 5923 "strict_cpp_re.inc" +yy919: + yyaccept = 113; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy914: -#line 63 "strict_cpp.re" +yy920: +#line 66 "strict_cpp.re" { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_CONSTEXPR : T_IDENTIFIER); } -#line 5898 "strict_cpp_re.inc" -yy915: - yyaccept = 113; +#line 5935 "strict_cpp_re.inc" +yy921: + yyaccept = 114; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy916: -#line 64 "strict_cpp.re" +yy922: +#line 67 "strict_cpp.re" { BOOST_WAVE_RET(s->act_in_cpp2a_mode ? T_CONSTINIT : T_IDENTIFIER); } -#line 5910 "strict_cpp_re.inc" -yy917: +#line 5947 "strict_cpp_re.inc" +yy923: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy937; + if (yych == 'a') goto yy943; goto yy55; -yy918: - yyaccept = 114; +yy924: + yyaccept = 115; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy919: -#line 92 "strict_cpp.re" +yy925: +#line 96 "strict_cpp.re" { BOOST_WAVE_RET(T_NAMESPACE); } -#line 5927 "strict_cpp_re.inc" -yy920: - yyaccept = 115; +#line 5964 "strict_cpp_re.inc" +yy926: + yyaccept = 116; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy921: -#line 98 "strict_cpp.re" +yy927: +#line 102 "strict_cpp.re" { BOOST_WAVE_RET(T_PROTECTED); } -#line 5939 "strict_cpp_re.inc" -yy922: +#line 5976 "strict_cpp_re.inc" +yy928: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy938; + if (yych == 'e') goto yy944; goto yy55; -yy923: +yy929: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 's') goto yy939; + if (yych == 's') goto yy945; goto yy55; -yy924: +yy930: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 's') goto yy940; + if (yych == 's') goto yy946; goto yy55; -yy925: +yy931: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'c') goto yy941; + if (yych == 'c') goto yy947; goto yy55; -yy926: +yy932: ++YYCURSOR; -#line 340 "strict_cpp.re" +#line 344 "strict_cpp.re" { BOOST_WAVE_RET(T_MSEXT_PP_ENDREGION); } -#line 5964 "strict_cpp_re.inc" -yy928: +#line 6001 "strict_cpp_re.inc" +yy934: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; -yy929: +yy935: if (yybm[0+yych] & 64) { - goto yy928; + goto yy934; } if (yych <= 0x1F) goto yy100; - goto yy942; -yy930: + goto yy948; +yy936: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= 0x1F) { if (yych <= 0x08) goto yy100; - if (yych <= '\r') goto yy930; + if (yych <= '\r') goto yy936; goto yy100; } else { - if (yych == '*') goto yy944; - goto yy930; + if (yych == '*') goto yy950; + goto yy936; } -yy932: +yy938: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; -yy933: +yy939: if (yybm[0+yych] & 128) { - goto yy932; + goto yy938; } if (yych <= 0x1F) goto yy100; - goto yy946; -yy934: + goto yy952; +yy940: yych = *++YYCURSOR; - if (yych == 'e') goto yy948; + if (yych == 'e') goto yy954; goto yy100; -yy935: - yyaccept = 116; +yy941: + yyaccept = 117; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy936: -#line 65 "strict_cpp.re" +yy942: +#line 68 "strict_cpp.re" { BOOST_WAVE_RET(T_CONSTCAST); } -#line 6012 "strict_cpp_re.inc" -yy937: +#line 6049 "strict_cpp_re.inc" +yy943: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 's') goto yy949; + if (yych == 's') goto yy955; goto yy55; -yy938: +yy944: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy950; + if (yych == 't') goto yy956; goto yy55; -yy939: +yy945: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'e') goto yy951; + if (yych == 'e') goto yy957; goto yy55; -yy940: +yy946: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy952; + if (yych == 't') goto yy958; goto yy55; -yy941: +yy947: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy954; + if (yych == 'a') goto yy960; goto yy55; -yy942: +yy948: ++YYCURSOR; -#line 320 "strict_cpp.re" +#line 324 "strict_cpp.re" { BOOST_WAVE_RET(T_PP_QHEADER); } -#line 6042 "strict_cpp_re.inc" -yy944: +#line 6079 "strict_cpp_re.inc" +yy950: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= ')') { if (yych <= 0x08) goto yy100; - if (yych <= '\r') goto yy930; + if (yych <= '\r') goto yy936; if (yych <= 0x1F) goto yy100; - goto yy930; + goto yy936; } else { - if (yych <= '*') goto yy944; - if (yych == '/') goto yy896; - goto yy930; + if (yych <= '*') goto yy950; + if (yych == '/') goto yy902; + goto yy936; } -yy946: +yy952: ++YYCURSOR; -#line 317 "strict_cpp.re" +#line 321 "strict_cpp.re" { BOOST_WAVE_RET(T_PP_HHEADER); } -#line 6061 "strict_cpp_re.inc" -yy948: +#line 6098 "strict_cpp_re.inc" +yy954: yych = *++YYCURSOR; - if (yych == 'x') goto yy955; + if (yych == 'x') goto yy961; goto yy100; -yy949: +yy955: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy956; + if (yych == 't') goto yy962; goto yy55; -yy950: +yy956: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == '_') goto yy958; + if (yych == '_') goto yy964; goto yy55; -yy951: +yy957: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'r') goto yy959; + if (yych == 'r') goto yy965; goto yy55; -yy952: - yyaccept = 117; +yy958: + yyaccept = 118; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy953: -#line 108 "strict_cpp.re" +yy959: +#line 112 "strict_cpp.re" { BOOST_WAVE_RET(T_STATICCAST); } -#line 6092 "strict_cpp_re.inc" -yy954: +#line 6129 "strict_cpp_re.inc" +yy960: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'l') goto yy960; + if (yych == 'l') goto yy966; goto yy55; -yy955: +yy961: yych = *++YYCURSOR; - if (yych == 't') goto yy896; + if (yych == 't') goto yy902; goto yy100; -yy956: - yyaccept = 118; +yy962: + yyaccept = 119; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy957: -#line 75 "strict_cpp.re" +yy963: +#line 78 "strict_cpp.re" { BOOST_WAVE_RET(T_DYNAMICCAST); } -#line 6113 "strict_cpp_re.inc" -yy958: +#line 6150 "strict_cpp_re.inc" +yy964: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'c') goto yy962; + if (yych == 'c') goto yy968; goto yy55; -yy959: +yy965: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 't') goto yy963; + if (yych == 't') goto yy969; goto yy55; -yy960: - yyaccept = 119; +yy966: + yyaccept = 120; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy961: -#line 114 "strict_cpp.re" +yy967: +#line 118 "strict_cpp.re" { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_THREADLOCAL : T_IDENTIFIER); } -#line 6135 "strict_cpp_re.inc" -yy962: +#line 6172 "strict_cpp_re.inc" +yy968: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'a') goto yy965; + if (yych == 'a') goto yy971; goto yy55; -yy963: - yyaccept = 120; +yy969: + yyaccept = 121; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy964: -#line 109 "strict_cpp.re" +yy970: +#line 113 "strict_cpp.re" { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_STATICASSERT : T_IDENTIFIER); } -#line 6152 "strict_cpp_re.inc" -yy965: +#line 6189 "strict_cpp_re.inc" +yy971: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); if (yych != 's') goto yy55; yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); if (yych != 't') goto yy55; - yyaccept = 121; + yyaccept = 122; yych = *(YYMARKER = ++YYCURSOR); if (yybm[256+yych] & 128) { goto yy54; } if (yych == '?') goto yy173; if (yych == '\\') goto yy174; -yy968: -#line 101 "strict_cpp.re" +yy974: +#line 105 "strict_cpp.re" { BOOST_WAVE_RET(T_REINTERPRETCAST); } -#line 6170 "strict_cpp_re.inc" +#line 6207 "strict_cpp_re.inc" } -#line 372 "strict_cpp.re" +#line 376 "strict_cpp.re" ccomment: -#line 6177 "strict_cpp_re.inc" +#line 6214 "strict_cpp_re.inc" { YYCTYPE yych; if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2); yych = *YYCURSOR; if (yych <= '\f') { if (yych <= 0x08) { - if (yych >= 0x01) goto yy973; + if (yych >= 0x01) goto yy979; } else { - if (yych == '\n') goto yy977; - goto yy975; + if (yych == '\n') goto yy983; + goto yy981; } } else { if (yych <= 0x1F) { - if (yych <= '\r') goto yy979; - goto yy973; + if (yych <= '\r') goto yy985; + goto yy979; } else { - if (yych == '*') goto yy980; - goto yy975; + if (yych == '*') goto yy986; + goto yy981; } } ++YYCURSOR; -#line 390 "strict_cpp.re" +#line 394 "strict_cpp.re" { if(cursor == s->eof) { @@ -6211,27 +6248,27 @@ ccomment: "invalid character: '\\000' in input stream"); } } -#line 6215 "strict_cpp_re.inc" -yy973: +#line 6252 "strict_cpp_re.inc" +yy979: ++YYCURSOR; -#line 407 "strict_cpp.re" +#line 411 "strict_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 6225 "strict_cpp_re.inc" -yy975: +#line 6262 "strict_cpp_re.inc" +yy981: ++YYCURSOR; -yy976: -#line 387 "strict_cpp.re" +yy982: +#line 391 "strict_cpp.re" { goto ccomment; } -#line 6231 "strict_cpp_re.inc" -yy977: +#line 6268 "strict_cpp_re.inc" +yy983: ++YYCURSOR; -yy978: -#line 379 "strict_cpp.re" +yy984: +#line 383 "strict_cpp.re" { /*if(cursor == s->eof) BOOST_WAVE_RET(T_EOF);*/ /*s->tok = cursor; */ @@ -6239,43 +6276,43 @@ yy978: cursor.column = 1; goto ccomment; } -#line 6243 "strict_cpp_re.inc" -yy979: +#line 6280 "strict_cpp_re.inc" +yy985: yych = *++YYCURSOR; - if (yych == '\n') goto yy977; - goto yy978; -yy980: + if (yych == '\n') goto yy983; + goto yy984; +yy986: yych = *++YYCURSOR; - if (yych != '/') goto yy976; + if (yych != '/') goto yy982; ++YYCURSOR; -#line 376 "strict_cpp.re" +#line 380 "strict_cpp.re" { BOOST_WAVE_RET(T_CCOMMENT); } -#line 6254 "strict_cpp_re.inc" +#line 6291 "strict_cpp_re.inc" } -#line 413 "strict_cpp.re" +#line 417 "strict_cpp.re" cppcomment: -#line 6261 "strict_cpp_re.inc" +#line 6298 "strict_cpp_re.inc" { YYCTYPE yych; if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2); yych = *YYCURSOR; if (yych <= '\n') { - if (yych <= 0x00) goto yy985; - if (yych <= 0x08) goto yy987; - if (yych <= '\t') goto yy989; - goto yy991; + if (yych <= 0x00) goto yy991; + if (yych <= 0x08) goto yy993; + if (yych <= '\t') goto yy995; + goto yy997; } else { - if (yych <= '\f') goto yy989; - if (yych <= '\r') goto yy993; - if (yych <= 0x1F) goto yy987; - goto yy989; + if (yych <= '\f') goto yy995; + if (yych <= '\r') goto yy999; + if (yych <= 0x1F) goto yy993; + goto yy995; } -yy985: +yy991: ++YYCURSOR; -#line 429 "strict_cpp.re" +#line 433 "strict_cpp.re" { if (s->eof && cursor != s->eof) { @@ -6294,26 +6331,26 @@ yy985: } BOOST_WAVE_RET(T_CPPCOMMENT); } -#line 6298 "strict_cpp_re.inc" -yy987: +#line 6335 "strict_cpp_re.inc" +yy993: ++YYCURSOR; -#line 449 "strict_cpp.re" +#line 453 "strict_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 6308 "strict_cpp_re.inc" -yy989: +#line 6345 "strict_cpp_re.inc" +yy995: ++YYCURSOR; -#line 426 "strict_cpp.re" +#line 430 "strict_cpp.re" { goto cppcomment; } -#line 6313 "strict_cpp_re.inc" -yy991: +#line 6350 "strict_cpp_re.inc" +yy997: ++YYCURSOR; -yy992: -#line 418 "strict_cpp.re" +yy998: +#line 422 "strict_cpp.re" { /*if(cursor == s->eof) BOOST_WAVE_RET(T_EOF); */ /*s->tok = cursor; */ @@ -6321,13 +6358,13 @@ yy992: cursor.column = 1; BOOST_WAVE_RET(T_CPPCOMMENT); } -#line 6325 "strict_cpp_re.inc" -yy993: +#line 6362 "strict_cpp_re.inc" +yy999: yych = *++YYCURSOR; - if (yych == '\n') goto yy991; - goto yy992; + if (yych == '\n') goto yy997; + goto yy998; } -#line 455 "strict_cpp.re" +#line 459 "strict_cpp.re" /* this subscanner is called whenever a pp_number has been started */ @@ -6339,7 +6376,7 @@ pp_number: if (s->detect_pp_numbers) { -#line 6343 "strict_cpp_re.inc" +#line 6380 "strict_cpp_re.inc" { YYCTYPE yych; static const unsigned char yybm[] = { @@ -6378,215 +6415,215 @@ pp_number: }; if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2); yych = *YYCURSOR; - if (yych == '.') goto yy998; - if (yych <= '/') goto yy996; - if (yych <= '9') goto yy999; -yy996: + if (yych == '.') goto yy1004; + if (yych <= '/') goto yy1002; + if (yych <= '9') goto yy1005; +yy1002: ++YYCURSOR; -yy997: -#line 469 "strict_cpp.re" +yy1003: +#line 473 "strict_cpp.re" { BOOST_ASSERT(false); } -#line 6390 "strict_cpp_re.inc" -yy998: +#line 6427 "strict_cpp_re.inc" +yy1004: yych = *++YYCURSOR; - if (yych <= '/') goto yy997; - if (yych >= ':') goto yy997; -yy999: + if (yych <= '/') goto yy1003; + if (yych >= ':') goto yy1003; +yy1005: YYMARKER = ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yybm[0+yych] & 64) { - goto yy999; + goto yy1005; } if (yych <= 'E') { - if (yych == '?') goto yy1002; - if (yych >= 'A') goto yy1004; + if (yych == '?') goto yy1008; + if (yych >= 'A') goto yy1010; } else { if (yych <= '\\') { - if (yych >= '\\') goto yy1006; + if (yych >= '\\') goto yy1012; } else { - if (yych <= '`') goto yy1001; - if (yych <= 'e') goto yy1004; + if (yych <= '`') goto yy1007; + if (yych <= 'e') goto yy1010; } } -yy1001: -#line 467 "strict_cpp.re" +yy1007: +#line 471 "strict_cpp.re" { BOOST_WAVE_RET(T_PP_NUMBER); } -#line 6416 "strict_cpp_re.inc" -yy1002: +#line 6453 "strict_cpp_re.inc" +yy1008: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; - if (yych == '?') goto yy1007; -yy1003: + if (yych == '?') goto yy1013; +yy1009: YYCURSOR = YYMARKER; - goto yy1001; -yy1004: + goto yy1007; +yy1010: YYMARKER = ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yybm[0+yych] & 128) { - goto yy1004; + goto yy1010; } if (yych <= '?') { if (yych <= '.') { - if (yych == '+') goto yy999; - if (yych <= ',') goto yy1001; - goto yy999; + if (yych == '+') goto yy1005; + if (yych <= ',') goto yy1007; + goto yy1005; } else { - if (yych <= '/') goto yy1001; - if (yych <= '9') goto yy999; - if (yych <= '>') goto yy1001; - goto yy1002; + if (yych <= '/') goto yy1007; + if (yych <= '9') goto yy1005; + if (yych <= '>') goto yy1007; + goto yy1008; } } else { if (yych <= '\\') { - if (yych <= '@') goto yy1001; - if (yych <= 'Z') goto yy999; - if (yych <= '[') goto yy1001; + if (yych <= '@') goto yy1007; + if (yych <= 'Z') goto yy1005; + if (yych <= '[') goto yy1007; } else { if (yych <= '_') { - if (yych <= '^') goto yy1001; - goto yy999; + if (yych <= '^') goto yy1007; + goto yy1005; } else { - if (yych <= '`') goto yy1001; - if (yych <= 'z') goto yy999; - goto yy1001; + if (yych <= '`') goto yy1007; + if (yych <= 'z') goto yy1005; + goto yy1007; } } } -yy1006: +yy1012: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; - if (yych == 'U') goto yy1008; - if (yych == 'u') goto yy1009; - goto yy1003; -yy1007: + if (yych == 'U') goto yy1014; + if (yych == 'u') goto yy1015; + goto yy1009; +yy1013: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; - if (yych == '/') goto yy1006; - goto yy1003; -yy1008: + if (yych == '/') goto yy1012; + goto yy1009; +yy1014: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1003; - if (yych <= '9') goto yy1010; - goto yy1003; + if (yych <= '/') goto yy1009; + if (yych <= '9') goto yy1016; + goto yy1009; } else { - if (yych <= 'F') goto yy1010; - if (yych <= '`') goto yy1003; - if (yych <= 'f') goto yy1010; - goto yy1003; + if (yych <= 'F') goto yy1016; + if (yych <= '`') goto yy1009; + if (yych <= 'f') goto yy1016; + goto yy1009; } -yy1009: +yy1015: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1003; - if (yych <= '9') goto yy1011; - goto yy1003; + if (yych <= '/') goto yy1009; + if (yych <= '9') goto yy1017; + goto yy1009; } else { - if (yych <= 'F') goto yy1011; - if (yych <= '`') goto yy1003; - if (yych <= 'f') goto yy1011; - goto yy1003; + if (yych <= 'F') goto yy1017; + if (yych <= '`') goto yy1009; + if (yych <= 'f') goto yy1017; + goto yy1009; } -yy1010: +yy1016: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1003; - if (yych <= '9') goto yy1012; - goto yy1003; + if (yych <= '/') goto yy1009; + if (yych <= '9') goto yy1018; + goto yy1009; } else { - if (yych <= 'F') goto yy1012; - if (yych <= '`') goto yy1003; - if (yych <= 'f') goto yy1012; - goto yy1003; + if (yych <= 'F') goto yy1018; + if (yych <= '`') goto yy1009; + if (yych <= 'f') goto yy1018; + goto yy1009; } -yy1011: +yy1017: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1003; - if (yych <= '9') goto yy1013; - goto yy1003; + if (yych <= '/') goto yy1009; + if (yych <= '9') goto yy1019; + goto yy1009; } else { - if (yych <= 'F') goto yy1013; - if (yych <= '`') goto yy1003; - if (yych <= 'f') goto yy1013; - goto yy1003; + if (yych <= 'F') goto yy1019; + if (yych <= '`') goto yy1009; + if (yych <= 'f') goto yy1019; + goto yy1009; } -yy1012: +yy1018: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1003; - if (yych <= '9') goto yy1014; - goto yy1003; + if (yych <= '/') goto yy1009; + if (yych <= '9') goto yy1020; + goto yy1009; } else { - if (yych <= 'F') goto yy1014; - if (yych <= '`') goto yy1003; - if (yych <= 'f') goto yy1014; - goto yy1003; + if (yych <= 'F') goto yy1020; + if (yych <= '`') goto yy1009; + if (yych <= 'f') goto yy1020; + goto yy1009; } -yy1013: +yy1019: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1003; - if (yych <= '9') goto yy1015; - goto yy1003; + if (yych <= '/') goto yy1009; + if (yych <= '9') goto yy1021; + goto yy1009; } else { - if (yych <= 'F') goto yy1015; - if (yych <= '`') goto yy1003; - if (yych <= 'f') goto yy1015; - goto yy1003; + if (yych <= 'F') goto yy1021; + if (yych <= '`') goto yy1009; + if (yych <= 'f') goto yy1021; + goto yy1009; } -yy1014: +yy1020: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1003; - if (yych <= '9') goto yy1009; - goto yy1003; + if (yych <= '/') goto yy1009; + if (yych <= '9') goto yy1015; + goto yy1009; } else { - if (yych <= 'F') goto yy1009; - if (yych <= '`') goto yy1003; - if (yych <= 'f') goto yy1009; - goto yy1003; + if (yych <= 'F') goto yy1015; + if (yych <= '`') goto yy1009; + if (yych <= 'f') goto yy1015; + goto yy1009; } -yy1015: +yy1021: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1003; - if (yych <= '9') goto yy999; - goto yy1003; + if (yych <= '/') goto yy1009; + if (yych <= '9') goto yy1005; + goto yy1009; } else { - if (yych <= 'F') goto yy999; - if (yych <= '`') goto yy1003; - if (yych <= 'f') goto yy999; - goto yy1003; + if (yych <= 'F') goto yy1005; + if (yych <= '`') goto yy1009; + if (yych <= 'f') goto yy1005; + goto yy1009; } } -#line 470 "strict_cpp.re" +#line 474 "strict_cpp.re" } else { -#line 6590 "strict_cpp_re.inc" +#line 6627 "strict_cpp_re.inc" { YYCTYPE yych; unsigned int yyaccept = 0; @@ -6597,8 +6634,8 @@ yy1015: 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, + 240, 240, 176, 176, 176, 176, 176, 176, + 144, 144, 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, @@ -6627,180 +6664,311 @@ yy1015: if ((YYLIMIT - YYCURSOR) < 4) YYFILL(4); yych = *YYCURSOR; if (yych <= '/') { - if (yych == '.') goto yy1020; + if (yych == '.') goto yy1026; } else { - if (yych <= '0') goto yy1021; - if (yych <= '9') goto yy1023; + if (yych <= '0') goto yy1027; + if (yych <= '9') goto yy1029; } ++YYCURSOR; -yy1019: -#line 479 "strict_cpp.re" +yy1025: +#line 483 "strict_cpp.re" { BOOST_ASSERT(false); } -#line 6640 "strict_cpp_re.inc" -yy1020: +#line 6677 "strict_cpp_re.inc" +yy1026: yych = *++YYCURSOR; - if (yych <= '/') goto yy1019; - if (yych <= '9') goto yy1025; - goto yy1019; -yy1021: + if (yych <= '/') goto yy1025; + if (yych <= '9') goto yy1031; + goto yy1025; +yy1027: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); - if (yych == 'X') goto yy1034; - if (yych == 'x') goto yy1034; - goto yy1029; -yy1022: -#line 477 "strict_cpp.re" + if (yych <= 'X') { + if (yych == 'B') goto yy1041; + if (yych <= 'W') goto yy1038; + goto yy1043; + } else { + if (yych <= 'b') { + if (yych <= 'a') goto yy1038; + goto yy1041; + } else { + if (yych == 'x') goto yy1043; + goto yy1038; + } + } +yy1028: +#line 481 "strict_cpp.re" { goto integer_suffix; } -#line 6655 "strict_cpp_re.inc" -yy1023: +#line 6702 "strict_cpp_re.inc" +yy1029: yyaccept = 0; YYMARKER = ++YYCURSOR; if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3); yych = *YYCURSOR; - if (yybm[0+yych] & 32) { - goto yy1023; + if (yybm[0+yych] & 16) { + goto yy1029; } - if (yych <= 'D') { - if (yych != '.') goto yy1022; + if (yych <= '.') { + if (yych == '\'') goto yy1044; + if (yych <= '-') goto yy1028; + goto yy1036; } else { - if (yych <= 'E') goto yy1033; - if (yych == 'e') goto yy1033; - goto yy1022; + if (yych <= 'E') { + if (yych <= 'D') goto yy1028; + goto yy1042; + } else { + if (yych == 'e') goto yy1042; + goto yy1028; + } } -yy1025: +yy1031: yyaccept = 1; YYMARKER = ++YYCURSOR; - if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3); + if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2); yych = *YYCURSOR; - if (yych <= 'K') { - if (yych <= 'D') { - if (yych <= '/') goto yy1027; - if (yych <= '9') goto yy1025; +yy1032: + if (yych <= 'F') { + if (yych <= '/') { + if (yych == '\'') goto yy1045; } else { - if (yych <= 'E') goto yy1033; - if (yych <= 'F') goto yy1035; + if (yych <= '9') goto yy1031; + if (yych <= 'D') goto yy1033; + if (yych <= 'E') goto yy1042; + goto yy1046; } } else { if (yych <= 'e') { - if (yych <= 'L') goto yy1036; - if (yych >= 'e') goto yy1033; + if (yych == 'L') goto yy1047; + if (yych >= 'e') goto yy1042; } else { - if (yych <= 'f') goto yy1035; - if (yych == 'l') goto yy1036; + if (yych <= 'f') goto yy1046; + if (yych == 'l') goto yy1047; } } -yy1027: -#line 475 "strict_cpp.re" +yy1033: +#line 479 "strict_cpp.re" { BOOST_WAVE_RET(T_FLOATLIT); } -#line 6696 "strict_cpp_re.inc" -yy1028: +#line 6751 "strict_cpp_re.inc" +yy1034: + ++YYCURSOR; + if (YYLIMIT <= YYCURSOR) YYFILL(1); + yych = *YYCURSOR; + if (yych <= '/') goto yy1035; + if (yych <= '7') goto yy1048; + if (yych <= '9') goto yy1050; +yy1035: + YYCURSOR = YYMARKER; + if (yyaccept == 0) { + goto yy1028; + } else { + goto yy1033; + } +yy1036: + yyaccept = 1; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == '\'') goto yy1033; + goto yy1032; +yy1037: yyaccept = 0; YYMARKER = ++YYCURSOR; if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3); yych = *YYCURSOR; -yy1029: - if (yybm[0+yych] & 64) { - goto yy1028; +yy1038: + if (yybm[0+yych] & 32) { + goto yy1037; } - if (yych <= '9') { - if (yych == '.') goto yy1025; - if (yych <= '/') goto yy1022; + if (yych <= '/') { + if (yych <= '\'') { + if (yych <= '&') goto yy1028; + goto yy1034; + } else { + if (yych == '.') goto yy1036; + goto yy1028; + } } else { if (yych <= 'E') { - if (yych <= 'D') goto yy1022; - goto yy1033; + if (yych <= '9') goto yy1039; + if (yych <= 'D') goto yy1028; + goto yy1042; } else { - if (yych == 'e') goto yy1033; - goto yy1022; + if (yych == 'e') goto yy1042; + goto yy1028; } } -yy1030: +yy1039: ++YYCURSOR; if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3); yych = *YYCURSOR; - if (yych <= '9') { - if (yych == '.') goto yy1025; - if (yych >= '0') goto yy1030; + if (yych <= '/') { + if (yych <= '\'') { + if (yych <= '&') goto yy1035; + goto yy1052; + } else { + if (yych == '.') goto yy1036; + goto yy1035; + } } else { if (yych <= 'E') { - if (yych >= 'E') goto yy1033; + if (yych <= '9') goto yy1039; + if (yych <= 'D') goto yy1035; + goto yy1042; } else { - if (yych == 'e') goto yy1033; + if (yych == 'e') goto yy1042; + goto yy1035; } } -yy1032: - YYCURSOR = YYMARKER; - if (yyaccept == 0) { - goto yy1022; - } else { - goto yy1027; +yy1041: + ++YYCURSOR; + if (YYLIMIT <= YYCURSOR) YYFILL(1); + yych = *YYCURSOR; + if (yybm[0+yych] & 64) { + goto yy1053; } -yy1033: + goto yy1035; +yy1042: yych = *++YYCURSOR; if (yych <= ',') { - if (yych == '+') goto yy1037; - goto yy1032; + if (yych == '+') goto yy1055; + goto yy1035; } else { - if (yych <= '-') goto yy1037; - if (yych <= '/') goto yy1032; - if (yych <= '9') goto yy1038; - goto yy1032; + if (yych <= '-') goto yy1055; + if (yych <= '/') goto yy1035; + if (yych <= '9') goto yy1056; + goto yy1035; } -yy1034: - yych = *++YYCURSOR; +yy1043: + ++YYCURSOR; + if (YYLIMIT <= YYCURSOR) YYFILL(1); + yych = *YYCURSOR; if (yybm[0+yych] & 128) { - goto yy1040; + goto yy1058; } - goto yy1032; -yy1035: - yych = *++YYCURSOR; - if (yych == 'L') goto yy1042; - if (yych == 'l') goto yy1042; - goto yy1027; -yy1036: + goto yy1035; +yy1044: + ++YYCURSOR; + if (YYLIMIT <= YYCURSOR) YYFILL(1); + yych = *YYCURSOR; + if (yych <= '/') goto yy1035; + if (yych <= '9') goto yy1060; + goto yy1035; +yy1045: + ++YYCURSOR; + if (YYLIMIT <= YYCURSOR) YYFILL(1); + yych = *YYCURSOR; + if (yych <= '/') goto yy1035; + if (yych <= '9') goto yy1031; + goto yy1035; +yy1046: yych = *++YYCURSOR; - if (yych == 'F') goto yy1042; - if (yych == 'f') goto yy1042; - goto yy1027; -yy1037: + if (yych == 'L') goto yy1062; + if (yych == 'l') goto yy1062; + goto yy1033; +yy1047: yych = *++YYCURSOR; - if (yych <= '/') goto yy1032; - if (yych >= ':') goto yy1032; -yy1038: + if (yych == 'F') goto yy1062; + if (yych == 'f') goto yy1062; + goto yy1033; +yy1048: + yyaccept = 0; + YYMARKER = ++YYCURSOR; + if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3); + yych = *YYCURSOR; + if (yych <= '.') { + if (yych == '\'') goto yy1034; + if (yych <= '-') goto yy1028; + goto yy1036; + } else { + if (yych <= '/') goto yy1028; + if (yych <= '7') goto yy1048; + if (yych >= ':') goto yy1028; + } +yy1050: + ++YYCURSOR; + if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3); + yych = *YYCURSOR; + if (yych <= '-') { + if (yych != '\'') goto yy1035; + } else { + if (yych <= '.') goto yy1036; + if (yych <= '/') goto yy1035; + if (yych <= '9') goto yy1050; + goto yy1035; + } +yy1052: + ++YYCURSOR; + if (YYLIMIT <= YYCURSOR) YYFILL(1); + yych = *YYCURSOR; + if (yych <= '/') goto yy1035; + if (yych <= '9') goto yy1050; + goto yy1035; +yy1053: + yyaccept = 0; + YYMARKER = ++YYCURSOR; + if (YYLIMIT <= YYCURSOR) YYFILL(1); + yych = *YYCURSOR; + if (yybm[0+yych] & 64) { + goto yy1053; + } + if (yych == '\'') goto yy1041; + goto yy1028; +yy1055: ++YYCURSOR; + if (YYLIMIT <= YYCURSOR) YYFILL(1); + yych = *YYCURSOR; + if (yych <= '/') goto yy1035; + if (yych >= ':') goto yy1035; +yy1056: + yyaccept = 1; + YYMARKER = ++YYCURSOR; if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2); yych = *YYCURSOR; - if (yych <= 'K') { - if (yych <= '9') { - if (yych <= '/') goto yy1027; - goto yy1038; + if (yych <= 'F') { + if (yych <= '/') { + if (yych == '\'') goto yy1055; + goto yy1033; } else { - if (yych == 'F') goto yy1035; - goto yy1027; + if (yych <= '9') goto yy1056; + if (yych <= 'E') goto yy1033; + goto yy1046; } } else { - if (yych <= 'f') { - if (yych <= 'L') goto yy1036; - if (yych <= 'e') goto yy1027; - goto yy1035; + if (yych <= 'e') { + if (yych == 'L') goto yy1047; + goto yy1033; } else { - if (yych == 'l') goto yy1036; - goto yy1027; + if (yych <= 'f') goto yy1046; + if (yych == 'l') goto yy1047; + goto yy1033; } } -yy1040: - ++YYCURSOR; +yy1058: + yyaccept = 0; + YYMARKER = ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yybm[0+yych] & 128) { - goto yy1040; + goto yy1058; } - goto yy1022; -yy1042: + if (yych == '\'') goto yy1043; + goto yy1028; +yy1060: + yyaccept = 0; + YYMARKER = ++YYCURSOR; + if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3); + yych = *YYCURSOR; + if (yych <= '-') { + if (yych == '\'') goto yy1044; + goto yy1028; + } else { + if (yych <= '.') goto yy1036; + if (yych <= '/') goto yy1028; + if (yych <= '9') goto yy1060; + goto yy1028; + } +yy1062: ++YYCURSOR; - goto yy1027; + goto yy1033; } -#line 480 "strict_cpp.re" +#line 484 "strict_cpp.re" } } @@ -6808,162 +6976,134 @@ yy1042: /* this subscanner is called, whenever an Integer was recognized */ integer_suffix: { - if (s->enable_ms_extensions) { + auto suffix_start = YYCURSOR; + -#line 6814 "strict_cpp_re.inc" +#line 6983 "strict_cpp_re.inc" { YYCTYPE yych; if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3); yych = *(YYMARKER = YYCURSOR); if (yych <= 'h') { - if (yych <= 'L') { - if (yych >= 'L') goto yy1046; + if (yych <= 'T') { + if (yych == 'L') goto yy1066; } else { - if (yych == 'U') goto yy1047; + if (yych <= 'U') goto yy1067; + if (yych == 'Z') goto yy1068; } } else { - if (yych <= 'l') { - if (yych <= 'i') goto yy1048; - if (yych >= 'l') goto yy1050; + if (yych <= 't') { + if (yych <= 'i') goto yy1070; + if (yych == 'l') goto yy1072; } else { - if (yych == 'u') goto yy1047; + if (yych <= 'u') goto yy1067; + if (yych == 'z') goto yy1068; } } -yy1045: -#line 493 "strict_cpp.re" +yy1065: +#line 516 "strict_cpp.re" { BOOST_WAVE_RET(T_INTLIT); } -#line 6836 "strict_cpp_re.inc" -yy1046: +#line 7007 "strict_cpp_re.inc" +yy1066: yych = *++YYCURSOR; if (yych <= 'T') { - if (yych == 'L') goto yy1051; - goto yy1045; - } else { - if (yych <= 'U') goto yy1053; - if (yych == 'u') goto yy1053; - goto yy1045; - } -yy1047: - yych = *++YYCURSOR; - if (yych == 'L') goto yy1054; - if (yych == 'l') goto yy1055; - goto yy1045; -yy1048: - yych = *++YYCURSOR; - if (yych == '6') goto yy1056; -yy1049: - YYCURSOR = YYMARKER; - goto yy1045; -yy1050: - yych = *++YYCURSOR; - if (yych <= 'k') { - if (yych == 'U') goto yy1053; - goto yy1045; + if (yych == 'L') goto yy1073; + goto yy1065; } else { - if (yych <= 'l') goto yy1051; - if (yych == 'u') goto yy1053; - goto yy1045; + if (yych <= 'U') goto yy1075; + if (yych == 'u') goto yy1075; + goto yy1065; } -yy1051: - yych = *++YYCURSOR; - if (yych == 'U') goto yy1057; - if (yych == 'u') goto yy1057; -yy1052: -#line 490 "strict_cpp.re" - { BOOST_WAVE_RET(T_LONGINTLIT); } -#line 6875 "strict_cpp_re.inc" -yy1053: - ++YYCURSOR; - goto yy1045; -yy1054: - yych = *++YYCURSOR; - if (yych == 'L') goto yy1057; - goto yy1045; -yy1055: - yych = *++YYCURSOR; - if (yych == 'l') goto yy1057; - goto yy1045; -yy1056: +yy1067: yych = *++YYCURSOR; - if (yych != '4') goto yy1049; -yy1057: - ++YYCURSOR; - goto yy1052; -} -#line 494 "strict_cpp.re" - - } - else { - -#line 6899 "strict_cpp_re.inc" -{ - YYCTYPE yych; - if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3); - yych = *YYCURSOR; - if (yych <= 'U') { - if (yych == 'L') goto yy1061; - if (yych >= 'U') goto yy1062; + if (yych <= 'Z') { + if (yych == 'L') goto yy1076; + if (yych <= 'Y') goto yy1065; + goto yy1077; } else { if (yych <= 'l') { - if (yych >= 'l') goto yy1063; + if (yych <= 'k') goto yy1065; + goto yy1078; } else { - if (yych == 'u') goto yy1062; + if (yych == 'z') goto yy1077; + goto yy1065; } } -yy1060: -#line 502 "strict_cpp.re" - { BOOST_WAVE_RET(T_INTLIT); } -#line 6917 "strict_cpp_re.inc" -yy1061: +yy1068: yych = *++YYCURSOR; - if (yych <= 'T') { - if (yych == 'L') goto yy1064; - goto yy1060; - } else { - if (yych <= 'U') goto yy1066; - if (yych == 'u') goto yy1066; - goto yy1060; + if (yych == 'U') goto yy1077; + if (yych == 'u') goto yy1077; +yy1069: +#line 506 "strict_cpp.re" + { + if (s->act_in_cpp2b_mode) { + BOOST_WAVE_RET(T_SIZETLIT); + } else { + YYCURSOR = suffix_start; + BOOST_WAVE_RET(T_INTLIT); + } } -yy1062: +#line 7047 "strict_cpp_re.inc" +yy1070: yych = *++YYCURSOR; - if (yych == 'L') goto yy1067; - if (yych == 'l') goto yy1068; - goto yy1060; -yy1063: + if (yych == '6') goto yy1079; +yy1071: + YYCURSOR = YYMARKER; + goto yy1065; +yy1072: yych = *++YYCURSOR; if (yych <= 'k') { - if (yych == 'U') goto yy1066; - goto yy1060; + if (yych == 'U') goto yy1075; + goto yy1065; } else { - if (yych <= 'l') goto yy1064; - if (yych == 'u') goto yy1066; - goto yy1060; + if (yych <= 'l') goto yy1073; + if (yych == 'u') goto yy1075; + goto yy1065; } -yy1064: +yy1073: yych = *++YYCURSOR; - if (yych == 'U') goto yy1069; - if (yych == 'u') goto yy1069; -yy1065: -#line 499 "strict_cpp.re" + if (yych == 'U') goto yy1080; + if (yych == 'u') goto yy1080; +yy1074: +#line 495 "strict_cpp.re" { BOOST_WAVE_RET(T_LONGINTLIT); } -#line 6950 "strict_cpp_re.inc" -yy1066: +#line 7071 "strict_cpp_re.inc" +yy1075: ++YYCURSOR; - goto yy1060; -yy1067: - yych = *++YYCURSOR; - if (yych == 'L') goto yy1069; - goto yy1060; -yy1068: + goto yy1065; +yy1076: yych = *++YYCURSOR; - if (yych != 'l') goto yy1060; -yy1069: + if (yych == 'L') goto yy1080; + goto yy1065; +yy1077: ++YYCURSOR; + goto yy1069; +yy1078: + yych = *++YYCURSOR; + if (yych == 'l') goto yy1080; goto yy1065; +yy1079: + yych = *++YYCURSOR; + if (yych == '4') goto yy1081; + goto yy1071; +yy1080: + ++YYCURSOR; + goto yy1074; +yy1081: + ++YYCURSOR; +#line 497 "strict_cpp.re" + { + if (s->enable_ms_extensions) { + BOOST_WAVE_RET(T_LONGINTLIT); + } else { + YYCURSOR = suffix_start; + BOOST_WAVE_RET(T_INTLIT); + } + } +#line 7104 "strict_cpp_re.inc" } -#line 503 "strict_cpp.re" +#line 518 "strict_cpp.re" - } // re2c will complain about -Wmatch-empty-string above // it's OK because we've already matched an integer @@ -6974,7 +7114,7 @@ yy1069: extcharlit: { -#line 6978 "strict_cpp_re.inc" +#line 7118 "strict_cpp_re.inc" { YYCTYPE yych; static const unsigned char yybm[] = { @@ -7015,284 +7155,284 @@ extcharlit: yych = *YYCURSOR; if (yych <= 0x1F) { if (yych <= '\n') { - if (yych <= 0x08) goto yy1072; - if (yych <= '\t') goto yy1074; - goto yy1076; + if (yych <= 0x08) goto yy1085; + if (yych <= '\t') goto yy1087; + goto yy1089; } else { - if (yych <= '\f') goto yy1074; - if (yych <= '\r') goto yy1076; + if (yych <= '\f') goto yy1087; + if (yych <= '\r') goto yy1089; } } else { if (yych <= '>') { - if (yych == '\'') goto yy1076; - goto yy1074; + if (yych == '\'') goto yy1089; + goto yy1087; } else { - if (yych <= '?') goto yy1077; - if (yych == '\\') goto yy1078; - goto yy1074; + if (yych <= '?') goto yy1090; + if (yych == '\\') goto yy1091; + goto yy1087; } } -yy1072: +yy1085: ++YYCURSOR; -#line 515 "strict_cpp.re" +#line 529 "strict_cpp.re" { (*s->error_proc)(s, lexing_exception::generic_lexing_error, "Invalid character in raw string delimiter ('%c')", yych); } -#line 7043 "strict_cpp_re.inc" -yy1074: +#line 7183 "strict_cpp_re.inc" +yy1087: yych = *++YYCURSOR; - if (yych == '\'') goto yy1079; -yy1075: -#line 524 "strict_cpp.re" + if (yych == '\'') goto yy1092; +yy1088: +#line 538 "strict_cpp.re" { BOOST_WAVE_RET(TOKEN_FROM_ID(*s->tok, UnknownTokenType)); } -#line 7050 "strict_cpp_re.inc" -yy1076: +#line 7190 "strict_cpp_re.inc" +yy1089: ++YYCURSOR; - goto yy1075; -yy1077: + goto yy1088; +yy1090: yych = *(YYMARKER = ++YYCURSOR); - if (yych == '\'') goto yy1079; - if (yych == '?') goto yy1081; - goto yy1075; -yy1078: + if (yych == '\'') goto yy1092; + if (yych == '?') goto yy1094; + goto yy1088; +yy1091: yych = *(YYMARKER = ++YYCURSOR); if (yych <= '`') { if (yych <= '7') { if (yych <= '&') { - if (yych == '"') goto yy1083; - goto yy1075; + if (yych == '"') goto yy1096; + goto yy1088; } else { - if (yych <= '\'') goto yy1083; - if (yych <= '/') goto yy1075; - goto yy1084; + if (yych <= '\'') goto yy1096; + if (yych <= '/') goto yy1088; + goto yy1097; } } else { if (yych <= 'T') { - if (yych == '?') goto yy1085; - goto yy1075; + if (yych == '?') goto yy1098; + goto yy1088; } else { - if (yych <= 'U') goto yy1086; - if (yych == '\\') goto yy1083; - goto yy1075; + if (yych <= 'U') goto yy1099; + if (yych == '\\') goto yy1096; + goto yy1088; } } } else { if (yych <= 'r') { if (yych <= 'f') { - if (yych <= 'b') goto yy1083; - if (yych <= 'e') goto yy1075; - goto yy1083; + if (yych <= 'b') goto yy1096; + if (yych <= 'e') goto yy1088; + goto yy1096; } else { - if (yych == 'n') goto yy1083; - if (yych <= 'q') goto yy1075; - goto yy1083; + if (yych == 'n') goto yy1096; + if (yych <= 'q') goto yy1088; + goto yy1096; } } else { if (yych <= 'u') { - if (yych <= 's') goto yy1075; - if (yych <= 't') goto yy1083; - goto yy1087; + if (yych <= 's') goto yy1088; + if (yych <= 't') goto yy1096; + goto yy1100; } else { - if (yych <= 'v') goto yy1083; - if (yych == 'x') goto yy1088; - goto yy1075; + if (yych <= 'v') goto yy1096; + if (yych == 'x') goto yy1101; + goto yy1088; } } } -yy1079: +yy1092: ++YYCURSOR; -#line 521 "strict_cpp.re" +#line 535 "strict_cpp.re" { BOOST_WAVE_RET(T_CHARLIT); } -#line 7108 "strict_cpp_re.inc" -yy1081: +#line 7248 "strict_cpp_re.inc" +yy1094: yych = *++YYCURSOR; - if (yych == '/') goto yy1089; -yy1082: + if (yych == '/') goto yy1102; +yy1095: YYCURSOR = YYMARKER; - goto yy1075; -yy1083: + goto yy1088; +yy1096: yych = *++YYCURSOR; - if (yych == '\'') goto yy1079; - goto yy1082; -yy1084: + if (yych == '\'') goto yy1092; + goto yy1095; +yy1097: yych = *++YYCURSOR; - if (yych == '\'') goto yy1079; - if (yych <= '/') goto yy1082; - if (yych <= '7') goto yy1090; - goto yy1082; -yy1085: + if (yych == '\'') goto yy1092; + if (yych <= '/') goto yy1095; + if (yych <= '7') goto yy1103; + goto yy1095; +yy1098: yych = *++YYCURSOR; - if (yych == '\'') goto yy1079; - if (yych == '?') goto yy1091; - goto yy1082; -yy1086: + if (yych == '\'') goto yy1092; + if (yych == '?') goto yy1104; + goto yy1095; +yy1099: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1082; - if (yych <= '9') goto yy1092; - goto yy1082; + if (yych <= '/') goto yy1095; + if (yych <= '9') goto yy1105; + goto yy1095; } else { - if (yych <= 'F') goto yy1092; - if (yych <= '`') goto yy1082; - if (yych <= 'f') goto yy1092; - goto yy1082; + if (yych <= 'F') goto yy1105; + if (yych <= '`') goto yy1095; + if (yych <= 'f') goto yy1105; + goto yy1095; } -yy1087: +yy1100: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1082; - if (yych <= '9') goto yy1093; - goto yy1082; + if (yych <= '/') goto yy1095; + if (yych <= '9') goto yy1106; + goto yy1095; } else { - if (yych <= 'F') goto yy1093; - if (yych <= '`') goto yy1082; - if (yych <= 'f') goto yy1093; - goto yy1082; + if (yych <= 'F') goto yy1106; + if (yych <= '`') goto yy1095; + if (yych <= 'f') goto yy1106; + goto yy1095; } -yy1088: +yy1101: yych = *++YYCURSOR; - if (yych == '\'') goto yy1082; - goto yy1095; -yy1089: + if (yych == '\'') goto yy1095; + goto yy1108; +yy1102: yych = *++YYCURSOR; if (yych <= '`') { if (yych <= '7') { if (yych <= '&') { - if (yych == '"') goto yy1083; - goto yy1082; + if (yych == '"') goto yy1096; + goto yy1095; } else { - if (yych <= '\'') goto yy1083; - if (yych <= '/') goto yy1082; - goto yy1084; + if (yych <= '\'') goto yy1096; + if (yych <= '/') goto yy1095; + goto yy1097; } } else { if (yych <= 'T') { - if (yych == '?') goto yy1085; - goto yy1082; + if (yych == '?') goto yy1098; + goto yy1095; } else { - if (yych <= 'U') goto yy1086; - if (yych == '\\') goto yy1083; - goto yy1082; + if (yych <= 'U') goto yy1099; + if (yych == '\\') goto yy1096; + goto yy1095; } } } else { if (yych <= 'r') { if (yych <= 'f') { - if (yych <= 'b') goto yy1083; - if (yych <= 'e') goto yy1082; - goto yy1083; + if (yych <= 'b') goto yy1096; + if (yych <= 'e') goto yy1095; + goto yy1096; } else { - if (yych == 'n') goto yy1083; - if (yych <= 'q') goto yy1082; - goto yy1083; + if (yych == 'n') goto yy1096; + if (yych <= 'q') goto yy1095; + goto yy1096; } } else { if (yych <= 'u') { - if (yych <= 's') goto yy1082; - if (yych <= 't') goto yy1083; - goto yy1087; + if (yych <= 's') goto yy1095; + if (yych <= 't') goto yy1096; + goto yy1100; } else { - if (yych <= 'v') goto yy1083; - if (yych == 'x') goto yy1088; - goto yy1082; + if (yych <= 'v') goto yy1096; + if (yych == 'x') goto yy1101; + goto yy1095; } } } -yy1090: +yy1103: yych = *++YYCURSOR; - if (yych == '\'') goto yy1079; - if (yych <= '/') goto yy1082; - if (yych <= '7') goto yy1083; - goto yy1082; -yy1091: + if (yych == '\'') goto yy1092; + if (yych <= '/') goto yy1095; + if (yych <= '7') goto yy1096; + goto yy1095; +yy1104: yych = *++YYCURSOR; - if (yych == '/') goto yy1083; - goto yy1082; -yy1092: + if (yych == '/') goto yy1096; + goto yy1095; +yy1105: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1082; - if (yych <= '9') goto yy1096; - goto yy1082; + if (yych <= '/') goto yy1095; + if (yych <= '9') goto yy1109; + goto yy1095; } else { - if (yych <= 'F') goto yy1096; - if (yych <= '`') goto yy1082; - if (yych <= 'f') goto yy1096; - goto yy1082; + if (yych <= 'F') goto yy1109; + if (yych <= '`') goto yy1095; + if (yych <= 'f') goto yy1109; + goto yy1095; } -yy1093: +yy1106: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1082; - if (yych <= '9') goto yy1097; - goto yy1082; + if (yych <= '/') goto yy1095; + if (yych <= '9') goto yy1110; + goto yy1095; } else { - if (yych <= 'F') goto yy1097; - if (yych <= '`') goto yy1082; - if (yych <= 'f') goto yy1097; - goto yy1082; + if (yych <= 'F') goto yy1110; + if (yych <= '`') goto yy1095; + if (yych <= 'f') goto yy1110; + goto yy1095; } -yy1094: +yy1107: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; -yy1095: +yy1108: if (yybm[0+yych] & 128) { - goto yy1094; + goto yy1107; } - if (yych == '\'') goto yy1079; - goto yy1082; -yy1096: + if (yych == '\'') goto yy1092; + goto yy1095; +yy1109: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1082; - if (yych <= '9') goto yy1098; - goto yy1082; + if (yych <= '/') goto yy1095; + if (yych <= '9') goto yy1111; + goto yy1095; } else { - if (yych <= 'F') goto yy1098; - if (yych <= '`') goto yy1082; - if (yych <= 'f') goto yy1098; - goto yy1082; + if (yych <= 'F') goto yy1111; + if (yych <= '`') goto yy1095; + if (yych <= 'f') goto yy1111; + goto yy1095; } -yy1097: +yy1110: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1082; - if (yych <= '9') goto yy1099; - goto yy1082; + if (yych <= '/') goto yy1095; + if (yych <= '9') goto yy1112; + goto yy1095; } else { - if (yych <= 'F') goto yy1099; - if (yych <= '`') goto yy1082; - if (yych <= 'f') goto yy1099; - goto yy1082; + if (yych <= 'F') goto yy1112; + if (yych <= '`') goto yy1095; + if (yych <= 'f') goto yy1112; + goto yy1095; } -yy1098: +yy1111: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1082; - if (yych <= '9') goto yy1087; - goto yy1082; + if (yych <= '/') goto yy1095; + if (yych <= '9') goto yy1100; + goto yy1095; } else { - if (yych <= 'F') goto yy1087; - if (yych <= '`') goto yy1082; - if (yych <= 'f') goto yy1087; - goto yy1082; + if (yych <= 'F') goto yy1100; + if (yych <= '`') goto yy1095; + if (yych <= 'f') goto yy1100; + goto yy1095; } -yy1099: +yy1112: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1082; - if (yych <= '9') goto yy1083; - goto yy1082; + if (yych <= '/') goto yy1095; + if (yych <= '9') goto yy1096; + goto yy1095; } else { - if (yych <= 'F') goto yy1083; - if (yych <= '`') goto yy1082; - if (yych <= 'f') goto yy1083; - goto yy1082; + if (yych <= 'F') goto yy1096; + if (yych <= '`') goto yy1095; + if (yych <= 'f') goto yy1096; + goto yy1095; } } -#line 525 "strict_cpp.re" +#line 539 "strict_cpp.re" } @@ -7300,7 +7440,7 @@ yy1099: extstringlit: { -#line 7304 "strict_cpp_re.inc" +#line 7444 "strict_cpp_re.inc" { YYCTYPE yych; unsigned int yyaccept = 0; @@ -7342,345 +7482,345 @@ extstringlit: yych = *YYCURSOR; if (yych <= 0x1F) { if (yych <= '\n') { - if (yych <= 0x08) goto yy1102; - if (yych <= '\t') goto yy1104; - goto yy1106; + if (yych <= 0x08) goto yy1115; + if (yych <= '\t') goto yy1117; + goto yy1119; } else { - if (yych <= '\f') goto yy1104; - if (yych <= '\r') goto yy1106; + if (yych <= '\f') goto yy1117; + if (yych <= '\r') goto yy1119; } } else { if (yych <= '>') { - if (yych == '"') goto yy1107; - goto yy1104; + if (yych == '"') goto yy1120; + goto yy1117; } else { - if (yych <= '?') goto yy1109; - if (yych == '\\') goto yy1110; - goto yy1104; + if (yych <= '?') goto yy1122; + if (yych == '\\') goto yy1123; + goto yy1117; } } -yy1102: +yy1115: ++YYCURSOR; -#line 532 "strict_cpp.re" +#line 546 "strict_cpp.re" { (*s->error_proc)(s, lexing_exception::generic_lexing_error, "Invalid character in raw string delimiter ('%c')", yych); } -#line 7370 "strict_cpp_re.inc" -yy1104: +#line 7510 "strict_cpp_re.inc" +yy1117: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if (yych <= '\n') { - if (yych == '\t') goto yy1112; + if (yych == '\t') goto yy1125; } else { - if (yych <= '\f') goto yy1112; - if (yych >= ' ') goto yy1112; + if (yych <= '\f') goto yy1125; + if (yych >= ' ') goto yy1125; } -yy1105: -#line 541 "strict_cpp.re" +yy1118: +#line 555 "strict_cpp.re" { BOOST_WAVE_RET(TOKEN_FROM_ID(*s->tok, UnknownTokenType)); } -#line 7383 "strict_cpp_re.inc" -yy1106: +#line 7523 "strict_cpp_re.inc" +yy1119: ++YYCURSOR; - goto yy1105; -yy1107: + goto yy1118; +yy1120: ++YYCURSOR; -yy1108: -#line 538 "strict_cpp.re" +yy1121: +#line 552 "strict_cpp.re" { BOOST_WAVE_RET(T_STRINGLIT); } -#line 7392 "strict_cpp_re.inc" -yy1109: +#line 7532 "strict_cpp_re.inc" +yy1122: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if (yybm[0+yych] & 64) { - goto yy1116; + goto yy1129; } if (yych <= '\n') { - if (yych == '\t') goto yy1112; - goto yy1105; + if (yych == '\t') goto yy1125; + goto yy1118; } else { - if (yych <= '\f') goto yy1112; - if (yych <= 0x1F) goto yy1105; - goto yy1112; + if (yych <= '\f') goto yy1125; + if (yych <= 0x1F) goto yy1118; + goto yy1125; } -yy1110: +yy1123: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if (yych <= '`') { if (yych <= '7') { if (yych <= '&') { - if (yych != '"') goto yy1105; + if (yych != '"') goto yy1118; } else { - if (yych <= '\'') goto yy1111; - if (yych <= '/') goto yy1105; + if (yych <= '\'') goto yy1124; + if (yych <= '/') goto yy1118; } } else { if (yych <= 'T') { - if (yych != '?') goto yy1105; + if (yych != '?') goto yy1118; } else { - if (yych <= 'U') goto yy1118; - if (yych != '\\') goto yy1105; + if (yych <= 'U') goto yy1131; + if (yych != '\\') goto yy1118; } } } else { if (yych <= 'r') { if (yych <= 'f') { - if (yych <= 'b') goto yy1111; - if (yych <= 'e') goto yy1105; + if (yych <= 'b') goto yy1124; + if (yych <= 'e') goto yy1118; } else { - if (yych == 'n') goto yy1111; - if (yych <= 'q') goto yy1105; + if (yych == 'n') goto yy1124; + if (yych <= 'q') goto yy1118; } } else { if (yych <= 'u') { - if (yych <= 's') goto yy1105; - if (yych >= 'u') goto yy1119; + if (yych <= 's') goto yy1118; + if (yych >= 'u') goto yy1132; } else { - if (yych <= 'v') goto yy1111; - if (yych == 'x') goto yy1120; - goto yy1105; + if (yych <= 'v') goto yy1124; + if (yych == 'x') goto yy1133; + goto yy1118; } } } -yy1111: +yy1124: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; -yy1112: +yy1125: if (yybm[0+yych] & 32) { - goto yy1111; + goto yy1124; } - if (yych <= 0x1F) goto yy1113; - if (yych <= '"') goto yy1107; - if (yych <= '?') goto yy1114; - goto yy1115; -yy1113: + if (yych <= 0x1F) goto yy1126; + if (yych <= '"') goto yy1120; + if (yych <= '?') goto yy1127; + goto yy1128; +yy1126: YYCURSOR = YYMARKER; if (yyaccept == 0) { - goto yy1105; + goto yy1118; } else { - goto yy1108; + goto yy1121; } -yy1114: +yy1127: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yybm[0+yych] & 32) { - goto yy1111; + goto yy1124; } - if (yych <= 0x1F) goto yy1113; - if (yych <= '"') goto yy1107; - if (yych <= '?') goto yy1116; -yy1115: + if (yych <= 0x1F) goto yy1126; + if (yych <= '"') goto yy1120; + if (yych <= '?') goto yy1129; +yy1128: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '`') { if (yych <= '7') { if (yych <= '&') { - if (yych == '"') goto yy1111; - goto yy1113; + if (yych == '"') goto yy1124; + goto yy1126; } else { - if (yych <= '\'') goto yy1111; - if (yych <= '/') goto yy1113; - goto yy1111; + if (yych <= '\'') goto yy1124; + if (yych <= '/') goto yy1126; + goto yy1124; } } else { if (yych <= 'T') { - if (yych == '?') goto yy1111; - goto yy1113; + if (yych == '?') goto yy1124; + goto yy1126; } else { - if (yych <= 'U') goto yy1118; - if (yych == '\\') goto yy1111; - goto yy1113; + if (yych <= 'U') goto yy1131; + if (yych == '\\') goto yy1124; + goto yy1126; } } } else { if (yych <= 'r') { if (yych <= 'f') { - if (yych <= 'b') goto yy1111; - if (yych <= 'e') goto yy1113; - goto yy1111; + if (yych <= 'b') goto yy1124; + if (yych <= 'e') goto yy1126; + goto yy1124; } else { - if (yych == 'n') goto yy1111; - if (yych <= 'q') goto yy1113; - goto yy1111; + if (yych == 'n') goto yy1124; + if (yych <= 'q') goto yy1126; + goto yy1124; } } else { if (yych <= 'u') { - if (yych <= 's') goto yy1113; - if (yych <= 't') goto yy1111; - goto yy1119; + if (yych <= 's') goto yy1126; + if (yych <= 't') goto yy1124; + goto yy1132; } else { - if (yych <= 'v') goto yy1111; - if (yych == 'x') goto yy1120; - goto yy1113; + if (yych <= 'v') goto yy1124; + if (yych == 'x') goto yy1133; + goto yy1126; } } } -yy1116: +yy1129: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yybm[0+yych] & 64) { - goto yy1116; + goto yy1129; } if (yych <= '!') { if (yych <= '\n') { - if (yych == '\t') goto yy1111; - goto yy1113; + if (yych == '\t') goto yy1124; + goto yy1126; } else { - if (yych <= '\f') goto yy1111; - if (yych <= 0x1F) goto yy1113; - goto yy1111; + if (yych <= '\f') goto yy1124; + if (yych <= 0x1F) goto yy1126; + goto yy1124; } } else { if (yych <= '/') { - if (yych <= '"') goto yy1107; - if (yych <= '.') goto yy1111; - goto yy1121; + if (yych <= '"') goto yy1120; + if (yych <= '.') goto yy1124; + goto yy1134; } else { - if (yych == '\\') goto yy1115; - goto yy1111; + if (yych == '\\') goto yy1128; + goto yy1124; } } -yy1118: +yy1131: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1113; - if (yych <= '9') goto yy1123; - goto yy1113; + if (yych <= '/') goto yy1126; + if (yych <= '9') goto yy1136; + goto yy1126; } else { - if (yych <= 'F') goto yy1123; - if (yych <= '`') goto yy1113; - if (yych <= 'f') goto yy1123; - goto yy1113; + if (yych <= 'F') goto yy1136; + if (yych <= '`') goto yy1126; + if (yych <= 'f') goto yy1136; + goto yy1126; } -yy1119: +yy1132: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1113; - if (yych <= '9') goto yy1124; - goto yy1113; + if (yych <= '/') goto yy1126; + if (yych <= '9') goto yy1137; + goto yy1126; } else { - if (yych <= 'F') goto yy1124; - if (yych <= '`') goto yy1113; - if (yych <= 'f') goto yy1124; - goto yy1113; + if (yych <= 'F') goto yy1137; + if (yych <= '`') goto yy1126; + if (yych <= 'f') goto yy1137; + goto yy1126; } -yy1120: +yy1133: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1113; - if (yych <= '9') goto yy1111; - goto yy1113; + if (yych <= '/') goto yy1126; + if (yych <= '9') goto yy1124; + goto yy1126; } else { - if (yych <= 'F') goto yy1111; - if (yych <= '`') goto yy1113; - if (yych <= 'f') goto yy1111; - goto yy1113; + if (yych <= 'F') goto yy1124; + if (yych <= '`') goto yy1126; + if (yych <= 'f') goto yy1124; + goto yy1126; } -yy1121: +yy1134: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yybm[0+yych] & 32) { - goto yy1111; + goto yy1124; } - if (yych <= 0x1F) goto yy1113; - if (yych <= '"') goto yy1125; - if (yych <= '?') goto yy1114; - goto yy1121; -yy1123: + if (yych <= 0x1F) goto yy1126; + if (yych <= '"') goto yy1138; + if (yych <= '?') goto yy1127; + goto yy1134; +yy1136: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1113; - if (yych <= '9') goto yy1126; - goto yy1113; + if (yych <= '/') goto yy1126; + if (yych <= '9') goto yy1139; + goto yy1126; } else { - if (yych <= 'F') goto yy1126; - if (yych <= '`') goto yy1113; - if (yych <= 'f') goto yy1126; - goto yy1113; + if (yych <= 'F') goto yy1139; + if (yych <= '`') goto yy1126; + if (yych <= 'f') goto yy1139; + goto yy1126; } -yy1124: +yy1137: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1113; - if (yych <= '9') goto yy1127; - goto yy1113; + if (yych <= '/') goto yy1126; + if (yych <= '9') goto yy1140; + goto yy1126; } else { - if (yych <= 'F') goto yy1127; - if (yych <= '`') goto yy1113; - if (yych <= 'f') goto yy1127; - goto yy1113; + if (yych <= 'F') goto yy1140; + if (yych <= '`') goto yy1126; + if (yych <= 'f') goto yy1140; + goto yy1126; } -yy1125: +yy1138: yyaccept = 1; YYMARKER = ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yybm[0+yych] & 32) { - goto yy1111; + goto yy1124; } - if (yych <= 0x1F) goto yy1108; - if (yych <= '"') goto yy1107; - if (yych <= '?') goto yy1114; - goto yy1115; -yy1126: + if (yych <= 0x1F) goto yy1121; + if (yych <= '"') goto yy1120; + if (yych <= '?') goto yy1127; + goto yy1128; +yy1139: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1113; - if (yych <= '9') goto yy1128; - goto yy1113; + if (yych <= '/') goto yy1126; + if (yych <= '9') goto yy1141; + goto yy1126; } else { - if (yych <= 'F') goto yy1128; - if (yych <= '`') goto yy1113; - if (yych <= 'f') goto yy1128; - goto yy1113; + if (yych <= 'F') goto yy1141; + if (yych <= '`') goto yy1126; + if (yych <= 'f') goto yy1141; + goto yy1126; } -yy1127: +yy1140: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1113; - if (yych <= '9') goto yy1120; - goto yy1113; + if (yych <= '/') goto yy1126; + if (yych <= '9') goto yy1133; + goto yy1126; } else { - if (yych <= 'F') goto yy1120; - if (yych <= '`') goto yy1113; - if (yych <= 'f') goto yy1120; - goto yy1113; + if (yych <= 'F') goto yy1133; + if (yych <= '`') goto yy1126; + if (yych <= 'f') goto yy1133; + goto yy1126; } -yy1128: +yy1141: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1113; - if (yych <= '9') goto yy1119; - goto yy1113; + if (yych <= '/') goto yy1126; + if (yych <= '9') goto yy1132; + goto yy1126; } else { - if (yych <= 'F') goto yy1119; - if (yych <= '`') goto yy1113; - if (yych <= 'f') goto yy1119; - goto yy1113; + if (yych <= 'F') goto yy1132; + if (yych <= '`') goto yy1126; + if (yych <= 'f') goto yy1132; + goto yy1126; } } -#line 542 "strict_cpp.re" +#line 556 "strict_cpp.re" } @@ -7690,30 +7830,30 @@ extrawstringlit: // at this point we may see a delimiter -#line 7694 "strict_cpp_re.inc" +#line 7834 "strict_cpp_re.inc" { YYCTYPE yych; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '(') { - if (yych <= 0x1F) goto yy1131; - if (yych <= '\'') goto yy1133; - goto yy1135; + if (yych <= 0x1F) goto yy1144; + if (yych <= '\'') goto yy1146; + goto yy1148; } else { - if (yych <= ')') goto yy1131; - if (yych != '\\') goto yy1133; + if (yych <= ')') goto yy1144; + if (yych != '\\') goto yy1146; } -yy1131: +yy1144: ++YYCURSOR; -#line 551 "strict_cpp.re" +#line 565 "strict_cpp.re" { (*s->error_proc)(s, lexing_exception::generic_lexing_error, "Invalid character in raw string delimiter ('%c')", yych); } -#line 7714 "strict_cpp_re.inc" -yy1133: +#line 7854 "strict_cpp_re.inc" +yy1146: ++YYCURSOR; -#line 558 "strict_cpp.re" +#line 572 "strict_cpp.re" { rawstringdelim += yych; if (rawstringdelim.size() > 16) @@ -7724,24 +7864,24 @@ yy1133: } goto extrawstringlit; } -#line 7728 "strict_cpp_re.inc" -yy1135: +#line 7868 "strict_cpp_re.inc" +yy1148: ++YYCURSOR; -#line 570 "strict_cpp.re" +#line 584 "strict_cpp.re" { rawstringdelim = ")" + rawstringdelim; goto extrawstringbody; } -#line 7736 "strict_cpp_re.inc" +#line 7876 "strict_cpp_re.inc" } -#line 575 "strict_cpp.re" +#line 589 "strict_cpp.re" } extrawstringbody: { -#line 7745 "strict_cpp_re.inc" +#line 7885 "strict_cpp_re.inc" { YYCTYPE yych; static const unsigned char yybm[] = { @@ -7782,56 +7922,56 @@ extrawstringbody: yych = *YYCURSOR; if (yych <= 0x1F) { if (yych <= '\n') { - if (yych <= 0x08) goto yy1139; - if (yych <= '\t') goto yy1141; - goto yy1143; + if (yych <= 0x08) goto yy1152; + if (yych <= '\t') goto yy1154; + goto yy1156; } else { - if (yych <= '\f') goto yy1141; - if (yych <= '\r') goto yy1145; + if (yych <= '\f') goto yy1154; + if (yych <= '\r') goto yy1158; } } else { if (yych <= '>') { - if (yych == '"') goto yy1146; - goto yy1141; + if (yych == '"') goto yy1159; + goto yy1154; } else { - if (yych <= '?') goto yy1148; - if (yych == '\\') goto yy1149; - goto yy1141; + if (yych <= '?') goto yy1161; + if (yych == '\\') goto yy1162; + goto yy1154; } } -yy1139: +yy1152: ++YYCURSOR; -#line 582 "strict_cpp.re" +#line 596 "strict_cpp.re" { (*s->error_proc)(s, lexing_exception::generic_lexing_error, "Invalid character in raw string body ('%c')", yych); } -#line 7810 "strict_cpp_re.inc" -yy1141: +#line 7950 "strict_cpp_re.inc" +yy1154: ++YYCURSOR; -yy1142: -#line 595 "strict_cpp.re" +yy1155: +#line 609 "strict_cpp.re" { goto extrawstringbody; } -#line 7818 "strict_cpp_re.inc" -yy1143: +#line 7958 "strict_cpp_re.inc" +yy1156: ++YYCURSOR; -yy1144: -#line 588 "strict_cpp.re" +yy1157: +#line 602 "strict_cpp.re" { s->line += count_backslash_newlines(s, cursor) +1; cursor.column = 1; goto extrawstringbody; } -#line 7828 "strict_cpp_re.inc" -yy1145: +#line 7968 "strict_cpp_re.inc" +yy1158: yych = *++YYCURSOR; - if (yych == '\n') goto yy1143; - goto yy1144; -yy1146: + if (yych == '\n') goto yy1156; + goto yy1157; +yy1159: ++YYCURSOR; -#line 600 "strict_cpp.re" +#line 614 "strict_cpp.re" { // check to see if we have completed a delimiter if (string_type((char *)(YYCURSOR - rawstringdelim.size() - 1), @@ -7842,236 +7982,236 @@ yy1146: goto extrawstringbody; } } -#line 7846 "strict_cpp_re.inc" -yy1148: +#line 7986 "strict_cpp_re.inc" +yy1161: yych = *(YYMARKER = ++YYCURSOR); - if (yych == '?') goto yy1150; - goto yy1142; -yy1149: + if (yych == '?') goto yy1163; + goto yy1155; +yy1162: yych = *(YYMARKER = ++YYCURSOR); if (yych <= '`') { if (yych <= '7') { if (yych <= '&') { - if (yych == '"') goto yy1141; - goto yy1142; + if (yych == '"') goto yy1154; + goto yy1155; } else { - if (yych <= '\'') goto yy1141; - if (yych <= '/') goto yy1142; - goto yy1152; + if (yych <= '\'') goto yy1154; + if (yych <= '/') goto yy1155; + goto yy1165; } } else { if (yych <= 'T') { - if (yych == '?') goto yy1153; - goto yy1142; + if (yych == '?') goto yy1166; + goto yy1155; } else { - if (yych <= 'U') goto yy1154; - if (yych == '\\') goto yy1141; - goto yy1142; + if (yych <= 'U') goto yy1167; + if (yych == '\\') goto yy1154; + goto yy1155; } } } else { if (yych <= 'r') { if (yych <= 'f') { - if (yych <= 'b') goto yy1141; - if (yych <= 'e') goto yy1142; - goto yy1141; + if (yych <= 'b') goto yy1154; + if (yych <= 'e') goto yy1155; + goto yy1154; } else { - if (yych == 'n') goto yy1141; - if (yych <= 'q') goto yy1142; - goto yy1141; + if (yych == 'n') goto yy1154; + if (yych <= 'q') goto yy1155; + goto yy1154; } } else { if (yych <= 'u') { - if (yych <= 's') goto yy1142; - if (yych <= 't') goto yy1141; - goto yy1155; + if (yych <= 's') goto yy1155; + if (yych <= 't') goto yy1154; + goto yy1168; } else { - if (yych <= 'v') goto yy1141; - if (yych == 'x') goto yy1156; - goto yy1142; + if (yych <= 'v') goto yy1154; + if (yych == 'x') goto yy1169; + goto yy1155; } } } -yy1150: +yy1163: yych = *++YYCURSOR; - if (yych == '/') goto yy1157; -yy1151: + if (yych == '/') goto yy1170; +yy1164: YYCURSOR = YYMARKER; - goto yy1142; -yy1152: + goto yy1155; +yy1165: yych = *++YYCURSOR; - if (yych <= '/') goto yy1142; - if (yych <= '7') goto yy1158; - goto yy1142; -yy1153: + if (yych <= '/') goto yy1155; + if (yych <= '7') goto yy1171; + goto yy1155; +yy1166: yych = *(YYMARKER = ++YYCURSOR); - if (yych == '?') goto yy1159; - goto yy1142; -yy1154: + if (yych == '?') goto yy1172; + goto yy1155; +yy1167: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1151; - if (yych <= '9') goto yy1160; - goto yy1151; + if (yych <= '/') goto yy1164; + if (yych <= '9') goto yy1173; + goto yy1164; } else { - if (yych <= 'F') goto yy1160; - if (yych <= '`') goto yy1151; - if (yych <= 'f') goto yy1160; - goto yy1151; + if (yych <= 'F') goto yy1173; + if (yych <= '`') goto yy1164; + if (yych <= 'f') goto yy1173; + goto yy1164; } -yy1155: +yy1168: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1151; - if (yych <= '9') goto yy1161; - goto yy1151; + if (yych <= '/') goto yy1164; + if (yych <= '9') goto yy1174; + goto yy1164; } else { - if (yych <= 'F') goto yy1161; - if (yych <= '`') goto yy1151; - if (yych <= 'f') goto yy1161; - goto yy1151; + if (yych <= 'F') goto yy1174; + if (yych <= '`') goto yy1164; + if (yych <= 'f') goto yy1174; + goto yy1164; } -yy1156: +yy1169: yych = *++YYCURSOR; if (yybm[0+yych] & 128) { - goto yy1162; + goto yy1175; } - goto yy1151; -yy1157: + goto yy1164; +yy1170: yych = *++YYCURSOR; if (yych <= '`') { if (yych <= '7') { if (yych <= '&') { - if (yych == '"') goto yy1141; - goto yy1151; + if (yych == '"') goto yy1154; + goto yy1164; } else { - if (yych <= '\'') goto yy1141; - if (yych <= '/') goto yy1151; - goto yy1152; + if (yych <= '\'') goto yy1154; + if (yych <= '/') goto yy1164; + goto yy1165; } } else { if (yych <= 'T') { - if (yych == '?') goto yy1153; - goto yy1151; + if (yych == '?') goto yy1166; + goto yy1164; } else { - if (yych <= 'U') goto yy1154; - if (yych == '\\') goto yy1141; - goto yy1151; + if (yych <= 'U') goto yy1167; + if (yych == '\\') goto yy1154; + goto yy1164; } } } else { if (yych <= 'r') { if (yych <= 'f') { - if (yych <= 'b') goto yy1141; - if (yych <= 'e') goto yy1151; - goto yy1141; + if (yych <= 'b') goto yy1154; + if (yych <= 'e') goto yy1164; + goto yy1154; } else { - if (yych == 'n') goto yy1141; - if (yych <= 'q') goto yy1151; - goto yy1141; + if (yych == 'n') goto yy1154; + if (yych <= 'q') goto yy1164; + goto yy1154; } } else { if (yych <= 'u') { - if (yych <= 's') goto yy1151; - if (yych <= 't') goto yy1141; - goto yy1155; + if (yych <= 's') goto yy1164; + if (yych <= 't') goto yy1154; + goto yy1168; } else { - if (yych <= 'v') goto yy1141; - if (yych == 'x') goto yy1156; - goto yy1151; + if (yych <= 'v') goto yy1154; + if (yych == 'x') goto yy1169; + goto yy1164; } } } -yy1158: +yy1171: yych = *++YYCURSOR; - if (yych <= '/') goto yy1142; - if (yych <= '7') goto yy1141; - goto yy1142; -yy1159: + if (yych <= '/') goto yy1155; + if (yych <= '7') goto yy1154; + goto yy1155; +yy1172: yych = *++YYCURSOR; - if (yych == '/') goto yy1141; - goto yy1151; -yy1160: + if (yych == '/') goto yy1154; + goto yy1164; +yy1173: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1151; - if (yych <= '9') goto yy1164; - goto yy1151; + if (yych <= '/') goto yy1164; + if (yych <= '9') goto yy1177; + goto yy1164; } else { - if (yych <= 'F') goto yy1164; - if (yych <= '`') goto yy1151; - if (yych <= 'f') goto yy1164; - goto yy1151; + if (yych <= 'F') goto yy1177; + if (yych <= '`') goto yy1164; + if (yych <= 'f') goto yy1177; + goto yy1164; } -yy1161: +yy1174: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1151; - if (yych <= '9') goto yy1165; - goto yy1151; + if (yych <= '/') goto yy1164; + if (yych <= '9') goto yy1178; + goto yy1164; } else { - if (yych <= 'F') goto yy1165; - if (yych <= '`') goto yy1151; - if (yych <= 'f') goto yy1165; - goto yy1151; + if (yych <= 'F') goto yy1178; + if (yych <= '`') goto yy1164; + if (yych <= 'f') goto yy1178; + goto yy1164; } -yy1162: +yy1175: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yybm[0+yych] & 128) { - goto yy1162; + goto yy1175; } - goto yy1142; -yy1164: + goto yy1155; +yy1177: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1151; - if (yych <= '9') goto yy1166; - goto yy1151; + if (yych <= '/') goto yy1164; + if (yych <= '9') goto yy1179; + goto yy1164; } else { - if (yych <= 'F') goto yy1166; - if (yych <= '`') goto yy1151; - if (yych <= 'f') goto yy1166; - goto yy1151; + if (yych <= 'F') goto yy1179; + if (yych <= '`') goto yy1164; + if (yych <= 'f') goto yy1179; + goto yy1164; } -yy1165: +yy1178: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1151; - if (yych <= '9') goto yy1167; - goto yy1151; + if (yych <= '/') goto yy1164; + if (yych <= '9') goto yy1180; + goto yy1164; } else { - if (yych <= 'F') goto yy1167; - if (yych <= '`') goto yy1151; - if (yych <= 'f') goto yy1167; - goto yy1151; + if (yych <= 'F') goto yy1180; + if (yych <= '`') goto yy1164; + if (yych <= 'f') goto yy1180; + goto yy1164; } -yy1166: +yy1179: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1151; - if (yych <= '9') goto yy1155; - goto yy1151; + if (yych <= '/') goto yy1164; + if (yych <= '9') goto yy1168; + goto yy1164; } else { - if (yych <= 'F') goto yy1155; - if (yych <= '`') goto yy1151; - if (yych <= 'f') goto yy1155; - goto yy1151; + if (yych <= 'F') goto yy1168; + if (yych <= '`') goto yy1164; + if (yych <= 'f') goto yy1168; + goto yy1164; } -yy1167: +yy1180: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1151; - if (yych <= '9') goto yy1141; - goto yy1151; + if (yych <= '/') goto yy1164; + if (yych <= '9') goto yy1154; + goto yy1164; } else { - if (yych <= 'F') goto yy1141; - if (yych <= '`') goto yy1151; - if (yych <= 'f') goto yy1141; - goto yy1151; + if (yych <= 'F') goto yy1154; + if (yych <= '`') goto yy1164; + if (yych <= 'f') goto yy1154; + goto yy1164; } } -#line 610 "strict_cpp.re" +#line 624 "strict_cpp.re" } diff --git a/include/boost/wave/grammars/cpp_intlit_grammar.hpp b/include/boost/wave/grammars/cpp_intlit_grammar.hpp index 49f6b995d..c078c6de2 100644 --- a/include/boost/wave/grammars/cpp_intlit_grammar.hpp +++ b/include/boost/wave/grammars/cpp_intlit_grammar.hpp @@ -79,6 +79,7 @@ struct intlit_grammar : boost::spirit::classic::subrule<1> oct_lit; boost::spirit::classic::subrule<2> hex_lit; boost::spirit::classic::subrule<3> dec_lit; + boost::spirit::classic::subrule<4> bin_lit; definition(intlit_grammar const &self) { @@ -88,7 +89,7 @@ struct intlit_grammar : int_lit = ( sub_int_lit = - ( ch_p('0')[self.val = 0] >> (hex_lit | oct_lit) + ( ch_p('0')[self.val = 0] >> (hex_lit | oct_lit | bin_lit) | dec_lit ) >> !as_lower_d[ @@ -114,6 +115,14 @@ struct intlit_grammar : ] , + bin_lit = + (ch_p('b') | ch_p('B')) + >> uint_parser() + [ + self.val = phx::arg1 + ] + , + dec_lit = uint_parser() [ @@ -127,6 +136,7 @@ struct intlit_grammar : BOOST_SPIRIT_DEBUG_TRACE_RULE(hex_lit, TRACE_INTLIT_GRAMMAR); BOOST_SPIRIT_DEBUG_TRACE_RULE(oct_lit, TRACE_INTLIT_GRAMMAR); BOOST_SPIRIT_DEBUG_TRACE_RULE(dec_lit, TRACE_INTLIT_GRAMMAR); + BOOST_SPIRIT_DEBUG_TRACE_RULE(bin_lit, TRACE_INTLIT_GRAMMAR); } // start rule of this grammar diff --git a/include/boost/wave/language_support.hpp b/include/boost/wave/language_support.hpp index 6d011131f..1bbcb31e9 100644 --- a/include/boost/wave/language_support.hpp +++ b/include/boost/wave/language_support.hpp @@ -58,6 +58,15 @@ enum language_support { support_option_va_opt | 0x80000, support_cpp20 = support_cpp2a, #endif +#if BOOST_WAVE_SUPPORT_CPP2B != 0 + // support flags for C++23 + support_option_sizet_lit = 0x100000, + + support_cpp2b = support_option_variadics | support_option_long_long | + support_option_no_newline_at_end_of_file | support_option_has_include | + support_option_va_opt | support_option_sizet_lit | 0x200000, + support_cpp23 = support_cpp2b, +#endif #endif #endif @@ -137,6 +146,31 @@ need_cpp2a(language_support language) #endif +/////////////////////////////////////////////////////////////////////////////// +// +// need_cpp2b +// +// Extract if the language to support is C++23 +// +/////////////////////////////////////////////////////////////////////////////// +#if BOOST_WAVE_SUPPORT_CPP2B != 0 + +inline bool +need_cpp2b(language_support language) +{ + return (language & ~support_option_mask) == support_cpp2b; +} + +#else + +inline bool +need_cpp2b(language_support language) +{ + return false; +} + +#endif + #if BOOST_WAVE_SUPPORT_VARIADICS_PLACEMARKERS != 0 /////////////////////////////////////////////////////////////////////////////// // diff --git a/include/boost/wave/token_ids.hpp b/include/boost/wave/token_ids.hpp index 713a7d862..9ceda3e3a 100644 --- a/include/boost/wave/token_ids.hpp +++ b/include/boost/wave/token_ids.hpp @@ -311,9 +311,13 @@ enum token_id : std::uint32_t { T_CO_RETURN = TOKEN_FROM_ID(438, KeywordTokenType), T_CO_YIELD = TOKEN_FROM_ID(439, KeywordTokenType), T_REQUIRES = TOKEN_FROM_ID(440, KeywordTokenType), + T_MODULE = TOKEN_FROM_ID(441, KeywordTokenType), // C++20 operators - T_SPACESHIP = TOKEN_FROM_ID(441, OperatorTokenType), + T_SPACESHIP = TOKEN_FROM_ID(442, OperatorTokenType), + +// c++23 features + T_SIZETLIT = TOKEN_FROM_ID(443, IntegerLiteralTokenType), T_LAST_TOKEN_ID, T_LAST_TOKEN = ID_FROM_TOKEN(T_LAST_TOKEN_ID & ~PPTokenFlag), diff --git a/include/boost/wave/wave_config.hpp b/include/boost/wave/wave_config.hpp index 04844cc88..63e5350b8 100644 --- a/include/boost/wave/wave_config.hpp +++ b/include/boost/wave/wave_config.hpp @@ -142,6 +142,27 @@ # define BOOST_WAVE_SUPPORT_VA_OPT 0 #endif +/////////////////////////////////////////////////////////////////////////////// +// Decide whether to support C++23 +// +#if !defined(BOOST_WAVE_SUPPORT_CPP2B) +# define BOOST_WAVE_SUPPORT_CPP2B 1 +# undef BOOST_WAVE_SUPPORT_CPP2A +# define BOOST_WAVE_SUPPORT_CPP2A 1 +# undef BOOST_WAVE_SUPPORT_CPP0X +# define BOOST_WAVE_SUPPORT_CPP0X 1 +# undef BOOST_WAVE_SUPPORT_VARIADICS_PLACEMARKERS +# define BOOST_WAVE_SUPPORT_VARIADICS_PLACEMARKERS 1 +# undef BOOST_WAVE_SUPPORT_CPP1Z +# define BOOST_WAVE_SUPPORT_CPP1Z 1 +# if !defined(BOOST_WAVE_SUPPORT_HAS_INCLUDE) +# define BOOST_WAVE_SUPPORT_HAS_INCLUDE 1 +# endif +# if !defined(BOOST_WAVE_SUPPORT_VA_OPT) +# define BOOST_WAVE_SUPPORT_VA_OPT 1 +# endif +#endif + /////////////////////////////////////////////////////////////////////////////// // Undefine the following, to enable some MS specific language extensions: // __int8, __int16, __int32, __int64, __based, __declspec, __cdecl, diff --git a/samples/cpp_tokens/slex/cpp_slex_lexer.hpp b/samples/cpp_tokens/slex/cpp_slex_lexer.hpp index 03bad6619..6280f2800 100644 --- a/samples/cpp_tokens/slex/cpp_slex_lexer.hpp +++ b/samples/cpp_tokens/slex/cpp_slex_lexer.hpp @@ -53,12 +53,12 @@ namespace lexer { #if BOOST_WAVE_SUPPORT_MS_EXTENSIONS != 0 #define INIT_DATA_SIZE 175 #else -#define INIT_DATA_SIZE 158 +#define INIT_DATA_SIZE 159 #endif #define INIT_DATA_CPP_SIZE 15 #define INIT_DATA_PP_NUMBER_SIZE 2 #define INIT_DATA_CPP0X_SIZE 15 -#define INIT_DATA_CPP2A_SIZE 10 +#define INIT_DATA_CPP2A_SIZE 11 /////////////////////////////////////////////////////////////////////////////// // @@ -135,14 +135,19 @@ class lexer #define DIGIT "[0-9]" #define HEXDIGIT "[0-9a-fA-F]" #define OPTSIGN "[-+]?" +#define BINARYDIGIT "[01]" #define EXPSTART "[eE]" "[-+]" -#define EXPONENT "(" "[eE]" OPTSIGN "[0-9]+" ")" +#define EXPONENT "(" "[eE]" OPTSIGN DIGIT "('" DIGIT OR DIGIT ")*" ")" #define NONDIGIT "[a-zA-Z_]" - -#define INTEGER \ - "(" "(0x|0X)" HEXDIGIT "+" OR "0" OCTALDIGIT "*" OR "[1-9]" DIGIT "*" ")" +#define INTEGER "(" \ + "(0x|0X)" HEXDIGIT "('" HEXDIGIT OR HEXDIGIT ")*" OR \ + "(0b|0B)" BINARYDIGIT "('" BINARYDIGIT OR BINARYDIGIT ")*" OR \ + "0" "('" OCTALDIGIT OR OCTALDIGIT ")*" OR \ + "[1-9]" "('" DIGIT OR DIGIT ")*" \ + ")" #define INTEGER_SUFFIX "(" "[uU][lL]?|[lL][uU]?" ")" +#define SIZET_SUFFIX "(" "[uU]?[zZ]|[zZ][uU]?" ")" #if BOOST_WAVE_SUPPORT_MS_EXTENSIONS != 0 #define LONGINTEGER_SUFFIX "(" "[uU]" "(" "ll" OR "LL" ")" OR \ "(" "ll" OR "LL" ")" "[uU]" "?" OR \ @@ -373,9 +378,11 @@ lexer::init_data[INIT_DATA_SIZE] = TOKEN_DATA(LONGINTLIT, INTEGER LONGINTEGER_SUFFIX), TOKEN_DATA(INTLIT, INTEGER INTEGER_SUFFIX "?"), TOKEN_DATA(FLOATLIT, - "(" DIGIT "*" Q(".") DIGIT "+" OR DIGIT "+" Q(".") ")" + "(" DIGIT "?" "(" DIGIT "'" DIGIT OR DIGIT ")*" Q(".") DIGIT "('" DIGIT OR DIGIT ")*" OR + DIGIT "('" DIGIT OR DIGIT ")*" Q(".") ")" EXPONENT "?" FLOAT_SUFFIX "?" OR DIGIT "+" EXPONENT FLOAT_SUFFIX "?"), + TOKEN_DATA(SIZETLIT, INTEGER SIZET_SUFFIX ), TOKEN_DATA(CCOMMENT, CCOMMENT), TOKEN_DATA(CPPCOMMENT, Q("/") Q("/[^\\n\\r]*") NEWLINEDEF ), TOKEN_DATA(CHARLIT, CHAR_SPEC "'" @@ -485,6 +492,7 @@ lexer::init_data_cpp2a[INIT_DATA_CPP2A_SIZE] = TOKEN_DATA(CO_RETURN, "co_return"), TOKEN_DATA(CO_YIELD, "co_yield"), TOKEN_DATA(REQUIRES, "requires"), + TOKEN_DATA(MODULE, "module"), TOKEN_DATA(SPACESHIP, "<=>"), { token_id(0) } // this should be the last entry @@ -506,6 +514,7 @@ lexer::init_data_cpp2a[INIT_DATA_CPP2A_SIZE] = #undef EXPONENT #undef LONGINTEGER_SUFFIX #undef INTEGER_SUFFIX +#undef SIZET_SUFFIX #undef INTEGER #undef FLOAT_SUFFIX #undef CHAR_SPEC @@ -559,7 +568,7 @@ lexer::init_dfa(boost::wave::language_support lang) // if in C++0x mode, add appropriate keywords #if BOOST_WAVE_SUPPORT_CPP0X != 0 - if (boost::wave::need_cpp0x(lang) || boost::wave::need_cpp2a(lang)) { + if (boost::wave::need_cpp0x(lang) || boost::wave::need_cpp2a(lang) || boost::wave::need_cpp2b(lang)) { for (int j = 0; 0 != init_data_cpp0x[j].tokenid; ++j) { this->register_regex(init_data_cpp0x[j].tokenregex, init_data_cpp0x[j].tokenid, init_data_cpp0x[j].tokencb, @@ -568,14 +577,14 @@ lexer::init_dfa(boost::wave::language_support lang) } #endif - // if in C++2a mode, add those keywords +// if in C++2a mode, add those keywords #if BOOST_WAVE_SUPPORT_CPP2A != 0 - if (wave::need_cpp2a(lang)) { - for (int j = 0; 0 != init_data_cpp2a[j].tokenid; ++j) { - this->register_regex(init_data_cpp2a[j].tokenregex, - init_data_cpp2a[j].tokenid, - init_data_cpp2a[j].tokencb, - init_data_cpp2a[j].lexerstate); + if (wave::need_cpp2a(lang) || wave::need_cpp2b(lang)) { + for (int j = 0; 0 != init_data_cpp2a[j].tokenid; ++j) { + this->register_regex(init_data_cpp2a[j].tokenregex, + init_data_cpp2a[j].tokenid, + init_data_cpp2a[j].tokencb, + init_data_cpp2a[j].lexerstate); } } #endif diff --git a/samples/list_includes/lexertl/lexertl_lexer.hpp b/samples/list_includes/lexertl/lexertl_lexer.hpp index e339396b6..687474b60 100644 --- a/samples/list_includes/lexertl/lexertl_lexer.hpp +++ b/samples/list_includes/lexertl/lexertl_lexer.hpp @@ -54,13 +54,13 @@ namespace boost { namespace wave { namespace cpplexer { namespace lexertl #if BOOST_WAVE_SUPPORT_MS_EXTENSIONS != 0 #define INIT_DATA_SIZE 176 #else -#define INIT_DATA_SIZE 159 +#define INIT_DATA_SIZE 160 #endif #define INIT_DATA_CPP_SIZE 15 #define INIT_DATA_PP_NUMBER_SIZE 2 #define INIT_DATA_CPP0X_SIZE 15 -#define INIT_DATA_CPP2A_SIZE 10 -#define INIT_MACRO_DATA_SIZE 28 +#define INIT_DATA_CPP2A_SIZE 11 +#define INIT_MACRO_DATA_SIZE 30 #endif // #if BOOST_WAVE_LEXERTL_USE_STATIC_TABLES == 0 // this is just a hack to have a unique token id not otherwise used by Wave @@ -159,12 +159,17 @@ lexertl::init_macro_data[INIT_MACRO_DATA_SIZE] = MACRO_DATA("OCTALDIGIT", "[0-7]"), MACRO_DATA("DIGIT", "[0-9]"), MACRO_DATA("HEXDIGIT", "[0-9a-fA-F]"), + MACRO_DATA("BINARYDIGIT", "[0-1]"), MACRO_DATA("OPTSIGN", "[-+]?"), MACRO_DATA("EXPSTART", "[eE][-+]"), - MACRO_DATA("EXPONENT", "([eE]{OPTSIGN}{DIGIT}+)"), + MACRO_DATA("EXPONENT", "([eE]{OPTSIGN}{DIGIT}('{DIGIT}|{DIGIT})*)"), MACRO_DATA("NONDIGIT", "[a-zA-Z_]"), - MACRO_DATA("INTEGER", "(" "(0x|0X){HEXDIGIT}+" OR "0{OCTALDIGIT}*" OR "[1-9]{DIGIT}*" ")"), + MACRO_DATA("INTEGER", "(" "(0x|0X){HEXDIGIT}('{HEXDIGIT}|{HEXDIGIT})*" + OR "0('{OCTALDIGIT}|{OCTALDIGIT})*" + OR "[1-9]('{DIGIT}|{DIGIT})*" + OR "(0b|0B){BINARYDIGIT}('{BINARYDIGIT}|{BINARYDIGIT})*" ")"), MACRO_DATA("INTEGER_SUFFIX", "(" "[uU][lL]?" OR "[lL][uU]?" ")"), + MACRO_DATA("SIZET_SUFFIX", "(" "[uU]?[zZ]" OR "[zZ][uU]?" ")"), #if BOOST_WAVE_SUPPORT_MS_EXTENSIONS != 0 MACRO_DATA("LONGINTEGER_SUFFIX", "([uU](ll|LL)|(ll|LL)[uU]?|i64)"), #else @@ -352,9 +357,11 @@ lexertl::init_data[INIT_DATA_SIZE] = #endif // BOOST_WAVE_SUPPORT_MS_EXTENSIONS != 0 TOKEN_DATA(T_LONGINTLIT, "{INTEGER}{LONGINTEGER_SUFFIX}"), TOKEN_DATA(T_INTLIT, "{INTEGER}{INTEGER_SUFFIX}?"), + TOKEN_DATA(T_SIZETLIT, "{INTEGER}{SIZET_SUFFIX}?"), TOKEN_DATA(T_FLOATLIT, - "(" "{DIGIT}*" Q(".") "{DIGIT}+" OR "{DIGIT}+" Q(".") "){EXPONENT}?{FLOAT_SUFFIX}?" OR - "{DIGIT}+{EXPONENT}{FLOAT_SUFFIX}?"), + "(" "({DIGIT}|{DIGIT}'{DIGIT})*" Q(".") "{DIGIT}('{DIGIT}|{DIGIT})*" OR + "{DIGIT}('{DIGIT}|{DIGIT})*" Q(".") "){EXPONENT}?{FLOAT_SUFFIX}?" OR + "{DIGIT}+{EXPONENT}{FLOAT_SUFFIX}?"), #if BOOST_WAVE_USE_STRICT_LEXER != 0 TOKEN_DATA(T_IDENTIFIER, "(" "{NONDIGIT}" OR "{UNIVERSALCHAR}" ")" @@ -464,6 +471,7 @@ lexertl::init_data_cpp2a[INIT_DATA_CPP2A_SIZE] = TOKEN_DATA(T_CO_RETURN, "co_return"), TOKEN_DATA(T_CO_YIELD, "co_yield"), TOKEN_DATA(T_REQUIRES, "requires"), + TOKEN_DATA(T_MODULE, "module"), TOKEN_DATA(T_SPACESHIP, "<=>"), { token_id(0) } // this should be the last entry }; @@ -516,7 +524,7 @@ std::ifstream dfa_in("wave_lexertl_lexer.dfa", std::ios::in|std::ios::binary); // if in C++0x mode, add appropriate keywords #if BOOST_WAVE_SUPPORT_CPP0X != 0 - if (wave::need_cpp0x(lang) || wave::need_cpp2a(lang)) { + if (wave::need_cpp0x(lang) || wave::need_cpp2a(lang) || wave::need_cpp2b(lang)) { for (int j = 0; 0 != init_data_cpp0x[j].tokenid; ++j) { rules.add(init_data_cpp0x[j].tokenregex, init_data_cpp0x[j].tokenid); @@ -526,7 +534,7 @@ std::ifstream dfa_in("wave_lexertl_lexer.dfa", std::ios::in|std::ios::binary); // if in C++2a mode, add those keywords #if BOOST_WAVE_SUPPORT_CPP2A != 0 - if (wave::need_cpp2a(lang)) { + if (wave::need_cpp2a(lang) || wave::need_cpp2b(lang)) { for (int j = 0; 0 != init_data_cpp2a[j].tokenid; ++j) { rules.add(init_data_cpp2a[j].tokenregex, init_data_cpp2a[j].tokenid); diff --git a/samples/token_statistics/xlex/xlex_lexer.hpp b/samples/token_statistics/xlex/xlex_lexer.hpp index efb2c5c24..8bd1e6bc9 100644 --- a/samples/token_statistics/xlex/xlex_lexer.hpp +++ b/samples/token_statistics/xlex/xlex_lexer.hpp @@ -135,21 +135,24 @@ class lexer #define OCTALDIGIT "[0-7]" #define DIGIT "[0-9]" #define HEXDIGIT "[0-9a-fA-F]" +#define BINARYDIGIT "[01]" #define SIGN "[-+]?" -#define EXPONENT "(" "[eE]" SIGN "[0-9]+" ")" +#define EXPONENT "(" "[eE]" SIGN DIGIT "('" DIGIT OR DIGIT ")*" ")" #define INTEGER "(" \ - "(0x|0X)" HEXDIGIT "+" OR \ - "0" OCTALDIGIT "*" OR \ - "[1-9]" DIGIT "*" \ + "(0x|0X)" HEXDIGIT "('" HEXDIGIT OR HEXDIGIT ")*" OR \ + "(0b|0B)" BINARYDIGIT "('" BINARYDIGIT OR BINARYDIGIT ")*" OR \ + "0" "('" OCTALDIGIT OR OCTALDIGIT ")*" OR \ + "[1-9]" "('" DIGIT OR DIGIT ")*" \ ")" - + #define INTEGER_SUFFIX "(" "[uU][lL]?|[lL][uU]?" ")" +#define SIZET_SUFFIX "(" "[uU][zZ]|[zZ][uU]?" ")" #if BOOST_WAVE_SUPPORT_MS_EXTENSIONS != 0 #define LONGINTEGER_SUFFIX "(" "[uU]" "(" "ll" OR "LL" ")" OR \ "(" "ll" OR "LL" ")" "[uU]" "?" OR \ "i64" \ - ")" + ")" #else #define LONGINTEGER_SUFFIX "(" "[uU]" "(" "ll" OR "LL" ")" OR \ "(" "ll" OR "LL" ")" "[uU]" "?" ")" @@ -353,9 +356,11 @@ lexer::init_data[] = TOKEN_DATA(T_PP_UNDEF, POUNDDEF PPSPACE "undef"), TOKEN_DATA(T_PP_WARNING, POUNDDEF PPSPACE "warning"), TOKEN_DATA(T_FLOATLIT, - "(" DIGIT "*" Q(".") DIGIT "+" OR DIGIT "+" Q(".") ")" + "(" DIGIT "?" "(" DIGIT "'" DIGIT OR DIGIT ")*" Q(".") DIGIT "('" DIGIT OR DIGIT ")*" OR + DIGIT "('" DIGIT OR DIGIT ")*" Q(".") ")" EXPONENT "?" FLOAT_SUFFIX "?" OR DIGIT "+" EXPONENT FLOAT_SUFFIX "?"), + TOKEN_DATA(T_SIZETLIT, INTEGER SIZET_SUFFIX), TOKEN_DATA(T_LONGINTLIT, INTEGER LONGINTEGER_SUFFIX), TOKEN_DATA(T_INTLIT, INTEGER INTEGER_SUFFIX "?"), #if BOOST_WAVE_USE_STRICT_LEXER != 0 @@ -446,6 +451,7 @@ lexer::init_data_cpp2a[] = TOKEN_DATA(T_CO_RETURN, "co_return"), TOKEN_DATA(T_CO_YIELD, "co_yield"), TOKEN_DATA(T_REQUIRES, "requires"), + TOKEN_DATA(T_MODULE, "module"), TOKEN_DATA(T_SPACESHIP, "<=>"), { token_id(0) } // this should be the last entry }; @@ -463,6 +469,7 @@ lexer::init_data_cpp2a[] = #undef EXPONENT #undef LONGINTEGER_SUFFIX #undef INTEGER_SUFFIX +#undef SIZET_SUFFIX #undef INTEGER #undef FLOAT_SUFFIX #undef CHAR_SPEC @@ -499,7 +506,7 @@ lexer::lexer(Iterator const &first, } #if BOOST_WAVE_SUPPORT_CPP0X != 0 - if (boost::wave::need_cpp0x(language) || boost::wave::need_cpp2a(language)) { + if (boost::wave::need_cpp0x(language) || boost::wave::need_cpp2a(language) || boost::wave::need_cpp2b(language)) { for (int j = 0; 0 != init_data_cpp0x[j].tokenid; ++j) { xlexer.register_regex(init_data_cpp0x[j].tokenregex, init_data_cpp0x[j].tokenid, init_data_cpp[j].tokencb); @@ -508,7 +515,7 @@ lexer::lexer(Iterator const &first, #endif #if BOOST_WAVE_SUPPORT_CPP2A != 0 - if (boost::wave::need_cpp2a(language) || boost::wave::need_cpp2a(language)) { + if (boost::wave::need_cpp2a(language) || boost::wave::need_cpp2b(language)) { for (int j = 0; 0 != init_data_cpp2a[j].tokenid; ++j) { xlexer.register_regex(init_data_cpp2a[j].tokenregex, init_data_cpp2a[j].tokenid, init_data_cpp[j].tokencb); diff --git a/src/token_ids.cpp b/src/token_ids.cpp index 6a0b1cc6d..a0b0d9461 100644 --- a/src/token_ids.cpp +++ b/src/token_ids.cpp @@ -231,7 +231,9 @@ static char const *tok_names[] = { /* 438 */ "T_CO_RETURN", /* 439 */ "T_CO_YIELD", /* 440 */ "T_REQUIRES", - /* 441 */ "T_SPACESHIP", + /* 441 */ "T_MODULE", + /* 442 */ "T_SPACESHIP", + /* 443 */ "T_SIZETLIT", }; // make sure, I have not forgotten any commas (as I did more than once) @@ -443,7 +445,9 @@ static char const *tok_values[] = { /* 438 */ "co_return", /* 439 */ "co_yield", /* 440 */ "requires", - /* 441 */ "<=>", + /* 441 */ "module", + /* 442 */ "<=>", + /* 443 */ "", // sizetlit }; // make sure, I have not forgotten any commas (as I did more than once) diff --git a/test/testlexers/cpp_tokens.hpp b/test/testlexers/cpp_tokens.hpp index 6ea5763b6..1259765e6 100644 --- a/test/testlexers/cpp_tokens.hpp +++ b/test/testlexers/cpp_tokens.hpp @@ -253,8 +253,10 @@ lexem const lexems[] = { "1e1L", boost::wave::T_FLOATLIT }, { "1.1e1fl", boost::wave::T_FLOATLIT }, { "1.e1LF", boost::wave::T_FLOATLIT }, + { "123'4.1'2e1fl", boost::wave::T_FLOATLIT }, { "1234LL", boost::wave::T_LONGINTLIT }, { "1234ll", boost::wave::T_LONGINTLIT }, + { "12'34ll", boost::wave::T_LONGINTLIT }, { "1234llu", boost::wave::T_LONGINTLIT }, { "1234ull", boost::wave::T_LONGINTLIT }, #if BOOST_WAVE_SUPPORT_MS_EXTENSIONS != 0 @@ -262,8 +264,16 @@ lexem const lexems[] = #endif { "1234L", boost::wave::T_INTLIT }, { "1234l", boost::wave::T_INTLIT }, + { "1'2'34l", boost::wave::T_INTLIT }, { "1234ul", boost::wave::T_INTLIT }, { "1234LU", boost::wave::T_INTLIT }, + { "0x12'ab78", boost::wave::T_INTLIT }, + { "013'77", boost::wave::T_INTLIT }, + { "0b10'00101", boost::wave::T_INTLIT }, + { "1234z", boost::wave::T_SIZETLIT}, + { "1234zU", boost::wave::T_SIZETLIT}, + { "1234UZ", boost::wave::T_SIZETLIT}, + { "module", boost::wave::T_MODULE}, { "1234", boost::wave::T_INTLIT }, { " ", boost::wave::T_SPACE }, { "\t", boost::wave::T_SPACE }, diff --git a/test/testlexers/test_lexertl_lexer.cpp b/test/testlexers/test_lexertl_lexer.cpp index fb9b9b1d7..a217ee919 100644 --- a/test/testlexers/test_lexertl_lexer.cpp +++ b/test/testlexers/test_lexertl_lexer.cpp @@ -50,7 +50,7 @@ main(int argc, char *argv[]) token_type::string_type instr(data->token); lexer_type it = lexer_type(instr.begin(), instr.end(), pos, - boost::wave::support_cpp2a); + boost::wave::support_cpp2b); lexer_type end = lexer_type(); // verify the correct outcome of the tokenization diff --git a/test/testlexers/test_re2c_lexer.cpp b/test/testlexers/test_re2c_lexer.cpp index a935c6bdf..c67142d85 100644 --- a/test/testlexers/test_re2c_lexer.cpp +++ b/test/testlexers/test_re2c_lexer.cpp @@ -56,7 +56,7 @@ main(int argc, char *argv[]) token_type::string_type instr(data->token); lexer_type it = lexer_type(instr.begin(), instr.end(), pos, - boost::wave::support_cpp2a); + boost::wave::support_cpp2b); lexer_type end = lexer_type(); // verify the correct outcome of the tokenization diff --git a/test/testlexers/test_slex_lexer.cpp b/test/testlexers/test_slex_lexer.cpp index 7cfe124a9..2616e6674 100644 --- a/test/testlexers/test_slex_lexer.cpp +++ b/test/testlexers/test_slex_lexer.cpp @@ -59,7 +59,7 @@ main(int argc, char *argv[]) token_type::string_type instr(data->token); lexer_type it = lexer_type(instr.begin(), instr.end(), pos, - boost::wave::support_cpp2a); + boost::wave::support_cpp2b); lexer_type end = lexer_type(); // verify the correct outcome of the tokenization diff --git a/test/testlexers/test_xlex_lexer.cpp b/test/testlexers/test_xlex_lexer.cpp index 13fb9b5be..26b1aeddb 100644 --- a/test/testlexers/test_xlex_lexer.cpp +++ b/test/testlexers/test_xlex_lexer.cpp @@ -57,7 +57,7 @@ main(int argc, char *argv[]) token_type::string_type instr(data->token); lexer_type it = lexer_type(instr.begin(), instr.end(), pos, - boost::wave::support_cpp2a); + boost::wave::support_cpp2b); lexer_type end = lexer_type(); // verify the correct outcome of the tokenisation diff --git a/test/testwave/testwave_app.cpp b/test/testwave/testwave_app.cpp index 8be7b100e..7318178b4 100644 --- a/test/testwave/testwave_app.cpp +++ b/test/testwave/testwave_app.cpp @@ -422,6 +422,9 @@ testwave_app::testwave_app(po::variables_map const& vm) #endif #if BOOST_WAVE_SUPPORT_CPP2A != 0 ("c++20", "enable C++20 mode (implies --variadics and --long_long, adds __has_include and __VA_OPT__)") +#endif +#if BOOST_WAVE_SUPPORT_CPP2B != 0 + ("c++23", "enable C++23 mode (all C++20 features, plus size_t literals)") #endif ("warning,W", po::value >()->composing(), "Warning settings.") @@ -1078,6 +1081,35 @@ testwave_app::initialise_options(Context& ctx, po::variables_map const& vm, } #endif +#if BOOST_WAVE_SUPPORT_CPP2B + if (vm.count("c++23")) { + ctx.set_language( + boost::wave::language_support( + boost::wave::support_cpp2b +#if BOOST_WAVE_SUPPORT_HAS_INCLUDE != 0 + | boost::wave::support_option_has_include +#endif +#if BOOST_WAVE_SUPPORT_VA_OPT != 0 + | boost::wave::support_option_va_opt +#endif + | boost::wave::support_option_convert_trigraphs + | boost::wave::support_option_long_long + | boost::wave::support_option_emit_line_directives + #if BOOST_WAVE_SUPPORT_PRAGMA_ONCE != 0 + | boost::wave::support_option_include_guard_detection + #endif + #if BOOST_WAVE_EMIT_PRAGMA_DIRECTIVES != 0 + | boost::wave::support_option_emit_pragma_directives + #endif + | boost::wave::support_option_insert_whitespace + )); + + if (9 == debuglevel) { + std::cerr << "initialise_options: option: c++23" << std::endl; + } + } +#endif + // enable long_long mode, if appropriate if (vm.count("long_long")) { if (9 == debuglevel) { diff --git a/tool/cpp.cpp b/tool/cpp.cpp index 3b4a827d2..b6f775b6b 100644 --- a/tool/cpp.cpp +++ b/tool/cpp.cpp @@ -946,6 +946,31 @@ do_actual_work (std::string file_name, std::istream &instream, } #endif // BOOST_WAVE_SUPPORT_CPP2A != 0 +#if BOOST_WAVE_SUPPORT_CPP2B != 0 + if (vm.count("c++23")) { + ctx.set_language( + boost::wave::language_support( + boost::wave::support_cpp2b +#if BOOST_WAVE_SUPPORT_HAS_INCLUDE != 0 + | boost::wave::support_option_has_include +#endif +#if BOOST_WAVE_SUPPORT_VA_OPT != 0 + | boost::wave::support_option_va_opt +#endif + | boost::wave::support_option_convert_trigraphs + | boost::wave::support_option_long_long + | boost::wave::support_option_emit_line_directives +#if BOOST_WAVE_SUPPORT_PRAGMA_ONCE != 0 + | boost::wave::support_option_include_guard_detection +#endif +#if BOOST_WAVE_EMIT_PRAGMA_DIRECTIVES != 0 + | boost::wave::support_option_emit_pragma_directives +#endif + | boost::wave::support_option_insert_whitespace + )); + } +#endif // BOOST_WAVE_SUPPORT_CPP2B != 0 + // enable long long support, if appropriate if (vm.count("long_long")) { ctx.set_language( @@ -1380,6 +1405,9 @@ main (int argc, char *argv[]) #endif #if BOOST_WAVE_SUPPORT_CPP2A != 0 ("c++20", "enable C++20 mode (implies --variadics and --long_long, adds __VA_OPT__)") +#endif +#if BOOST_WAVE_SUPPORT_CPP2B != 0 + ("c++23", "enable C++23 mode (all C++20 features, plus size_t literals)") #endif ("listincludes,l", po::value(), "list names of included files to a file [arg] or to stdout [-]")