From efbf08fab45a2cb36443ecb534059f081eba77d4 Mon Sep 17 00:00:00 2001 From: Hartmut Kaiser Date: Tue, 10 Sep 2013 12:47:28 +0000 Subject: [PATCH] Wave: Merging from trunk [SVN r85641] --- ChangeLog | 6 +- doc/class_reference_inptpolcy.html | 4 +- doc/wave_driver.html | 6 +- .../wave/cpplexer/re2clex/cpp_re2c_lexer.hpp | 2 +- include/boost/wave/util/flex_string.hpp | 2 +- samples/cpp_tokens/slex/cpp_slex_lexer.hpp | 2 +- .../list_includes/lexertl/lexertl_lexer.hpp | 2 +- samples/token_statistics/xlex/xlex_lexer.hpp | 2 +- samples/waveidl/idllexer/idl_re2c_lexer.hpp | 2 +- src/cpplexer/re2clex/cpp.re | 47 +- src/cpplexer/re2clex/cpp_re.inc | 2124 +++++++++-------- src/cpplexer/re2clex/strict_cpp_re.inc | 2 +- test/testwave/testfiles/t_9_024.cpp | 34 + test/testwave/testfiles/test.cfg | 3 +- test/testwave/testwave_app.cpp | 33 +- test/testwave/testwave_app.hpp | 8 +- 16 files changed, 1183 insertions(+), 1096 deletions(-) create mode 100644 test/testwave/testfiles/t_9_024.cpp diff --git a/ChangeLog b/ChangeLog index 849855d..755541b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,7 +1,7 @@ Boost.Wave: A Standard compliant C++ preprocessor library http://www.boost.org/ -Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost +Copyright (c) 2001-2013 Hartmut Kaiser. Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) ------------------------------------------------------------------------------- @@ -20,6 +20,10 @@ TODO (known issues): CHANGELOG +Boost V1.55: + - Fixed #8848: Wave driver improperly processes 0xFFFFui64 token + - Fixed #9098: Wave driver option --c++0x invalid + Boost V1.54: - Fixed #8478: Make Boost.wave compatible with Clang's -Wimplicit-fallthrough diagnostic. diff --git a/doc/class_reference_inptpolcy.html b/doc/class_reference_inptpolcy.html index cf93532..7722828 100644 --- a/doc/class_reference_inptpolcy.html +++ b/doc/class_reference_inptpolcy.html @@ -71,8 +71,8 @@ } iter_ctx.instring = std::string( - std::istreambuf_iterator(instream.rdbuf()), - std::istreambuf_iterator()); + std::istreambuf_iterator<char>(instream.rdbuf()), + std::istreambuf_iterator<char>()); iter_ctx.first = iterator_type(iter_ctx.instring.begin(), iter_ctx.instring.end(), diff --git a/doc/wave_driver.html b/doc/wave_driver.html index 36a608b..92bde11 100644 --- a/doc/wave_driver.html +++ b/doc/wave_driver.html @@ -56,7 +56,7 @@ --long_long: enable long long support if C++ mode --variadics: enable variadics and placemarkers in C++ mode --c99: enable C99 mode (implies variadics and placemarkers) - --c++0x enable C++0x mode (implies --variadics and --long_long) + --c++11 enable C++11 mode (implies --variadics and --long_long) -l [ --listincludes ] arg: list included file to a file [arg] or to stdout [-] -m [ --macronames ] arg: list names of all defined macros to a file [arg] or to stdout [-] @@ -192,9 +192,9 @@ about predefined macros you may look here.

-

--c++0x

+

--c++11

-

Enable the C++0x mode. This mode enables C++0x specific keywords and features, such +

Enable the C++11 mode. This mode enables C++11 specific keywords and features, such as variadics (macros with variable parameter lists), placemarkers (empty macro arguments) and operator _Pragma support. Several predefined macros are different for this mode, for more information diff --git a/include/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp b/include/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp index e261545..0d3e025 100644 --- a/include/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp +++ b/include/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp @@ -394,7 +394,7 @@ token_cache::string_type> const // // This function is declared inside the cpp_lex_token.hpp file, which is // referenced by the source file calling the lexer and the source file, which -// instantiates the lex_functor. But is is defined here, so it will be +// instantiates the lex_functor. But it is defined here, so it will be // instantiated only while compiling the source file, which instantiates the // lex_functor. While the cpp_re2c_token.hpp file may be included everywhere, // this file (cpp_re2c_lexer.hpp) should be included only once. This allows diff --git a/include/boost/wave/util/flex_string.hpp b/include/boost/wave/util/flex_string.hpp index 321b6fb..c2fd259 100644 --- a/include/boost/wave/util/flex_string.hpp +++ b/include/boost/wave/util/flex_string.hpp @@ -344,7 +344,7 @@ private: // 11-17-2000: comment added: // No need to allocate (capacity + 1) to // accommodate the terminating 0, because Data already - // has one one character in there + // has one character in there pData_ = static_cast( malloc(sizeof(Data) + capacity * sizeof(E))); if (!pData_) boost::throw_exception(std::bad_alloc()); diff --git a/samples/cpp_tokens/slex/cpp_slex_lexer.hpp b/samples/cpp_tokens/slex/cpp_slex_lexer.hpp index 17a105d..005f024 100644 --- a/samples/cpp_tokens/slex/cpp_slex_lexer.hpp +++ b/samples/cpp_tokens/slex/cpp_slex_lexer.hpp @@ -780,7 +780,7 @@ lexer::lexer slex_functor::lexer; // // This function is declared inside the cpp_slex_token.hpp file, which is // referenced by the source file calling the lexer and the source file, which -// instantiates the lex_functor. But is is defined here, so it will be +// instantiates the lex_functor. But it is defined here, so it will be // instantiated only while compiling the source file, which instantiates the // lex_functor. While the cpp_slex_token.hpp file may be included everywhere, // this file (cpp_slex_lexer.hpp) should be included only once. This allows diff --git a/samples/list_includes/lexertl/lexertl_lexer.hpp b/samples/list_includes/lexertl/lexertl_lexer.hpp index 392d445..e1d3030 100644 --- a/samples/list_includes/lexertl/lexertl_lexer.hpp +++ b/samples/list_includes/lexertl/lexertl_lexer.hpp @@ -782,7 +782,7 @@ lexer::lexertl< // // This function is declared inside the xlex_interface.hpp file, which is // referenced by the source file calling the lexer and the source file, which -// instantiates the lex_functor. But is is defined here, so it will be +// instantiates the lex_functor. But it is defined here, so it will be // instantiated only while compiling the source file, which instantiates the // lex_functor. While the xlex_interface.hpp file may be included everywhere, // this file (xlex_lexer.hpp) should be included only once. This allows diff --git a/samples/token_statistics/xlex/xlex_lexer.hpp b/samples/token_statistics/xlex/xlex_lexer.hpp index e973c77..c9e8c4c 100644 --- a/samples/token_statistics/xlex/xlex_lexer.hpp +++ b/samples/token_statistics/xlex/xlex_lexer.hpp @@ -557,7 +557,7 @@ private: // // This function is declared inside the xlex_interface.hpp file, which is // referenced by the source file calling the lexer and the source file, which -// instantiates the lex_functor. But is is defined here, so it will be +// instantiates the lex_functor. But it is defined here, so it will be // instantiated only while compiling the source file, which instantiates the // lex_functor. While the xlex_interface.hpp file may be included everywhere, // this file (xlex_lexer.hpp) should be included only once. This allows diff --git a/samples/waveidl/idllexer/idl_re2c_lexer.hpp b/samples/waveidl/idllexer/idl_re2c_lexer.hpp index 7b39782..9f4457b 100644 --- a/samples/waveidl/idllexer/idl_re2c_lexer.hpp +++ b/samples/waveidl/idllexer/idl_re2c_lexer.hpp @@ -246,7 +246,7 @@ private: // // This function is declared inside the cpp_slex_token.hpp file, which is // referenced by the source file calling the lexer and the source file, which -// instantiates the lex_functor. But is is defined here, so it will be +// instantiates the lex_functor. But it is defined here, so it will be // instantiated only while compiling the source file, which instantiates the // lex_functor. While the cpp_re2c_token.hpp file may be included everywhere, // this file (cpp_re2c_lexer.hpp) should be included only once. This allows diff --git a/src/cpplexer/re2clex/cpp.re b/src/cpplexer/re2clex/cpp.re index 217eff6..ac8ea2a 100644 --- a/src/cpplexer/re2clex/cpp.re +++ b/src/cpplexer/re2clex/cpp.re @@ -2,7 +2,7 @@ Boost.Wave: A Standard compliant C++ preprocessor library Copyright (c) 2001 Daniel C. Nuffer - Copyright (c) 2001-2011 Hartmut Kaiser. + Copyright (c) 2001-2013 Hartmut Kaiser. Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) @@ -16,27 +16,28 @@ =============================================================================*/ /*!re2c -re2c:indent:string = " "; -any = [\t\v\f\r\n\040-\377]; -anyctrl = [\001-\037]; -OctalDigit = [0-7]; -Digit = [0-9]; -HexDigit = [a-fA-F0-9]; -Integer = (("0" [xX] HexDigit+) | ("0" OctalDigit*) | ([1-9] Digit*)); -ExponentStart = [Ee] [+-]; -ExponentPart = [Ee] [+-]? Digit+; -FractionalConstant = (Digit* "." Digit+) | (Digit+ "."); -FloatingSuffix = [fF] [lL]? | [lL] [fF]?; -IntegerSuffix = [uU] [lL]? | [lL] [uU]?; -LongIntegerSuffix = [uU] ([lL] [lL]) | ([lL] [lL]) [uU]?; -Backslash = [\\] | "??/"; -EscapeSequence = Backslash ([abfnrtv?'"] | Backslash | "x" HexDigit+ | OctalDigit OctalDigit? OctalDigit?); -HexQuad = HexDigit HexDigit HexDigit HexDigit; -UniversalChar = Backslash ("u" HexQuad | "U" HexQuad HexQuad); -Newline = "\r\n" | "\n" | "\r"; -PPSpace = ([ \t\f\v]|("/*"(any\[*]|Newline|("*"+(any\[*/]|Newline)))*"*"+"/"))*; -Pound = "#" | "??=" | "%:"; -NonDigit = [a-zA-Z_$] | UniversalChar; +re2c:indent:string = " "; +any = [\t\v\f\r\n\040-\377]; +anyctrl = [\001-\037]; +OctalDigit = [0-7]; +Digit = [0-9]; +HexDigit = [a-fA-F0-9]; +Integer = (("0" [xX] HexDigit+) | ("0" OctalDigit*) | ([1-9] Digit*)); +ExponentStart = [Ee] [+-]; +ExponentPart = [Ee] [+-]? Digit+; +FractionalConstant = (Digit* "." Digit+) | (Digit+ "."); +FloatingSuffix = [fF] [lL]? | [lL] [fF]?; +IntegerSuffix = [uU] [lL]? | [lL] [uU]?; +LongIntegerSuffix = [uU] ([lL] [lL]) | ([lL] [lL]) [uU]?; +MSLongIntegerSuffix = "u"? "i64"; +Backslash = [\\] | "??/"; +EscapeSequence = Backslash ([abfnrtv?'"] | Backslash | "x" HexDigit+ | OctalDigit OctalDigit? OctalDigit?); +HexQuad = HexDigit HexDigit HexDigit HexDigit; +UniversalChar = Backslash ("u" HexQuad | "U" HexQuad HexQuad); +Newline = "\r\n" | "\n" | "\r"; +PPSpace = ([ \t\f\v]|("/*"(any\[*]|Newline|("*"+(any\[*/]|Newline)))*"*"+"/"))*; +Pound = "#" | "??=" | "%:"; +NonDigit = [a-zA-Z_$] | UniversalChar; */ /*!re2c @@ -458,7 +459,7 @@ integer_suffix: { if (s->enable_ms_extensions) { /*!re2c - LongIntegerSuffix | "i64" + LongIntegerSuffix | MSLongIntegerSuffix { BOOST_WAVE_RET(T_LONGINTLIT); } IntegerSuffix? diff --git a/src/cpplexer/re2clex/cpp_re.inc b/src/cpplexer/re2clex/cpp_re.inc index afb7fc1..37d7ade 100644 --- a/src/cpplexer/re2clex/cpp_re.inc +++ b/src/cpplexer/re2clex/cpp_re.inc @@ -1,10 +1,10 @@ -/* Generated by re2c 0.13.5 on Sun Jan 09 15:38:23 2011 */ +/* Generated by re2c 0.13.5 on Thu Jul 18 20:13:38 2013 */ #line 1 "cpp.re" /*============================================================================= Boost.Wave: A Standard compliant C++ preprocessor library Copyright (c) 2001 Daniel C. Nuffer - Copyright (c) 2001-2011 Hartmut Kaiser. + Copyright (c) 2001-2013 Hartmut Kaiser. Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) @@ -17,7 +17,7 @@ handle errors better. =============================================================================*/ -#line 40 "cpp.re" +#line 41 "cpp.re" @@ -232,7 +232,7 @@ yy2: if (yych <= '/') goto yy996; if (yych == '=') goto yy994; } -#line 188 "cpp.re" +#line 189 "cpp.re" { BOOST_WAVE_RET(T_DIVIDE); } #line 238 "cpp_re.inc" yy4: @@ -246,13 +246,13 @@ yy4: if (yych <= '9') goto yy991; } yy5: -#line 174 "cpp.re" +#line 175 "cpp.re" { BOOST_WAVE_RET(T_DOT); } #line 252 "cpp_re.inc" yy6: ++YYCURSOR; yy7: -#line 45 "cpp.re" +#line 46 "cpp.re" { goto pp_number; } #line 258 "cpp_re.inc" yy8: @@ -266,7 +266,7 @@ yy8: default: goto yy109; } yy9: -#line 290 "cpp.re" +#line 291 "cpp.re" { BOOST_WAVE_RET(T_IDENTIFIER); } #line 272 "cpp_re.inc" yy10: @@ -460,7 +460,7 @@ yy28: } yy29: ++YYCURSOR; -#line 138 "cpp.re" +#line 139 "cpp.re" { BOOST_WAVE_RET(T_LEFTBRACE); } #line 466 "cpp_re.inc" yy31: @@ -468,7 +468,7 @@ yy31: yych = *(YYMARKER = ++YYCURSOR); if (yych == '?') goto yy419; yy32: -#line 163 "cpp.re" +#line 164 "cpp.re" { BOOST_WAVE_RET(T_QUESTION_MARK); } #line 474 "cpp_re.inc" yy33: @@ -482,12 +482,12 @@ yy33: if (yych <= '=') goto yy409; } yy34: -#line 204 "cpp.re" +#line 205 "cpp.re" { BOOST_WAVE_RET(T_LESS); } #line 488 "cpp_re.inc" yy35: ++YYCURSOR; -#line 141 "cpp.re" +#line 142 "cpp.re" { BOOST_WAVE_RET(T_RIGHTBRACE); } #line 493 "cpp_re.inc" yy37: @@ -498,24 +498,24 @@ yy37: if (yych <= '=') goto yy402; if (yych <= '>') goto yy404; } -#line 189 "cpp.re" +#line 190 "cpp.re" { BOOST_WAVE_RET(T_PERCENT); } #line 504 "cpp_re.inc" yy39: ++YYCURSOR; -#line 144 "cpp.re" +#line 145 "cpp.re" { BOOST_WAVE_RET(T_LEFTBRACKET); } #line 509 "cpp_re.inc" yy41: ++YYCURSOR; -#line 147 "cpp.re" +#line 148 "cpp.re" { BOOST_WAVE_RET(T_RIGHTBRACKET); } #line 514 "cpp_re.inc" yy43: ++YYCURSOR; if ((yych = *YYCURSOR) == ':') goto yy396; if (yych == '>') goto yy398; -#line 161 "cpp.re" +#line 162 "cpp.re" { BOOST_WAVE_RET(T_COLON); } #line 521 "cpp_re.inc" yy45: @@ -556,29 +556,29 @@ yy45: } } yy46: -#line 150 "cpp.re" +#line 151 "cpp.re" { BOOST_WAVE_RET(T_POUND); } #line 562 "cpp_re.inc" yy47: ++YYCURSOR; -#line 158 "cpp.re" +#line 159 "cpp.re" { BOOST_WAVE_RET(T_LEFTPAREN); } #line 567 "cpp_re.inc" yy49: ++YYCURSOR; -#line 159 "cpp.re" +#line 160 "cpp.re" { BOOST_WAVE_RET(T_RIGHTPAREN); } #line 572 "cpp_re.inc" yy51: ++YYCURSOR; -#line 160 "cpp.re" +#line 161 "cpp.re" { BOOST_WAVE_RET(T_SEMICOLON); } #line 577 "cpp_re.inc" yy53: ++YYCURSOR; if ((yych = *YYCURSOR) == '+') goto yy268; if (yych == '=') goto yy270; -#line 185 "cpp.re" +#line 186 "cpp.re" { BOOST_WAVE_RET(T_PLUS); } #line 584 "cpp_re.inc" yy55: @@ -589,19 +589,19 @@ yy55: if (yych <= '=') goto yy264; if (yych <= '>') goto yy260; } -#line 186 "cpp.re" +#line 187 "cpp.re" { BOOST_WAVE_RET(T_MINUS); } #line 595 "cpp_re.inc" yy57: ++YYCURSOR; if ((yych = *YYCURSOR) == '=') goto yy258; -#line 187 "cpp.re" +#line 188 "cpp.re" { BOOST_WAVE_RET(T_STAR); } #line 601 "cpp_re.inc" yy59: ++YYCURSOR; if ((yych = *YYCURSOR) == '=') goto yy256; -#line 190 "cpp.re" +#line 191 "cpp.re" { BOOST_WAVE_RET(T_XOR); } #line 607 "cpp_re.inc" yy61: @@ -613,7 +613,7 @@ yy62: ++YYCURSOR; if ((yych = *YYCURSOR) == '&') goto yy245; if (yych == '=') goto yy247; -#line 193 "cpp.re" +#line 194 "cpp.re" { BOOST_WAVE_RET(T_AND); } #line 619 "cpp_re.inc" yy64: @@ -626,24 +626,24 @@ yy64: if (yych == '|') goto yy238; } yy65: -#line 195 "cpp.re" +#line 196 "cpp.re" { BOOST_WAVE_RET(T_OR); } #line 632 "cpp_re.inc" yy66: ++YYCURSOR; -#line 198 "cpp.re" +#line 199 "cpp.re" { BOOST_WAVE_RET(T_COMPL); } #line 637 "cpp_re.inc" yy68: ++YYCURSOR; if ((yych = *YYCURSOR) == '=') goto yy235; -#line 201 "cpp.re" +#line 202 "cpp.re" { BOOST_WAVE_RET(T_NOT); } #line 643 "cpp_re.inc" yy70: ++YYCURSOR; if ((yych = *YYCURSOR) == '=') goto yy233; -#line 203 "cpp.re" +#line 204 "cpp.re" { BOOST_WAVE_RET(T_ASSIGN); } #line 649 "cpp_re.inc" yy72: @@ -652,12 +652,12 @@ yy72: if (yych <= '=') goto yy227; if (yych <= '>') goto yy229; yy73: -#line 205 "cpp.re" +#line 206 "cpp.re" { BOOST_WAVE_RET(T_GREATER); } #line 658 "cpp_re.inc" yy74: ++YYCURSOR; -#line 237 "cpp.re" +#line 238 "cpp.re" { BOOST_WAVE_RET(T_COMMA); } #line 663 "cpp_re.inc" yy76: @@ -715,7 +715,7 @@ yy77: if (yych != '\'') goto yy182; } yy78: -#line 339 "cpp.re" +#line 340 "cpp.re" { BOOST_WAVE_RET(TOKEN_FROM_ID(*s->tok, UnknownTokenType)); } #line 721 "cpp_re.inc" yy79: @@ -760,7 +760,7 @@ yy84: yych = *YYCURSOR; goto yy97; yy85: -#line 319 "cpp.re" +#line 320 "cpp.re" { BOOST_WAVE_RET(T_SPACE); } #line 766 "cpp_re.inc" yy86: @@ -769,7 +769,7 @@ yy86: yy87: ++YYCURSOR; yy88: -#line 322 "cpp.re" +#line 323 "cpp.re" { s->line++; cursor.column = 1; @@ -782,7 +782,7 @@ yy89: goto yy88; yy90: ++YYCURSOR; -#line 329 "cpp.re" +#line 330 "cpp.re" { if (s->eof && cursor != s->eof) { @@ -798,7 +798,7 @@ yy92: goto yy78; yy93: ++YYCURSOR; -#line 342 "cpp.re" +#line 343 "cpp.re" { // flag the error BOOST_WAVE_UPDATE_CURSOR(); // adjust the input cursor @@ -1580,7 +1580,7 @@ yy128: goto yy109; yy129: ++YYCURSOR; -#line 274 "cpp.re" +#line 275 "cpp.re" { if (s->act_in_cpp0x_mode) goto extstringlit; @@ -1590,7 +1590,7 @@ yy129: #line 1591 "cpp_re.inc" yy131: ++YYCURSOR; -#line 266 "cpp.re" +#line 267 "cpp.re" { if (s->act_in_cpp0x_mode) goto extcharlit; @@ -1600,7 +1600,7 @@ yy131: #line 1601 "cpp_re.inc" yy133: ++YYCURSOR; -#line 282 "cpp.re" +#line 283 "cpp.re" { if (s->act_in_cpp0x_mode) goto extrawstringlit; @@ -1610,7 +1610,7 @@ yy133: #line 1611 "cpp_re.inc" yy135: ++YYCURSOR; -#line 258 "cpp.re" +#line 259 "cpp.re" { if (s->act_in_cpp0x_mode) goto extrawstringlit; @@ -1689,7 +1689,7 @@ yy140: yy141: ++YYCURSOR; yy142: -#line 255 "cpp.re" +#line 256 "cpp.re" { BOOST_WAVE_RET(T_STRINGLIT); } #line 1695 "cpp_re.inc" yy143: @@ -2536,7 +2536,7 @@ yy189: yy191: ++YYCURSOR; yy192: -#line 252 "cpp.re" +#line 253 "cpp.re" { BOOST_WAVE_RET(T_CHARLIT); } #line 2542 "cpp_re.inc" yy193: @@ -3169,28 +3169,28 @@ yy226: goto yy182; yy227: ++YYCURSOR; -#line 227 "cpp.re" +#line 228 "cpp.re" { BOOST_WAVE_RET(T_GREATEREQUAL); } #line 3175 "cpp_re.inc" yy229: ++YYCURSOR; if ((yych = *YYCURSOR) == '=') goto yy231; -#line 220 "cpp.re" +#line 221 "cpp.re" { BOOST_WAVE_RET(T_SHIFTRIGHT); } #line 3181 "cpp_re.inc" yy231: ++YYCURSOR; -#line 221 "cpp.re" +#line 222 "cpp.re" { BOOST_WAVE_RET(T_SHIFTRIGHTASSIGN); } #line 3186 "cpp_re.inc" yy233: ++YYCURSOR; -#line 223 "cpp.re" +#line 224 "cpp.re" { BOOST_WAVE_RET(T_EQUAL); } #line 3191 "cpp_re.inc" yy235: ++YYCURSOR; -#line 224 "cpp.re" +#line 225 "cpp.re" { BOOST_WAVE_RET(T_NOTEQUAL); } #line 3196 "cpp_re.inc" yy237: @@ -3199,29 +3199,29 @@ yy237: goto yy99; yy238: ++YYCURSOR; -#line 230 "cpp.re" +#line 231 "cpp.re" { BOOST_WAVE_RET(T_OROR); } #line 3205 "cpp_re.inc" yy240: ++YYCURSOR; -#line 216 "cpp.re" +#line 217 "cpp.re" { BOOST_WAVE_RET(T_ORASSIGN); } #line 3210 "cpp_re.inc" yy242: yych = *++YYCURSOR; if (yych != '!') goto yy99; ++YYCURSOR; -#line 232 "cpp.re" +#line 233 "cpp.re" { BOOST_WAVE_RET(T_OROR_TRIGRAPH); } #line 3217 "cpp_re.inc" yy245: ++YYCURSOR; -#line 228 "cpp.re" +#line 229 "cpp.re" { BOOST_WAVE_RET(T_ANDAND); } #line 3222 "cpp_re.inc" yy247: ++YYCURSOR; -#line 214 "cpp.re" +#line 215 "cpp.re" { BOOST_WAVE_RET(T_ANDASSIGN); } #line 3227 "cpp_re.inc" yy249: @@ -3248,7 +3248,7 @@ yy249: } } yy251: -#line 192 "cpp.re" +#line 193 "cpp.re" { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_XOR_ALT); } #line 3254 "cpp_re.inc" yy252: @@ -3266,38 +3266,38 @@ yy252: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy255: -#line 212 "cpp.re" +#line 213 "cpp.re" { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_XORASSIGN_ALT); } #line 3272 "cpp_re.inc" yy256: ++YYCURSOR; -#line 211 "cpp.re" +#line 212 "cpp.re" { BOOST_WAVE_RET(T_XORASSIGN); } #line 3277 "cpp_re.inc" yy258: ++YYCURSOR; -#line 208 "cpp.re" +#line 209 "cpp.re" { BOOST_WAVE_RET(T_STARASSIGN); } #line 3282 "cpp_re.inc" yy260: ++YYCURSOR; if ((yych = *YYCURSOR) == '*') goto yy266; -#line 248 "cpp.re" +#line 249 "cpp.re" { BOOST_WAVE_RET(T_ARROW); } #line 3288 "cpp_re.inc" yy262: ++YYCURSOR; -#line 236 "cpp.re" +#line 237 "cpp.re" { BOOST_WAVE_RET(T_MINUSMINUS); } #line 3293 "cpp_re.inc" yy264: ++YYCURSOR; -#line 207 "cpp.re" +#line 208 "cpp.re" { BOOST_WAVE_RET(T_MINUSASSIGN); } #line 3298 "cpp_re.inc" yy266: ++YYCURSOR; -#line 239 "cpp.re" +#line 240 "cpp.re" { if (s->act_in_c99_mode) { --YYCURSOR; @@ -3310,12 +3310,12 @@ yy266: #line 3311 "cpp_re.inc" yy268: ++YYCURSOR; -#line 235 "cpp.re" +#line 236 "cpp.re" { BOOST_WAVE_RET(T_PLUSPLUS); } #line 3316 "cpp_re.inc" yy270: ++YYCURSOR; -#line 206 "cpp.re" +#line 207 "cpp.re" { BOOST_WAVE_RET(T_PLUSASSIGN); } #line 3321 "cpp_re.inc" yy272: @@ -3413,14 +3413,14 @@ yy283: goto yy99; yy284: ++YYCURSOR; -#line 153 "cpp.re" +#line 154 "cpp.re" { BOOST_WAVE_RET(T_POUND_POUND); } #line 3419 "cpp_re.inc" yy286: yych = *++YYCURSOR; if (yych != '=') goto yy99; ++YYCURSOR; -#line 154 "cpp.re" +#line 155 "cpp.re" { BOOST_WAVE_RET(T_POUND_POUND_TRIGRAPH); } #line 3426 "cpp_re.inc" yy289: @@ -3433,7 +3433,7 @@ yy290: if (yych == 'd') goto yy293; if (yych == 'n') goto yy292; yy291: -#line 301 "cpp.re" +#line 302 "cpp.re" { BOOST_WAVE_RET(T_PP_IF); } #line 3439 "cpp_re.inc" yy292: @@ -3446,7 +3446,7 @@ yy293: yych = *++YYCURSOR; if (yych != 'f') goto yy99; ++YYCURSOR; -#line 302 "cpp.re" +#line 303 "cpp.re" { BOOST_WAVE_RET(T_PP_IFDEF); } #line 3452 "cpp_re.inc" yy297: @@ -3455,7 +3455,7 @@ yy297: yych = *++YYCURSOR; if (yych != 'f') goto yy99; ++YYCURSOR; -#line 303 "cpp.re" +#line 304 "cpp.re" { BOOST_WAVE_RET(T_PP_IFNDEF); } #line 3461 "cpp_re.inc" yy301: @@ -3472,7 +3472,7 @@ yy301: if (yych == '_') goto yy307; goto yy309; yy306: -#line 299 "cpp.re" +#line 300 "cpp.re" { BOOST_WAVE_RET(T_PP_INCLUDE); } #line 3478 "cpp_re.inc" yy307: @@ -3528,7 +3528,7 @@ yy314: } if (yych <= '!') goto yy99; ++YYCURSOR; -#line 296 "cpp.re" +#line 297 "cpp.re" { BOOST_WAVE_RET(T_PP_QHEADER); } #line 3534 "cpp_re.inc" yy317: @@ -3541,7 +3541,7 @@ yy318: } if (yych <= '=') goto yy99; ++YYCURSOR; -#line 293 "cpp.re" +#line 294 "cpp.re" { BOOST_WAVE_RET(T_PP_HHEADER); } #line 3547 "cpp_re.inc" yy321: @@ -3605,7 +3605,7 @@ yy331: yych = *++YYCURSOR; if (yych != 'e') goto yy99; ++YYCURSOR; -#line 307 "cpp.re" +#line 308 "cpp.re" { BOOST_WAVE_RET(T_PP_DEFINE); } #line 3611 "cpp_re.inc" yy337: @@ -3616,7 +3616,7 @@ yy337: yych = *++YYCURSOR; if (yych != 'f') goto yy99; ++YYCURSOR; -#line 308 "cpp.re" +#line 309 "cpp.re" { BOOST_WAVE_RET(T_PP_UNDEF); } #line 3622 "cpp_re.inc" yy342: @@ -3625,7 +3625,7 @@ yy342: yych = *++YYCURSOR; if (yych != 'e') goto yy99; ++YYCURSOR; -#line 309 "cpp.re" +#line 310 "cpp.re" { BOOST_WAVE_RET(T_PP_LINE); } #line 3631 "cpp_re.inc" yy346: @@ -3638,7 +3638,7 @@ yy346: yych = *++YYCURSOR; if (yych != 'a') goto yy99; ++YYCURSOR; -#line 311 "cpp.re" +#line 312 "cpp.re" { BOOST_WAVE_RET(T_PP_PRAGMA); } #line 3644 "cpp_re.inc" yy352: @@ -3653,7 +3653,7 @@ yy352: yych = *++YYCURSOR; if (yych != 'g') goto yy99; ++YYCURSOR; -#line 313 "cpp.re" +#line 314 "cpp.re" { BOOST_WAVE_RET(T_PP_WARNING); } #line 3659 "cpp_re.inc" yy359: @@ -3666,7 +3666,7 @@ yy359: yych = *++YYCURSOR; if (yych != 'n') goto yy99; ++YYCURSOR; -#line 315 "cpp.re" +#line 316 "cpp.re" { BOOST_WAVE_RET(T_MSEXT_PP_REGION); } #line 3672 "cpp_re.inc" yy365: @@ -3686,7 +3686,7 @@ yy367: yych = *++YYCURSOR; if (yych != 'r') goto yy99; ++YYCURSOR; -#line 310 "cpp.re" +#line 311 "cpp.re" { BOOST_WAVE_RET(T_PP_ERROR); } #line 3692 "cpp_re.inc" yy372: @@ -3710,12 +3710,12 @@ yy374: yych = *++YYCURSOR; if (yych != 'n') goto yy99; ++YYCURSOR; -#line 316 "cpp.re" +#line 317 "cpp.re" { BOOST_WAVE_RET(T_MSEXT_PP_ENDREGION); } #line 3716 "cpp_re.inc" yy381: ++YYCURSOR; -#line 306 "cpp.re" +#line 307 "cpp.re" { BOOST_WAVE_RET(T_PP_ENDIF); } #line 3721 "cpp_re.inc" yy383: @@ -3726,12 +3726,12 @@ yy384: yych = *++YYCURSOR; if (yych != 'e') goto yy99; ++YYCURSOR; -#line 304 "cpp.re" +#line 305 "cpp.re" { BOOST_WAVE_RET(T_PP_ELSE); } #line 3732 "cpp_re.inc" yy387: ++YYCURSOR; -#line 305 "cpp.re" +#line 306 "cpp.re" { BOOST_WAVE_RET(T_PP_ELIF); } #line 3737 "cpp_re.inc" yy389: @@ -3789,7 +3789,7 @@ yy393: } yy396: ++YYCURSOR; -#line 165 "cpp.re" +#line 166 "cpp.re" { if (s->act_in_c99_mode) { --YYCURSOR; @@ -3802,7 +3802,7 @@ yy396: #line 3803 "cpp_re.inc" yy398: ++YYCURSOR; -#line 149 "cpp.re" +#line 150 "cpp.re" { BOOST_WAVE_RET(T_RIGHTBRACKET_ALT); } #line 3808 "cpp_re.inc" yy400: @@ -3842,50 +3842,50 @@ yy400: } } yy401: -#line 151 "cpp.re" +#line 152 "cpp.re" { BOOST_WAVE_RET(T_POUND_ALT); } #line 3848 "cpp_re.inc" yy402: ++YYCURSOR; -#line 210 "cpp.re" +#line 211 "cpp.re" { BOOST_WAVE_RET(T_PERCENTASSIGN); } #line 3853 "cpp_re.inc" yy404: ++YYCURSOR; -#line 143 "cpp.re" +#line 144 "cpp.re" { BOOST_WAVE_RET(T_RIGHTBRACE_ALT); } #line 3858 "cpp_re.inc" yy406: yych = *++YYCURSOR; if (yych != ':') goto yy99; ++YYCURSOR; -#line 157 "cpp.re" +#line 158 "cpp.re" { BOOST_WAVE_RET(T_POUND_POUND_ALT); } #line 3865 "cpp_re.inc" yy409: ++YYCURSOR; -#line 226 "cpp.re" +#line 227 "cpp.re" { BOOST_WAVE_RET(T_LESSEQUAL); } #line 3870 "cpp_re.inc" yy411: ++YYCURSOR; if ((yych = *YYCURSOR) == '=') goto yy417; -#line 219 "cpp.re" +#line 220 "cpp.re" { BOOST_WAVE_RET(T_SHIFTLEFT); } #line 3876 "cpp_re.inc" yy413: ++YYCURSOR; -#line 146 "cpp.re" +#line 147 "cpp.re" { BOOST_WAVE_RET(T_LEFTBRACKET_ALT); } #line 3881 "cpp_re.inc" yy415: ++YYCURSOR; -#line 140 "cpp.re" +#line 141 "cpp.re" { BOOST_WAVE_RET(T_LEFTBRACE_ALT); } #line 3886 "cpp_re.inc" yy417: ++YYCURSOR; -#line 222 "cpp.re" +#line 223 "cpp.re" { BOOST_WAVE_RET(T_SHIFTLEFTASSIGN); } #line 3891 "cpp_re.inc" yy419: @@ -3904,22 +3904,22 @@ yy419: } yy420: ++YYCURSOR; -#line 139 "cpp.re" +#line 140 "cpp.re" { BOOST_WAVE_RET(T_LEFTBRACE_TRIGRAPH); } #line 3910 "cpp_re.inc" yy422: ++YYCURSOR; -#line 142 "cpp.re" +#line 143 "cpp.re" { BOOST_WAVE_RET(T_RIGHTBRACE_TRIGRAPH); } #line 3915 "cpp_re.inc" yy424: ++YYCURSOR; -#line 145 "cpp.re" +#line 146 "cpp.re" { BOOST_WAVE_RET(T_LEFTBRACKET_TRIGRAPH); } #line 3920 "cpp_re.inc" yy426: ++YYCURSOR; -#line 148 "cpp.re" +#line 149 "cpp.re" { BOOST_WAVE_RET(T_RIGHTBRACKET_TRIGRAPH); } #line 3925 "cpp_re.inc" yy428: @@ -3960,13 +3960,13 @@ yy428: } } yy429: -#line 152 "cpp.re" +#line 153 "cpp.re" { BOOST_WAVE_RET(T_POUND_TRIGRAPH); } #line 3966 "cpp_re.inc" yy430: ++YYCURSOR; if ((yych = *YYCURSOR) == '=') goto yy446; -#line 191 "cpp.re" +#line 192 "cpp.re" { BOOST_WAVE_RET(T_XOR_TRIGRAPH); } #line 3972 "cpp_re.inc" yy432: @@ -3979,12 +3979,12 @@ yy432: if (yych == '|') goto yy439; } yy433: -#line 197 "cpp.re" +#line 198 "cpp.re" { BOOST_WAVE_RET(T_OR_TRIGRAPH); } #line 3985 "cpp_re.inc" yy434: ++YYCURSOR; -#line 199 "cpp.re" +#line 200 "cpp.re" { BOOST_WAVE_RET(T_COMPL_TRIGRAPH); } #line 3990 "cpp_re.inc" yy436: @@ -3993,7 +3993,7 @@ yy436: if (yych == 'U') goto yy100; if (yych == 'u') goto yy98; yy437: -#line 249 "cpp.re" +#line 250 "cpp.re" { BOOST_WAVE_RET(T_ANY_TRIGRAPH); } #line 3999 "cpp_re.inc" yy438: @@ -4002,24 +4002,24 @@ yy438: goto yy99; yy439: ++YYCURSOR; -#line 231 "cpp.re" +#line 232 "cpp.re" { BOOST_WAVE_RET(T_OROR_TRIGRAPH); } #line 4008 "cpp_re.inc" yy441: ++YYCURSOR; -#line 218 "cpp.re" +#line 219 "cpp.re" { BOOST_WAVE_RET(T_ORASSIGN_TRIGRAPH); } #line 4013 "cpp_re.inc" yy443: yych = *++YYCURSOR; if (yych != '!') goto yy99; ++YYCURSOR; -#line 234 "cpp.re" +#line 235 "cpp.re" { BOOST_WAVE_RET(T_OROR_TRIGRAPH); } #line 4020 "cpp_re.inc" yy446: ++YYCURSOR; -#line 213 "cpp.re" +#line 214 "cpp.re" { BOOST_WAVE_RET(T_XORASSIGN_TRIGRAPH); } #line 4025 "cpp_re.inc" yy448: @@ -4028,14 +4028,14 @@ yy448: goto yy99; yy449: ++YYCURSOR; -#line 155 "cpp.re" +#line 156 "cpp.re" { BOOST_WAVE_RET(T_POUND_POUND_TRIGRAPH); } #line 4034 "cpp_re.inc" yy451: yych = *++YYCURSOR; if (yych != '=') goto yy99; ++YYCURSOR; -#line 156 "cpp.re" +#line 157 "cpp.re" { BOOST_WAVE_RET(T_POUND_POUND_TRIGRAPH); } #line 4041 "cpp_re.inc" yy454: @@ -4111,7 +4111,7 @@ yy461: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy468: -#line 130 "cpp.re" +#line 131 "cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_STDCALL : T_IDENTIFIER); } #line 4117 "cpp_re.inc" yy469: @@ -4136,7 +4136,7 @@ yy470: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy474: -#line 135 "cpp.re" +#line 136 "cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_INLINE : T_IDENTIFIER); } #line 4142 "cpp_re.inc" yy475: @@ -4166,7 +4166,7 @@ yy475: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy482: -#line 129 "cpp.re" +#line 130 "cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_FASTCALL : T_IDENTIFIER); } #line 4172 "cpp_re.inc" yy483: @@ -4196,7 +4196,7 @@ yy483: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy490: -#line 127 "cpp.re" +#line 128 "cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_DECLSPEC : T_IDENTIFIER); } #line 4202 "cpp_re.inc" yy491: @@ -4217,7 +4217,7 @@ yy491: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy495: -#line 128 "cpp.re" +#line 129 "cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_CDECL : T_IDENTIFIER); } #line 4223 "cpp_re.inc" yy496: @@ -4238,7 +4238,7 @@ yy496: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy500: -#line 126 "cpp.re" +#line 127 "cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_BASED : T_IDENTIFIER); } #line 4244 "cpp_re.inc" yy501: @@ -4253,7 +4253,7 @@ yy501: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy503: -#line 136 "cpp.re" +#line 137 "cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_ASM : T_IDENTIFIER); } #line 4259 "cpp_re.inc" yy504: @@ -4298,7 +4298,7 @@ yy508: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy513: -#line 134 "cpp.re" +#line 135 "cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_LEAVE : T_IDENTIFIER); } #line 4304 "cpp_re.inc" yy514: @@ -4322,7 +4322,7 @@ yy514: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy519: -#line 132 "cpp.re" +#line 133 "cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_EXCEPT : T_IDENTIFIER); } #line 4328 "cpp_re.inc" yy520: @@ -4337,7 +4337,7 @@ yy520: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy522: -#line 131 "cpp.re" +#line 132 "cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_TRY : T_IDENTIFIER); } #line 4343 "cpp_re.inc" yy523: @@ -4364,7 +4364,7 @@ yy523: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy529: -#line 133 "cpp.re" +#line 134 "cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_FINALLY : T_IDENTIFIER); } #line 4370 "cpp_re.inc" yy530: @@ -4405,7 +4405,7 @@ yy535: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy536: -#line 122 "cpp.re" +#line 123 "cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_INT8 : T_IDENTIFIER); } #line 4411 "cpp_re.inc" yy537: @@ -4417,7 +4417,7 @@ yy537: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy538: -#line 125 "cpp.re" +#line 126 "cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_INT64 : T_IDENTIFIER); } #line 4423 "cpp_re.inc" yy539: @@ -4429,7 +4429,7 @@ yy539: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy540: -#line 124 "cpp.re" +#line 125 "cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_INT32 : T_IDENTIFIER); } #line 4435 "cpp_re.inc" yy541: @@ -4441,7 +4441,7 @@ yy541: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy542: -#line 123 "cpp.re" +#line 124 "cpp.re" { BOOST_WAVE_RET(s->enable_ms_extensions ? T_MSEXT_INT16 : T_IDENTIFIER); } #line 4447 "cpp_re.inc" yy543: @@ -4467,7 +4467,7 @@ yy544: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy548: -#line 120 "cpp.re" +#line 121 "cpp.re" { BOOST_WAVE_RET(T_WHILE); } #line 4473 "cpp_re.inc" yy549: @@ -4491,7 +4491,7 @@ yy549: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy554: -#line 119 "cpp.re" +#line 120 "cpp.re" { BOOST_WAVE_RET(T_WCHART); } #line 4497 "cpp_re.inc" yy555: @@ -4534,7 +4534,7 @@ yy558: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy564: -#line 118 "cpp.re" +#line 119 "cpp.re" { BOOST_WAVE_RET(T_VOLATILE); } #line 4540 "cpp_re.inc" yy565: @@ -4546,7 +4546,7 @@ yy565: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy566: -#line 117 "cpp.re" +#line 118 "cpp.re" { BOOST_WAVE_RET(T_VOID); } #line 4552 "cpp_re.inc" yy567: @@ -4570,7 +4570,7 @@ yy567: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy572: -#line 116 "cpp.re" +#line 117 "cpp.re" { BOOST_WAVE_RET(T_VIRTUAL); } #line 4576 "cpp_re.inc" yy573: @@ -4603,7 +4603,7 @@ yy575: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy579: -#line 115 "cpp.re" +#line 116 "cpp.re" { BOOST_WAVE_RET(T_USING); } #line 4609 "cpp_re.inc" yy580: @@ -4635,7 +4635,7 @@ yy581: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy587: -#line 114 "cpp.re" +#line 115 "cpp.re" { BOOST_WAVE_RET(T_UNSIGNED); } #line 4641 "cpp_re.inc" yy588: @@ -4650,7 +4650,7 @@ yy588: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy590: -#line 113 "cpp.re" +#line 114 "cpp.re" { BOOST_WAVE_RET(T_UNION); } #line 4656 "cpp_re.inc" yy591: @@ -4713,7 +4713,7 @@ yy599: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy603: -#line 112 "cpp.re" +#line 113 "cpp.re" { BOOST_WAVE_RET(T_TYPENAME); } #line 4719 "cpp_re.inc" yy604: @@ -4725,7 +4725,7 @@ yy604: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy605: -#line 111 "cpp.re" +#line 112 "cpp.re" { BOOST_WAVE_RET(T_TYPEID); } #line 4731 "cpp_re.inc" yy606: @@ -4740,7 +4740,7 @@ yy606: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy608: -#line 110 "cpp.re" +#line 111 "cpp.re" { BOOST_WAVE_RET(T_TYPEDEF); } #line 4746 "cpp_re.inc" yy609: @@ -4757,7 +4757,7 @@ yy610: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy611: -#line 109 "cpp.re" +#line 110 "cpp.re" { BOOST_WAVE_RET(T_TRY); } #line 4763 "cpp_re.inc" yy612: @@ -4769,7 +4769,7 @@ yy612: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy613: -#line 108 "cpp.re" +#line 109 "cpp.re" { BOOST_WAVE_RET(T_TRUE); } #line 4775 "cpp_re.inc" yy614: @@ -4800,7 +4800,7 @@ yy617: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy619: -#line 107 "cpp.re" +#line 108 "cpp.re" { BOOST_WAVE_RET(T_THROW); } #line 4806 "cpp_re.inc" yy620: @@ -4833,7 +4833,7 @@ yy620: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy628: -#line 106 "cpp.re" +#line 107 "cpp.re" { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_THREADLOCAL : T_IDENTIFIER); } #line 4839 "cpp_re.inc" yy629: @@ -4845,7 +4845,7 @@ yy629: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy630: -#line 105 "cpp.re" +#line 106 "cpp.re" { BOOST_WAVE_RET(T_THIS); } #line 4851 "cpp_re.inc" yy631: @@ -4872,7 +4872,7 @@ yy631: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy637: -#line 104 "cpp.re" +#line 105 "cpp.re" { BOOST_WAVE_RET(T_TEMPLATE); } #line 4878 "cpp_re.inc" yy638: @@ -4913,7 +4913,7 @@ yy641: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy646: -#line 103 "cpp.re" +#line 104 "cpp.re" { BOOST_WAVE_RET(T_SWITCH); } #line 4919 "cpp_re.inc" yy647: @@ -4939,7 +4939,7 @@ yy648: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy652: -#line 102 "cpp.re" +#line 103 "cpp.re" { BOOST_WAVE_RET(T_STRUCT); } #line 4945 "cpp_re.inc" yy653: @@ -4969,7 +4969,7 @@ yy653: } } yy656: -#line 99 "cpp.re" +#line 100 "cpp.re" { BOOST_WAVE_RET(T_STATIC); } #line 4975 "cpp_re.inc" yy657: @@ -5001,7 +5001,7 @@ yy659: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy663: -#line 100 "cpp.re" +#line 101 "cpp.re" { BOOST_WAVE_RET(T_STATICCAST); } #line 5007 "cpp_re.inc" yy664: @@ -5025,7 +5025,7 @@ yy664: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy669: -#line 101 "cpp.re" +#line 102 "cpp.re" { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_STATICASSERT : T_IDENTIFIER); } #line 5031 "cpp_re.inc" yy670: @@ -5051,7 +5051,7 @@ yy671: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy675: -#line 98 "cpp.re" +#line 99 "cpp.re" { BOOST_WAVE_RET(T_SIZEOF); } #line 5057 "cpp_re.inc" yy676: @@ -5069,7 +5069,7 @@ yy676: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy679: -#line 97 "cpp.re" +#line 98 "cpp.re" { BOOST_WAVE_RET(T_SIGNED); } #line 5075 "cpp_re.inc" yy680: @@ -5087,7 +5087,7 @@ yy680: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy683: -#line 96 "cpp.re" +#line 97 "cpp.re" { BOOST_WAVE_RET(T_SHORT); } #line 5093 "cpp_re.inc" yy684: @@ -5127,7 +5127,7 @@ yy687: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy691: -#line 95 "cpp.re" +#line 96 "cpp.re" { BOOST_WAVE_RET(T_RETURN); } #line 5133 "cpp_re.inc" yy692: @@ -5175,7 +5175,7 @@ yy692: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy705: -#line 94 "cpp.re" +#line 95 "cpp.re" { BOOST_WAVE_RET(T_REINTERPRETCAST); } #line 5181 "cpp_re.inc" yy706: @@ -5199,7 +5199,7 @@ yy706: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy711: -#line 93 "cpp.re" +#line 94 "cpp.re" { BOOST_WAVE_RET(T_REGISTER); } #line 5205 "cpp_re.inc" yy712: @@ -5229,7 +5229,7 @@ yy713: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy718: -#line 92 "cpp.re" +#line 93 "cpp.re" { BOOST_WAVE_RET(T_PUBLIC); } #line 5235 "cpp_re.inc" yy719: @@ -5264,7 +5264,7 @@ yy720: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy727: -#line 91 "cpp.re" +#line 92 "cpp.re" { BOOST_WAVE_RET(T_PROTECTED); } #line 5270 "cpp_re.inc" yy728: @@ -5285,7 +5285,7 @@ yy728: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy732: -#line 90 "cpp.re" +#line 91 "cpp.re" { BOOST_WAVE_RET(T_PRIVATE); } #line 5291 "cpp_re.inc" yy733: @@ -5314,7 +5314,7 @@ yy734: } } yy735: -#line 233 "cpp.re" +#line 234 "cpp.re" { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_OROR_ALT); } #line 5320 "cpp_re.inc" yy736: @@ -5332,7 +5332,7 @@ yy736: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy739: -#line 217 "cpp.re" +#line 218 "cpp.re" { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_ORASSIGN_ALT); } #line 5338 "cpp_re.inc" yy740: @@ -5359,7 +5359,7 @@ yy740: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy746: -#line 89 "cpp.re" +#line 90 "cpp.re" { BOOST_WAVE_RET(T_OPERATOR); } #line 5365 "cpp_re.inc" yy747: @@ -5402,7 +5402,7 @@ yy750: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy756: -#line 88 "cpp.re" +#line 89 "cpp.re" { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_NULLPTR : T_IDENTIFIER); } #line 5408 "cpp_re.inc" yy757: @@ -5431,7 +5431,7 @@ yy758: } } yy759: -#line 202 "cpp.re" +#line 203 "cpp.re" { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_NOT_ALT); } #line 5437 "cpp_re.inc" yy760: @@ -5449,7 +5449,7 @@ yy760: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy763: -#line 225 "cpp.re" +#line 226 "cpp.re" { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_NOTEQUAL_ALT); } #line 5455 "cpp_re.inc" yy764: @@ -5473,7 +5473,7 @@ yy764: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy769: -#line 87 "cpp.re" +#line 88 "cpp.re" { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_NOEXCEPT : T_IDENTIFIER); } #line 5479 "cpp_re.inc" yy770: @@ -5485,7 +5485,7 @@ yy770: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy771: -#line 86 "cpp.re" +#line 87 "cpp.re" { BOOST_WAVE_RET(T_NEW); } #line 5491 "cpp_re.inc" yy772: @@ -5515,7 +5515,7 @@ yy772: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy779: -#line 85 "cpp.re" +#line 86 "cpp.re" { BOOST_WAVE_RET(T_NAMESPACE); } #line 5521 "cpp_re.inc" yy780: @@ -5542,7 +5542,7 @@ yy780: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy786: -#line 84 "cpp.re" +#line 85 "cpp.re" { BOOST_WAVE_RET(T_MUTABLE); } #line 5548 "cpp_re.inc" yy787: @@ -5560,7 +5560,7 @@ yy787: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy790: -#line 83 "cpp.re" +#line 84 "cpp.re" { BOOST_WAVE_RET(T_LONG); } #line 5566 "cpp_re.inc" yy791: @@ -5572,7 +5572,7 @@ yy791: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy792: -#line 79 "cpp.re" +#line 80 "cpp.re" { BOOST_WAVE_RET(T_IF); } #line 5578 "cpp_re.inc" yy793: @@ -5600,7 +5600,7 @@ yy796: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy797: -#line 82 "cpp.re" +#line 83 "cpp.re" { BOOST_WAVE_RET(T_INT); } #line 5606 "cpp_re.inc" yy798: @@ -5618,7 +5618,7 @@ yy798: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy801: -#line 81 "cpp.re" +#line 82 "cpp.re" { BOOST_WAVE_RET(T_INLINE); } #line 5624 "cpp_re.inc" yy802: @@ -5639,7 +5639,7 @@ yy802: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy806: -#line 80 "cpp.re" +#line 81 "cpp.re" { BOOST_WAVE_RET(s->enable_import_keyword ? T_IMPORT : T_IDENTIFIER); } #line 5645 "cpp_re.inc" yy807: @@ -5657,7 +5657,7 @@ yy807: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy810: -#line 78 "cpp.re" +#line 79 "cpp.re" { BOOST_WAVE_RET(T_GOTO); } #line 5663 "cpp_re.inc" yy811: @@ -5696,7 +5696,7 @@ yy814: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy819: -#line 77 "cpp.re" +#line 78 "cpp.re" { BOOST_WAVE_RET(T_FRIEND); } #line 5702 "cpp_re.inc" yy820: @@ -5708,7 +5708,7 @@ yy820: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy821: -#line 76 "cpp.re" +#line 77 "cpp.re" { BOOST_WAVE_RET(T_FOR); } #line 5714 "cpp_re.inc" yy822: @@ -5726,7 +5726,7 @@ yy822: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy825: -#line 75 "cpp.re" +#line 76 "cpp.re" { BOOST_WAVE_RET(T_FLOAT); } #line 5732 "cpp_re.inc" yy826: @@ -5744,7 +5744,7 @@ yy826: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy829: -#line 74 "cpp.re" +#line 75 "cpp.re" { BOOST_WAVE_RET(T_FALSE); } #line 5750 "cpp_re.inc" yy830: @@ -5787,7 +5787,7 @@ yy834: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy838: -#line 73 "cpp.re" +#line 74 "cpp.re" { BOOST_WAVE_RET(T_EXTERN); } #line 5793 "cpp_re.inc" yy839: @@ -5810,7 +5810,7 @@ yy840: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy843: -#line 72 "cpp.re" +#line 73 "cpp.re" { BOOST_WAVE_RET(T_EXPORT); } #line 5816 "cpp_re.inc" yy844: @@ -5831,7 +5831,7 @@ yy844: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy848: -#line 71 "cpp.re" +#line 72 "cpp.re" { BOOST_WAVE_RET(T_EXPLICIT); } #line 5837 "cpp_re.inc" yy849: @@ -5846,7 +5846,7 @@ yy849: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy851: -#line 70 "cpp.re" +#line 71 "cpp.re" { BOOST_WAVE_RET(T_ENUM); } #line 5852 "cpp_re.inc" yy852: @@ -5861,7 +5861,7 @@ yy852: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy854: -#line 69 "cpp.re" +#line 70 "cpp.re" { BOOST_WAVE_RET(T_ELSE); } #line 5867 "cpp_re.inc" yy855: @@ -5900,7 +5900,7 @@ yy856: } } yy857: -#line 66 "cpp.re" +#line 67 "cpp.re" { BOOST_WAVE_RET(T_DO); } #line 5906 "cpp_re.inc" yy858: @@ -5942,7 +5942,7 @@ yy858: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy869: -#line 68 "cpp.re" +#line 69 "cpp.re" { BOOST_WAVE_RET(T_DYNAMICCAST); } #line 5948 "cpp_re.inc" yy870: @@ -5963,7 +5963,7 @@ yy870: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy874: -#line 67 "cpp.re" +#line 68 "cpp.re" { BOOST_WAVE_RET(T_DOUBLE); } #line 5969 "cpp_re.inc" yy875: @@ -5994,7 +5994,7 @@ yy877: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy881: -#line 65 "cpp.re" +#line 66 "cpp.re" { BOOST_WAVE_RET(T_DELETE); } #line 6000 "cpp_re.inc" yy882: @@ -6015,7 +6015,7 @@ yy882: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy886: -#line 64 "cpp.re" +#line 65 "cpp.re" { BOOST_WAVE_RET(T_DEFAULT); } #line 6021 "cpp_re.inc" yy887: @@ -6039,7 +6039,7 @@ yy887: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy892: -#line 63 "cpp.re" +#line 64 "cpp.re" { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_DECLTYPE : T_IDENTIFIER); } #line 6045 "cpp_re.inc" yy893: @@ -6086,7 +6086,7 @@ yy898: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy901: -#line 200 "cpp.re" +#line 201 "cpp.re" { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_COMPL_ALT); } #line 6092 "cpp_re.inc" yy902: @@ -6115,7 +6115,7 @@ yy903: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy908: -#line 62 "cpp.re" +#line 63 "cpp.re" { BOOST_WAVE_RET(T_CONTINUE); } #line 6121 "cpp_re.inc" yy909: @@ -6143,7 +6143,7 @@ yy909: } } yy910: -#line 59 "cpp.re" +#line 60 "cpp.re" { BOOST_WAVE_RET(T_CONST); } #line 6149 "cpp_re.inc" yy911: @@ -6169,7 +6169,7 @@ yy912: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy916: -#line 60 "cpp.re" +#line 61 "cpp.re" { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_CONSTEXPR : T_IDENTIFIER); } #line 6175 "cpp_re.inc" yy917: @@ -6190,7 +6190,7 @@ yy917: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy921: -#line 61 "cpp.re" +#line 62 "cpp.re" { BOOST_WAVE_RET(T_CONSTCAST); } #line 6196 "cpp_re.inc" yy922: @@ -6208,7 +6208,7 @@ yy922: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy925: -#line 58 "cpp.re" +#line 59 "cpp.re" { BOOST_WAVE_RET(T_CLASS); } #line 6214 "cpp_re.inc" yy926: @@ -6248,7 +6248,7 @@ yy926: } } yy928: -#line 55 "cpp.re" +#line 56 "cpp.re" { BOOST_WAVE_RET(T_CHAR); } #line 6254 "cpp_re.inc" yy929: @@ -6274,7 +6274,7 @@ yy930: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy934: -#line 57 "cpp.re" +#line 58 "cpp.re" { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_CHAR32_T : T_IDENTIFIER); } #line 6280 "cpp_re.inc" yy935: @@ -6292,7 +6292,7 @@ yy935: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy938: -#line 56 "cpp.re" +#line 57 "cpp.re" { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_CHAR16_T : T_IDENTIFIER); } #line 6298 "cpp_re.inc" yy939: @@ -6315,7 +6315,7 @@ yy940: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy943: -#line 54 "cpp.re" +#line 55 "cpp.re" { BOOST_WAVE_RET(T_CATCH); } #line 6321 "cpp_re.inc" yy944: @@ -6327,7 +6327,7 @@ yy944: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy945: -#line 53 "cpp.re" +#line 54 "cpp.re" { BOOST_WAVE_RET(T_CASE); } #line 6333 "cpp_re.inc" yy946: @@ -6358,7 +6358,7 @@ yy948: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy952: -#line 52 "cpp.re" +#line 53 "cpp.re" { BOOST_WAVE_RET(T_BREAK); } #line 6364 "cpp_re.inc" yy953: @@ -6373,7 +6373,7 @@ yy953: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy955: -#line 51 "cpp.re" +#line 52 "cpp.re" { BOOST_WAVE_RET(T_BOOL); } #line 6379 "cpp_re.inc" yy956: @@ -6399,7 +6399,7 @@ yy958: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy960: -#line 196 "cpp.re" +#line 197 "cpp.re" { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_OR_ALT); } #line 6405 "cpp_re.inc" yy961: @@ -6414,7 +6414,7 @@ yy961: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy963: -#line 194 "cpp.re" +#line 195 "cpp.re" { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_AND_ALT); } #line 6420 "cpp_re.inc" yy964: @@ -6447,7 +6447,7 @@ yy967: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy970: -#line 50 "cpp.re" +#line 51 "cpp.re" { BOOST_WAVE_RET(T_AUTO); } #line 6453 "cpp_re.inc" yy971: @@ -6459,7 +6459,7 @@ yy971: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy972: -#line 49 "cpp.re" +#line 50 "cpp.re" { BOOST_WAVE_RET(T_ASM); } #line 6465 "cpp_re.inc" yy973: @@ -6483,7 +6483,7 @@ yy973: } } yy974: -#line 229 "cpp.re" +#line 230 "cpp.re" { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_ANDAND_ALT); } #line 6489 "cpp_re.inc" yy975: @@ -6501,7 +6501,7 @@ yy975: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy978: -#line 215 "cpp.re" +#line 216 "cpp.re" { BOOST_WAVE_RET(s->act_in_c99_mode ? T_IDENTIFIER : T_ANDASSIGN_ALT); } #line 6507 "cpp_re.inc" yy979: @@ -6533,7 +6533,7 @@ yy983: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy985: -#line 48 "cpp.re" +#line 49 "cpp.re" { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_ALIGNOF : T_IDENTIFIER); } #line 6539 "cpp_re.inc" yy986: @@ -6545,12 +6545,12 @@ yy986: if (yych == '?') goto yy111; if (yych == '\\') goto yy110; yy987: -#line 47 "cpp.re" +#line 48 "cpp.re" { BOOST_WAVE_RET(s->act_in_cpp0x_mode ? T_ALIGNAS : T_IDENTIFIER); } #line 6551 "cpp_re.inc" yy988: ++YYCURSOR; -#line 176 "cpp.re" +#line 177 "cpp.re" { if (s->act_in_c99_mode) { --YYCURSOR; @@ -6570,26 +6570,26 @@ yy991: goto yy7; yy992: ++YYCURSOR; -#line 162 "cpp.re" +#line 163 "cpp.re" { BOOST_WAVE_RET(T_ELLIPSIS); } #line 6576 "cpp_re.inc" yy994: ++YYCURSOR; -#line 209 "cpp.re" +#line 210 "cpp.re" { BOOST_WAVE_RET(T_DIVIDEASSIGN); } #line 6581 "cpp_re.inc" yy996: ++YYCURSOR; -#line 44 "cpp.re" +#line 45 "cpp.re" { goto cppcomment; } #line 6586 "cpp_re.inc" yy998: ++YYCURSOR; -#line 43 "cpp.re" +#line 44 "cpp.re" { goto ccomment; } #line 6591 "cpp_re.inc" } -#line 348 "cpp.re" +#line 349 "cpp.re" ccomment: @@ -6618,13 +6618,13 @@ ccomment: ++YYCURSOR; if ((yych = *YYCURSOR) == '/') goto yy1014; yy1003: -#line 363 "cpp.re" +#line 364 "cpp.re" { goto ccomment; } #line 6624 "cpp_re.inc" yy1004: ++YYCURSOR; yy1005: -#line 355 "cpp.re" +#line 356 "cpp.re" { /*if(cursor == s->eof) BOOST_WAVE_RET(T_EOF);*/ /*s->tok = cursor; */ @@ -6645,7 +6645,7 @@ yy1008: goto yy1003; yy1009: ++YYCURSOR; -#line 366 "cpp.re" +#line 367 "cpp.re" { if(cursor == s->eof) { @@ -6664,7 +6664,7 @@ yy1009: #line 6665 "cpp_re.inc" yy1011: ++YYCURSOR; -#line 383 "cpp.re" +#line 384 "cpp.re" { // flag the error BOOST_WAVE_UPDATE_CURSOR(); // adjust the input cursor @@ -6677,11 +6677,11 @@ yy1013: goto yy1005; yy1014: ++YYCURSOR; -#line 352 "cpp.re" +#line 353 "cpp.re" { BOOST_WAVE_RET(T_CCOMMENT); } #line 6683 "cpp_re.inc" } -#line 389 "cpp.re" +#line 390 "cpp.re" cppcomment: @@ -6703,7 +6703,7 @@ cppcomment: } ++YYCURSOR; yy1019: -#line 394 "cpp.re" +#line 395 "cpp.re" { /*if(cursor == s->eof) BOOST_WAVE_RET(T_EOF); */ /*s->tok = cursor; */ @@ -6719,7 +6719,7 @@ yy1020: yy1021: ++YYCURSOR; yy1022: -#line 402 "cpp.re" +#line 403 "cpp.re" { goto cppcomment; } #line 6725 "cpp_re.inc" yy1023: @@ -6727,7 +6727,7 @@ yy1023: goto yy1022; yy1024: ++YYCURSOR; -#line 405 "cpp.re" +#line 406 "cpp.re" { if (s->eof && cursor != s->eof) { @@ -6749,7 +6749,7 @@ yy1024: #line 6750 "cpp_re.inc" yy1026: ++YYCURSOR; -#line 425 "cpp.re" +#line 426 "cpp.re" { // flag the error BOOST_WAVE_UPDATE_CURSOR(); // adjust the input cursor @@ -6762,7 +6762,7 @@ yy1028: yych = *YYCURSOR; goto yy1019; } -#line 431 "cpp.re" +#line 432 "cpp.re" /* this subscanner is called whenever a pp_number has been started */ @@ -6841,7 +6841,7 @@ yy1033: } } yy1035: -#line 443 "cpp.re" +#line 444 "cpp.re" { BOOST_WAVE_RET(T_PP_NUMBER); } #line 6847 "cpp_re.inc" yy1036: @@ -7054,7 +7054,7 @@ yy1052: goto yy1031; } } -#line 444 "cpp.re" +#line 445 "cpp.re" } else { @@ -7134,7 +7134,7 @@ yy1056: } } yy1057: -#line 451 "cpp.re" +#line 452 "cpp.re" { goto integer_suffix; } #line 7140 "cpp_re.inc" yy1058: @@ -7180,7 +7180,7 @@ yy1061: } } yy1063: -#line 449 "cpp.re" +#line 450 "cpp.re" { BOOST_WAVE_RET(T_FLOATLIT); } #line 7186 "cpp_re.inc" yy1064: @@ -7321,7 +7321,7 @@ yy1080: } goto yy1057; } -#line 452 "cpp.re" +#line 453 "cpp.re" } } @@ -7334,137 +7334,147 @@ integer_suffix: #line 7335 "cpp_re.inc" { YYCTYPE yych; - if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3); + if ((YYLIMIT - YYCURSOR) < 4) YYFILL(4); yych = *(YYMARKER = YYCURSOR); if (yych <= 'h') { if (yych <= 'L') { - if (yych >= 'L') goto yy1086; + if (yych >= 'L') goto yy1087; } else { if (yych == 'U') goto yy1085; } } else { if (yych <= 'l') { - if (yych <= 'i') goto yy1087; - if (yych >= 'l') goto yy1086; + if (yych <= 'i') goto yy1088; + if (yych >= 'l') goto yy1087; } else { - if (yych == 'u') goto yy1085; + if (yych == 'u') goto yy1086; } } yy1084: -#line 465 "cpp.re" +#line 466 "cpp.re" { BOOST_WAVE_RET(T_INTLIT); } #line 7357 "cpp_re.inc" yy1085: yych = *++YYCURSOR; - if (yych == 'L') goto yy1094; - if (yych == 'l') goto yy1094; + if (yych == 'L') goto yy1095; + if (yych == 'l') goto yy1095; goto yy1084; yy1086: - yych = *++YYCURSOR; - if (yych <= 'U') { - if (yych == 'L') goto yy1093; - if (yych <= 'T') goto yy1084; - goto yy1092; + yych = *(YYMARKER = ++YYCURSOR); + if (yych <= 'h') { + if (yych == 'L') goto yy1095; + goto yy1084; } else { - if (yych <= 'l') { - if (yych <= 'k') goto yy1084; - goto yy1093; - } else { - if (yych == 'u') goto yy1092; - goto yy1084; - } + if (yych <= 'i') goto yy1088; + if (yych == 'l') goto yy1095; + goto yy1084; } yy1087: yych = *++YYCURSOR; - if (yych == '6') goto yy1089; + if (yych <= 'U') { + if (yych == 'L') goto yy1094; + if (yych <= 'T') goto yy1084; + goto yy1093; + } else { + if (yych <= 'l') { + if (yych <= 'k') goto yy1084; + goto yy1094; + } else { + if (yych == 'u') goto yy1093; + goto yy1084; + } + } yy1088: + yych = *++YYCURSOR; + if (yych == '6') goto yy1090; +yy1089: YYCURSOR = YYMARKER; goto yy1084; -yy1089: - yych = *++YYCURSOR; - if (yych != '4') goto yy1088; yy1090: - ++YYCURSOR; -yy1091: -#line 462 "cpp.re" - { BOOST_WAVE_RET(T_LONGINTLIT); } -#line 7392 "cpp_re.inc" -yy1092: yych = *++YYCURSOR; - goto yy1084; + if (yych != '4') goto yy1089; +yy1091: + ++YYCURSOR; +yy1092: +#line 463 "cpp.re" + { BOOST_WAVE_RET(T_LONGINTLIT); } +#line 7402 "cpp_re.inc" yy1093: yych = *++YYCURSOR; - if (yych == 'U') goto yy1090; - if (yych == 'u') goto yy1090; - goto yy1091; + goto yy1084; yy1094: + yych = *++YYCURSOR; + if (yych == 'U') goto yy1091; + if (yych == 'u') goto yy1091; + goto yy1092; +yy1095: ++YYCURSOR; - if ((yych = *YYCURSOR) == 'L') goto yy1090; - if (yych == 'l') goto yy1090; + if ((yych = *YYCURSOR) == 'L') goto yy1091; + if (yych == 'l') goto yy1091; goto yy1084; } -#line 466 "cpp.re" +#line 467 "cpp.re" } else { -#line 7412 "cpp_re.inc" +#line 7422 "cpp_re.inc" { YYCTYPE yych; if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3); yych = *YYCURSOR; if (yych <= 'U') { - if (yych == 'L') goto yy1099; - if (yych >= 'U') goto yy1098; + if (yych == 'L') goto yy1100; + if (yych >= 'U') goto yy1099; } else { if (yych <= 'l') { - if (yych >= 'l') goto yy1099; + if (yych >= 'l') goto yy1100; } else { - if (yych == 'u') goto yy1098; + if (yych == 'u') goto yy1099; } } -yy1097: -#line 474 "cpp.re" - { BOOST_WAVE_RET(T_INTLIT); } -#line 7430 "cpp_re.inc" yy1098: - yych = *++YYCURSOR; - if (yych == 'L') goto yy1104; - if (yych == 'l') goto yy1104; - goto yy1097; +#line 475 "cpp.re" + { BOOST_WAVE_RET(T_INTLIT); } +#line 7440 "cpp_re.inc" yy1099: + yych = *++YYCURSOR; + if (yych == 'L') goto yy1105; + if (yych == 'l') goto yy1105; + goto yy1098; +yy1100: yych = *++YYCURSOR; if (yych <= 'U') { - if (yych == 'L') goto yy1101; - if (yych <= 'T') goto yy1097; + if (yych == 'L') goto yy1102; + if (yych <= 'T') goto yy1098; } else { if (yych <= 'l') { - if (yych <= 'k') goto yy1097; - goto yy1101; + if (yych <= 'k') goto yy1098; + goto yy1102; } else { - if (yych != 'u') goto yy1097; + if (yych != 'u') goto yy1098; } } yych = *++YYCURSOR; - goto yy1097; -yy1101: - ++YYCURSOR; - if ((yych = *YYCURSOR) == 'U') goto yy1103; - if (yych == 'u') goto yy1103; + goto yy1098; yy1102: -#line 471 "cpp.re" - { BOOST_WAVE_RET(T_LONGINTLIT); } -#line 7458 "cpp_re.inc" -yy1103: - yych = *++YYCURSOR; - goto yy1102; -yy1104: ++YYCURSOR; - if ((yych = *YYCURSOR) == 'L') goto yy1103; - if (yych == 'l') goto yy1103; - goto yy1097; + if ((yych = *YYCURSOR) == 'U') goto yy1104; + if (yych == 'u') goto yy1104; +yy1103: +#line 472 "cpp.re" + { BOOST_WAVE_RET(T_LONGINTLIT); } +#line 7468 "cpp_re.inc" +yy1104: + yych = *++YYCURSOR; + goto yy1103; +yy1105: + ++YYCURSOR; + if ((yych = *YYCURSOR) == 'L') goto yy1104; + if (yych == 'l') goto yy1104; + goto yy1098; } -#line 475 "cpp.re" +#line 476 "cpp.re" } } @@ -7473,7 +7483,7 @@ yy1104: extcharlit: { -#line 7477 "cpp_re.inc" +#line 7487 "cpp_re.inc" { YYCTYPE yych; static const unsigned char yybm[] = { @@ -7514,305 +7524,305 @@ extcharlit: yych = *YYCURSOR; if (yych <= 0x1F) { if (yych <= '\n') { - if (yych <= 0x08) goto yy1107; - if (yych <= '\t') goto yy1108; - goto yy1112; + if (yych <= 0x08) goto yy1108; + if (yych <= '\t') goto yy1109; + goto yy1113; } else { - if (yych <= '\f') goto yy1108; - if (yych <= '\r') goto yy1112; + if (yych <= '\f') goto yy1109; + if (yych <= '\r') goto yy1113; } } else { if (yych <= '>') { - if (yych == '\'') goto yy1112; - goto yy1108; + if (yych == '\'') goto yy1113; + goto yy1109; } else { - if (yych <= '?') goto yy1110; - if (yych == '\\') goto yy1111; - goto yy1108; + if (yych <= '?') goto yy1111; + if (yych == '\\') goto yy1112; + goto yy1109; } } -yy1107: - YYCURSOR = YYMARKER; - goto yy1109; yy1108: - ++YYCURSOR; - if ((yych = *YYCURSOR) == '\'') goto yy1120; + YYCURSOR = YYMARKER; + goto yy1110; yy1109: -#line 487 "cpp.re" - { BOOST_WAVE_RET(TOKEN_FROM_ID(*s->tok, UnknownTokenType)); } -#line 7544 "cpp_re.inc" + ++YYCURSOR; + if ((yych = *YYCURSOR) == '\'') goto yy1121; yy1110: - yych = *(YYMARKER = ++YYCURSOR); - if (yych == '\'') goto yy1120; - if (yych == '?') goto yy1135; - goto yy1109; +#line 488 "cpp.re" + { BOOST_WAVE_RET(TOKEN_FROM_ID(*s->tok, UnknownTokenType)); } +#line 7554 "cpp_re.inc" yy1111: + yych = *(YYMARKER = ++YYCURSOR); + if (yych == '\'') goto yy1121; + if (yych == '?') goto yy1136; + goto yy1110; +yy1112: yych = *(YYMARKER = ++YYCURSOR); if (yych <= '`') { if (yych <= '7') { if (yych <= '&') { - if (yych == '"') goto yy1115; - goto yy1109; + if (yych == '"') goto yy1116; + goto yy1110; } else { - if (yych <= '\'') goto yy1115; - if (yych <= '/') goto yy1109; - goto yy1118; + if (yych <= '\'') goto yy1116; + if (yych <= '/') goto yy1110; + goto yy1119; } } else { if (yych <= 'T') { - if (yych == '?') goto yy1116; - goto yy1109; + if (yych == '?') goto yy1117; + goto yy1110; } else { - if (yych <= 'U') goto yy1114; - if (yych == '\\') goto yy1115; - goto yy1109; + if (yych <= 'U') goto yy1115; + if (yych == '\\') goto yy1116; + goto yy1110; } } } else { if (yych <= 'r') { if (yych <= 'f') { - if (yych <= 'b') goto yy1115; - if (yych <= 'e') goto yy1109; - goto yy1115; + if (yych <= 'b') goto yy1116; + if (yych <= 'e') goto yy1110; + goto yy1116; } else { - if (yych == 'n') goto yy1115; - if (yych <= 'q') goto yy1109; - goto yy1115; + if (yych == 'n') goto yy1116; + if (yych <= 'q') goto yy1110; + goto yy1116; } } else { if (yych <= 'u') { - if (yych <= 's') goto yy1109; - if (yych <= 't') goto yy1115; - goto yy1113; + if (yych <= 's') goto yy1110; + if (yych <= 't') goto yy1116; + goto yy1114; } else { - if (yych <= 'v') goto yy1115; - if (yych == 'x') goto yy1117; - goto yy1109; + if (yych <= 'v') goto yy1116; + if (yych == 'x') goto yy1118; + goto yy1110; } } } -yy1112: - yych = *++YYCURSOR; - goto yy1109; yy1113: yych = *++YYCURSOR; - if (yych <= '@') { - if (yych <= '/') goto yy1107; - if (yych <= '9') goto yy1132; - goto yy1107; - } else { - if (yych <= 'F') goto yy1132; - if (yych <= '`') goto yy1107; - if (yych <= 'f') goto yy1132; - goto yy1107; - } + goto yy1110; yy1114: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1107; - if (yych <= '9') goto yy1125; - goto yy1107; + if (yych <= '/') goto yy1108; + if (yych <= '9') goto yy1133; + goto yy1108; } else { - if (yych <= 'F') goto yy1125; - if (yych <= '`') goto yy1107; - if (yych <= 'f') goto yy1125; - goto yy1107; + if (yych <= 'F') goto yy1133; + if (yych <= '`') goto yy1108; + if (yych <= 'f') goto yy1133; + goto yy1108; } yy1115: yych = *++YYCURSOR; - if (yych == '\'') goto yy1120; - goto yy1107; + if (yych <= '@') { + if (yych <= '/') goto yy1108; + if (yych <= '9') goto yy1126; + goto yy1108; + } else { + if (yych <= 'F') goto yy1126; + if (yych <= '`') goto yy1108; + if (yych <= 'f') goto yy1126; + goto yy1108; + } yy1116: yych = *++YYCURSOR; - if (yych == '\'') goto yy1120; - if (yych == '?') goto yy1124; - goto yy1107; + if (yych == '\'') goto yy1121; + goto yy1108; yy1117: yych = *++YYCURSOR; - if (yych == '\'') goto yy1107; - goto yy1123; + if (yych == '\'') goto yy1121; + if (yych == '?') goto yy1125; + goto yy1108; yy1118: yych = *++YYCURSOR; - if (yych == '\'') goto yy1120; - if (yych <= '/') goto yy1107; - if (yych >= '8') goto yy1107; + if (yych == '\'') goto yy1108; + goto yy1124; +yy1119: yych = *++YYCURSOR; - if (yych == '\'') goto yy1120; - if (yych <= '/') goto yy1107; - if (yych <= '7') goto yy1115; - goto yy1107; -yy1120: + if (yych == '\'') goto yy1121; + if (yych <= '/') goto yy1108; + if (yych >= '8') goto yy1108; + yych = *++YYCURSOR; + if (yych == '\'') goto yy1121; + if (yych <= '/') goto yy1108; + if (yych <= '7') goto yy1116; + goto yy1108; +yy1121: ++YYCURSOR; -#line 484 "cpp.re" +#line 485 "cpp.re" { BOOST_WAVE_RET(T_CHARLIT); } -#line 7649 "cpp_re.inc" -yy1122: +#line 7659 "cpp_re.inc" +yy1123: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; -yy1123: - if (yybm[0+yych] & 128) { - goto yy1122; - } - if (yych == '\'') goto yy1120; - goto yy1107; yy1124: - yych = *++YYCURSOR; - if (yych == '/') goto yy1115; - goto yy1107; + if (yybm[0+yych] & 128) { + goto yy1123; + } + if (yych == '\'') goto yy1121; + goto yy1108; yy1125: yych = *++YYCURSOR; - if (yych <= '@') { - if (yych <= '/') goto yy1107; - if (yych >= ':') goto yy1107; - } else { - if (yych <= 'F') goto yy1126; - if (yych <= '`') goto yy1107; - if (yych >= 'g') goto yy1107; - } + if (yych == '/') goto yy1116; + goto yy1108; yy1126: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1107; - if (yych >= ':') goto yy1107; + if (yych <= '/') goto yy1108; + if (yych >= ':') goto yy1108; } else { if (yych <= 'F') goto yy1127; - if (yych <= '`') goto yy1107; - if (yych >= 'g') goto yy1107; + if (yych <= '`') goto yy1108; + if (yych >= 'g') goto yy1108; } yy1127: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1107; - if (yych >= ':') goto yy1107; + if (yych <= '/') goto yy1108; + if (yych >= ':') goto yy1108; } else { if (yych <= 'F') goto yy1128; - if (yych <= '`') goto yy1107; - if (yych >= 'g') goto yy1107; + if (yych <= '`') goto yy1108; + if (yych >= 'g') goto yy1108; } yy1128: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1107; - if (yych >= ':') goto yy1107; + if (yych <= '/') goto yy1108; + if (yych >= ':') goto yy1108; } else { if (yych <= 'F') goto yy1129; - if (yych <= '`') goto yy1107; - if (yych >= 'g') goto yy1107; + if (yych <= '`') goto yy1108; + if (yych >= 'g') goto yy1108; } yy1129: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1107; - if (yych >= ':') goto yy1107; + if (yych <= '/') goto yy1108; + if (yych >= ':') goto yy1108; } else { if (yych <= 'F') goto yy1130; - if (yych <= '`') goto yy1107; - if (yych >= 'g') goto yy1107; + if (yych <= '`') goto yy1108; + if (yych >= 'g') goto yy1108; } yy1130: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1107; - if (yych >= ':') goto yy1107; + if (yych <= '/') goto yy1108; + if (yych >= ':') goto yy1108; } else { if (yych <= 'F') goto yy1131; - if (yych <= '`') goto yy1107; - if (yych >= 'g') goto yy1107; + if (yych <= '`') goto yy1108; + if (yych >= 'g') goto yy1108; } yy1131: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1107; - if (yych <= '9') goto yy1115; - goto yy1107; + if (yych <= '/') goto yy1108; + if (yych >= ':') goto yy1108; } else { - if (yych <= 'F') goto yy1115; - if (yych <= '`') goto yy1107; - if (yych <= 'f') goto yy1115; - goto yy1107; + if (yych <= 'F') goto yy1132; + if (yych <= '`') goto yy1108; + if (yych >= 'g') goto yy1108; } yy1132: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1107; - if (yych >= ':') goto yy1107; + if (yych <= '/') goto yy1108; + if (yych <= '9') goto yy1116; + goto yy1108; } else { - if (yych <= 'F') goto yy1133; - if (yych <= '`') goto yy1107; - if (yych >= 'g') goto yy1107; + if (yych <= 'F') goto yy1116; + if (yych <= '`') goto yy1108; + if (yych <= 'f') goto yy1116; + goto yy1108; } yy1133: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1107; - if (yych >= ':') goto yy1107; + if (yych <= '/') goto yy1108; + if (yych >= ':') goto yy1108; } else { if (yych <= 'F') goto yy1134; - if (yych <= '`') goto yy1107; - if (yych >= 'g') goto yy1107; + if (yych <= '`') goto yy1108; + if (yych >= 'g') goto yy1108; } yy1134: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1107; - if (yych <= '9') goto yy1115; - goto yy1107; + if (yych <= '/') goto yy1108; + if (yych >= ':') goto yy1108; } else { - if (yych <= 'F') goto yy1115; - if (yych <= '`') goto yy1107; - if (yych <= 'f') goto yy1115; - goto yy1107; + if (yych <= 'F') goto yy1135; + if (yych <= '`') goto yy1108; + if (yych >= 'g') goto yy1108; } yy1135: yych = *++YYCURSOR; - if (yych != '/') goto yy1107; + if (yych <= '@') { + if (yych <= '/') goto yy1108; + if (yych <= '9') goto yy1116; + goto yy1108; + } else { + if (yych <= 'F') goto yy1116; + if (yych <= '`') goto yy1108; + if (yych <= 'f') goto yy1116; + goto yy1108; + } +yy1136: + yych = *++YYCURSOR; + if (yych != '/') goto yy1108; ++YYCURSOR; if ((yych = *YYCURSOR) <= '`') { if (yych <= '7') { if (yych <= '&') { - if (yych == '"') goto yy1115; - goto yy1107; + if (yych == '"') goto yy1116; + goto yy1108; } else { - if (yych <= '\'') goto yy1115; - if (yych <= '/') goto yy1107; - goto yy1118; + if (yych <= '\'') goto yy1116; + if (yych <= '/') goto yy1108; + goto yy1119; } } else { if (yych <= 'T') { - if (yych == '?') goto yy1116; - goto yy1107; + if (yych == '?') goto yy1117; + goto yy1108; } else { - if (yych <= 'U') goto yy1114; - if (yych == '\\') goto yy1115; - goto yy1107; + if (yych <= 'U') goto yy1115; + if (yych == '\\') goto yy1116; + goto yy1108; } } } else { if (yych <= 'r') { if (yych <= 'f') { - if (yych <= 'b') goto yy1115; - if (yych <= 'e') goto yy1107; - goto yy1115; + if (yych <= 'b') goto yy1116; + if (yych <= 'e') goto yy1108; + goto yy1116; } else { - if (yych == 'n') goto yy1115; - if (yych <= 'q') goto yy1107; - goto yy1115; + if (yych == 'n') goto yy1116; + if (yych <= 'q') goto yy1108; + goto yy1116; } } else { if (yych <= 'u') { - if (yych <= 's') goto yy1107; - if (yych <= 't') goto yy1115; - goto yy1113; + if (yych <= 's') goto yy1108; + if (yych <= 't') goto yy1116; + goto yy1114; } else { - if (yych <= 'v') goto yy1115; - if (yych == 'x') goto yy1117; - goto yy1107; + if (yych <= 'v') goto yy1116; + if (yych == 'x') goto yy1118; + goto yy1108; } } } } -#line 488 "cpp.re" +#line 489 "cpp.re" } @@ -7820,7 +7830,7 @@ yy1135: extstringlit: { -#line 7824 "cpp_re.inc" +#line 7834 "cpp_re.inc" { YYCTYPE yych; unsigned int yyaccept = 0; @@ -7862,323 +7872,323 @@ extstringlit: yych = *YYCURSOR; if (yych <= 0x1F) { if (yych <= '\n') { - if (yych <= 0x08) goto yy1139; - if (yych <= '\t') goto yy1140; - goto yy1146; + if (yych <= 0x08) goto yy1140; + if (yych <= '\t') goto yy1141; + goto yy1147; } else { - if (yych <= '\f') goto yy1140; - if (yych <= '\r') goto yy1146; + if (yych <= '\f') goto yy1141; + if (yych <= '\r') goto yy1147; } } else { if (yych <= '>') { - if (yych == '"') goto yy1144; - goto yy1140; + if (yych == '"') goto yy1145; + goto yy1141; } else { - if (yych <= '?') goto yy1142; - if (yych == '\\') goto yy1143; - goto yy1140; + if (yych <= '?') goto yy1143; + if (yych == '\\') goto yy1144; + goto yy1141; } } -yy1139: +yy1140: YYCURSOR = YYMARKER; if (yyaccept <= 0) { - goto yy1141; + goto yy1142; } else { - goto yy1145; + goto yy1146; } -yy1140: +yy1141: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if (yych <= '\n') { - if (yych == '\t') goto yy1150; + if (yych == '\t') goto yy1151; } else { - if (yych <= '\f') goto yy1150; - if (yych >= ' ') goto yy1150; + if (yych <= '\f') goto yy1151; + if (yych >= ' ') goto yy1151; } -yy1141: -#line 499 "cpp.re" - { BOOST_WAVE_RET(TOKEN_FROM_ID(*s->tok, UnknownTokenType)); } -#line 7902 "cpp_re.inc" yy1142: +#line 500 "cpp.re" + { BOOST_WAVE_RET(TOKEN_FROM_ID(*s->tok, UnknownTokenType)); } +#line 7912 "cpp_re.inc" +yy1143: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if (yybm[0+yych] & 32) { - goto yy1158; + goto yy1159; } if (yych <= '\n') { - if (yych == '\t') goto yy1150; - goto yy1141; + if (yych == '\t') goto yy1151; + goto yy1142; } else { - if (yych <= '\f') goto yy1150; - if (yych <= 0x1F) goto yy1141; - goto yy1150; + if (yych <= '\f') goto yy1151; + if (yych <= 0x1F) goto yy1142; + goto yy1151; } -yy1143: +yy1144: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if (yych <= '`') { if (yych <= '7') { if (yych <= '&') { - if (yych == '"') goto yy1149; - goto yy1141; + if (yych == '"') goto yy1150; + goto yy1142; } else { - if (yych <= '\'') goto yy1149; - if (yych <= '/') goto yy1141; - goto yy1153; + if (yych <= '\'') goto yy1150; + if (yych <= '/') goto yy1142; + goto yy1154; } } else { if (yych <= 'T') { - if (yych == '?') goto yy1151; - goto yy1141; + if (yych == '?') goto yy1152; + goto yy1142; } else { - if (yych <= 'U') goto yy1148; - if (yych == '\\') goto yy1149; - goto yy1141; + if (yych <= 'U') goto yy1149; + if (yych == '\\') goto yy1150; + goto yy1142; } } } else { if (yych <= 'r') { if (yych <= 'f') { - if (yych <= 'b') goto yy1149; - if (yych <= 'e') goto yy1141; - goto yy1149; + if (yych <= 'b') goto yy1150; + if (yych <= 'e') goto yy1142; + goto yy1150; } else { - if (yych == 'n') goto yy1149; - if (yych <= 'q') goto yy1141; - goto yy1149; + if (yych == 'n') goto yy1150; + if (yych <= 'q') goto yy1142; + goto yy1150; } } else { if (yych <= 'u') { - if (yych <= 's') goto yy1141; - if (yych <= 't') goto yy1149; - goto yy1147; + if (yych <= 's') goto yy1142; + if (yych <= 't') goto yy1150; + goto yy1148; } else { - if (yych <= 'v') goto yy1149; - if (yych == 'x') goto yy1152; - goto yy1141; + if (yych <= 'v') goto yy1150; + if (yych == 'x') goto yy1153; + goto yy1142; } } } -yy1144: - ++YYCURSOR; yy1145: -#line 496 "cpp.re" - { BOOST_WAVE_RET(T_STRINGLIT); } -#line 7968 "cpp_re.inc" -yy1146: - yych = *++YYCURSOR; - goto yy1141; -yy1147: ++YYCURSOR; - if (YYLIMIT <= YYCURSOR) YYFILL(1); - yych = *YYCURSOR; - if (yych <= '@') { - if (yych <= '/') goto yy1139; - if (yych <= '9') goto yy1187; - goto yy1139; - } else { - if (yych <= 'F') goto yy1187; - if (yych <= '`') goto yy1139; - if (yych <= 'f') goto yy1187; - goto yy1139; - } +yy1146: +#line 497 "cpp.re" + { BOOST_WAVE_RET(T_STRINGLIT); } +#line 7978 "cpp_re.inc" +yy1147: + yych = *++YYCURSOR; + goto yy1142; yy1148: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1139; - if (yych <= '9') goto yy1180; - goto yy1139; + if (yych <= '/') goto yy1140; + if (yych <= '9') goto yy1188; + goto yy1140; } else { - if (yych <= 'F') goto yy1180; - if (yych <= '`') goto yy1139; - if (yych <= 'f') goto yy1180; - goto yy1139; + if (yych <= 'F') goto yy1188; + if (yych <= '`') goto yy1140; + if (yych <= 'f') goto yy1188; + goto yy1140; } yy1149: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; -yy1150: - if (yybm[0+yych] & 16) { - goto yy1149; + if (yych <= '@') { + if (yych <= '/') goto yy1140; + if (yych <= '9') goto yy1181; + goto yy1140; + } else { + if (yych <= 'F') goto yy1181; + if (yych <= '`') goto yy1140; + if (yych <= 'f') goto yy1181; + goto yy1140; } - if (yych <= '!') goto yy1139; - if (yych <= '"') goto yy1155; - if (yych <= '[') goto yy1156; - goto yy1157; -yy1151: +yy1150: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; +yy1151: if (yybm[0+yych] & 16) { - goto yy1149; + goto yy1150; } - if (yych <= '!') goto yy1139; - if (yych <= '"') goto yy1155; - if (yych <= '[') goto yy1179; - goto yy1157; + if (yych <= '!') goto yy1140; + if (yych <= '"') goto yy1156; + if (yych <= '[') goto yy1157; + goto yy1158; yy1152: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; - if (yybm[0+yych] & 128) { - goto yy1166; + if (yybm[0+yych] & 16) { + goto yy1150; } - goto yy1139; + if (yych <= '!') goto yy1140; + if (yych <= '"') goto yy1156; + if (yych <= '[') goto yy1180; + goto yy1158; yy1153: + ++YYCURSOR; + if (YYLIMIT <= YYCURSOR) YYFILL(1); + yych = *YYCURSOR; + if (yybm[0+yych] & 128) { + goto yy1167; + } + goto yy1140; +yy1154: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '"') { if (yych <= '\n') { - if (yych == '\t') goto yy1149; - goto yy1139; + if (yych == '\t') goto yy1150; + goto yy1140; } else { - if (yych <= '\f') goto yy1149; - if (yych <= 0x1F) goto yy1139; - if (yych <= '!') goto yy1149; - goto yy1155; + if (yych <= '\f') goto yy1150; + if (yych <= 0x1F) goto yy1140; + if (yych <= '!') goto yy1150; + goto yy1156; } } else { if (yych <= '>') { - if (yych <= '/') goto yy1149; - if (yych >= '8') goto yy1149; + if (yych <= '/') goto yy1150; + if (yych >= '8') goto yy1150; } else { - if (yych <= '?') goto yy1156; - if (yych == '\\') goto yy1157; - goto yy1149; + if (yych <= '?') goto yy1157; + if (yych == '\\') goto yy1158; + goto yy1150; } } ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yybm[0+yych] & 16) { - goto yy1149; + goto yy1150; } - if (yych <= '!') goto yy1139; - if (yych <= '"') goto yy1155; - if (yych <= '[') goto yy1156; - goto yy1157; -yy1155: - yych = *++YYCURSOR; - goto yy1145; + if (yych <= '!') goto yy1140; + if (yych <= '"') goto yy1156; + if (yych <= '[') goto yy1157; + goto yy1158; yy1156: + yych = *++YYCURSOR; + goto yy1146; +yy1157: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yybm[0+yych] & 16) { - goto yy1149; + goto yy1150; } - if (yych <= '!') goto yy1139; - if (yych <= '"') goto yy1155; - if (yych <= '[') goto yy1158; -yy1157: + if (yych <= '!') goto yy1140; + if (yych <= '"') goto yy1156; + if (yych <= '[') goto yy1159; +yy1158: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '`') { if (yych <= '7') { if (yych <= '&') { - if (yych == '"') goto yy1149; - goto yy1139; + if (yych == '"') goto yy1150; + goto yy1140; } else { - if (yych <= '\'') goto yy1149; - if (yych <= '/') goto yy1139; - goto yy1153; + if (yych <= '\'') goto yy1150; + if (yych <= '/') goto yy1140; + goto yy1154; } } else { if (yych <= 'T') { - if (yych == '?') goto yy1151; - goto yy1139; + if (yych == '?') goto yy1152; + goto yy1140; } else { - if (yych <= 'U') goto yy1148; - if (yych == '\\') goto yy1149; - goto yy1139; + if (yych <= 'U') goto yy1149; + if (yych == '\\') goto yy1150; + goto yy1140; } } } else { if (yych <= 'r') { if (yych <= 'f') { - if (yych <= 'b') goto yy1149; - if (yych <= 'e') goto yy1139; - goto yy1149; + if (yych <= 'b') goto yy1150; + if (yych <= 'e') goto yy1140; + goto yy1150; } else { - if (yych == 'n') goto yy1149; - if (yych <= 'q') goto yy1139; - goto yy1149; + if (yych == 'n') goto yy1150; + if (yych <= 'q') goto yy1140; + goto yy1150; } } else { if (yych <= 'u') { - if (yych <= 's') goto yy1139; - if (yych <= 't') goto yy1149; - goto yy1147; + if (yych <= 's') goto yy1140; + if (yych <= 't') goto yy1150; + goto yy1148; } else { - if (yych <= 'v') goto yy1149; - if (yych == 'x') goto yy1152; - goto yy1139; + if (yych <= 'v') goto yy1150; + if (yych == 'x') goto yy1153; + goto yy1140; } } } -yy1158: +yy1159: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yybm[0+yych] & 32) { - goto yy1158; + goto yy1159; } if (yych <= '!') { if (yych <= '\n') { - if (yych == '\t') goto yy1149; - goto yy1139; + if (yych == '\t') goto yy1150; + goto yy1140; } else { - if (yych <= '\f') goto yy1149; - if (yych <= 0x1F) goto yy1139; - goto yy1149; + if (yych <= '\f') goto yy1150; + if (yych <= 0x1F) goto yy1140; + goto yy1150; } } else { if (yych <= '/') { - if (yych <= '"') goto yy1155; - if (yych <= '.') goto yy1149; + if (yych <= '"') goto yy1156; + if (yych <= '.') goto yy1150; } else { - if (yych == '\\') goto yy1157; - goto yy1149; + if (yych == '\\') goto yy1158; + goto yy1150; } } -yy1160: +yy1161: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yybm[0+yych] & 64) { - goto yy1160; + goto yy1161; } if (yych <= '7') { if (yych <= '\f') { - if (yych == '\t') goto yy1149; - if (yych <= '\n') goto yy1139; - goto yy1149; + if (yych == '\t') goto yy1150; + if (yych <= '\n') goto yy1140; + goto yy1150; } else { if (yych <= '!') { - if (yych <= 0x1F) goto yy1139; - goto yy1149; + if (yych <= 0x1F) goto yy1140; + goto yy1150; } else { - if (yych <= '"') goto yy1164; - if (yych <= '/') goto yy1149; - goto yy1153; + if (yych <= '"') goto yy1165; + if (yych <= '/') goto yy1150; + goto yy1154; } } } else { if (yych <= 'U') { - if (yych == '?') goto yy1165; - if (yych <= 'T') goto yy1149; - goto yy1163; + if (yych == '?') goto yy1166; + if (yych <= 'T') goto yy1150; + goto yy1164; } else { if (yych <= 'u') { - if (yych <= 't') goto yy1149; + if (yych <= 't') goto yy1150; } else { - if (yych == 'x') goto yy1166; - goto yy1149; + if (yych == 'x') goto yy1167; + goto yy1150; } } } @@ -8187,174 +8197,174 @@ yy1160: yych = *YYCURSOR; if (yych <= '9') { if (yych <= '\f') { - if (yych == '\t') goto yy1149; - if (yych <= '\n') goto yy1139; - goto yy1149; + if (yych == '\t') goto yy1150; + if (yych <= '\n') goto yy1140; + goto yy1150; } else { if (yych <= '!') { - if (yych <= 0x1F) goto yy1139; - goto yy1149; + if (yych <= 0x1F) goto yy1140; + goto yy1150; } else { - if (yych <= '"') goto yy1155; - if (yych <= '/') goto yy1149; - goto yy1176; + if (yych <= '"') goto yy1156; + if (yych <= '/') goto yy1150; + goto yy1177; } } } else { if (yych <= 'F') { - if (yych == '?') goto yy1156; - if (yych <= '@') goto yy1149; - goto yy1176; + if (yych == '?') goto yy1157; + if (yych <= '@') goto yy1150; + goto yy1177; } else { if (yych <= '\\') { - if (yych <= '[') goto yy1149; - goto yy1157; + if (yych <= '[') goto yy1150; + goto yy1158; } else { - if (yych <= '`') goto yy1149; - if (yych <= 'f') goto yy1176; - goto yy1149; - } - } - } -yy1163: - ++YYCURSOR; - if (YYLIMIT <= YYCURSOR) YYFILL(1); - yych = *YYCURSOR; - if (yych <= '9') { - if (yych <= '\f') { - if (yych == '\t') goto yy1149; - if (yych <= '\n') goto yy1139; - goto yy1149; - } else { - if (yych <= '!') { - if (yych <= 0x1F) goto yy1139; - goto yy1149; - } else { - if (yych <= '"') goto yy1155; - if (yych <= '/') goto yy1149; - goto yy1169; - } - } - } else { - if (yych <= 'F') { - if (yych == '?') goto yy1156; - if (yych <= '@') goto yy1149; - goto yy1169; - } else { - if (yych <= '\\') { - if (yych <= '[') goto yy1149; - goto yy1157; - } else { - if (yych <= '`') goto yy1149; - if (yych <= 'f') goto yy1169; - goto yy1149; + if (yych <= '`') goto yy1150; + if (yych <= 'f') goto yy1177; + goto yy1150; } } } yy1164: + ++YYCURSOR; + if (YYLIMIT <= YYCURSOR) YYFILL(1); + yych = *YYCURSOR; + if (yych <= '9') { + if (yych <= '\f') { + if (yych == '\t') goto yy1150; + if (yych <= '\n') goto yy1140; + goto yy1150; + } else { + if (yych <= '!') { + if (yych <= 0x1F) goto yy1140; + goto yy1150; + } else { + if (yych <= '"') goto yy1156; + if (yych <= '/') goto yy1150; + goto yy1170; + } + } + } else { + if (yych <= 'F') { + if (yych == '?') goto yy1157; + if (yych <= '@') goto yy1150; + goto yy1170; + } else { + if (yych <= '\\') { + if (yych <= '[') goto yy1150; + goto yy1158; + } else { + if (yych <= '`') goto yy1150; + if (yych <= 'f') goto yy1170; + goto yy1150; + } + } + } +yy1165: yyaccept = 1; YYMARKER = ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yybm[0+yych] & 16) { - goto yy1149; + goto yy1150; } - if (yych <= '!') goto yy1145; - if (yych <= '"') goto yy1155; - if (yych <= '[') goto yy1156; - goto yy1157; -yy1165: - ++YYCURSOR; - if (YYLIMIT <= YYCURSOR) YYFILL(1); - yych = *YYCURSOR; - if (yybm[0+yych] & 16) { - goto yy1149; - } - if (yych <= '!') goto yy1139; - if (yych <= '"') goto yy1155; - if (yych <= '[') goto yy1168; - goto yy1157; + if (yych <= '!') goto yy1146; + if (yych <= '"') goto yy1156; + if (yych <= '[') goto yy1157; + goto yy1158; yy1166: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; - if (yybm[0+yych] & 128) { - goto yy1166; + if (yybm[0+yych] & 16) { + goto yy1150; } - if (yych <= '!') { - if (yych <= '\n') { - if (yych == '\t') goto yy1149; - goto yy1139; - } else { - if (yych <= '\f') goto yy1149; - if (yych <= 0x1F) goto yy1139; - goto yy1149; - } - } else { - if (yych <= '?') { - if (yych <= '"') goto yy1155; - if (yych <= '>') goto yy1149; - goto yy1156; - } else { - if (yych == '\\') goto yy1157; - goto yy1149; - } - } -yy1168: + if (yych <= '!') goto yy1140; + if (yych <= '"') goto yy1156; + if (yych <= '[') goto yy1169; + goto yy1158; +yy1167: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; - if (yybm[0+yych] & 32) { - goto yy1158; + if (yybm[0+yych] & 128) { + goto yy1167; } if (yych <= '!') { if (yych <= '\n') { - if (yych == '\t') goto yy1149; - goto yy1139; + if (yych == '\t') goto yy1150; + goto yy1140; } else { - if (yych <= '\f') goto yy1149; - if (yych <= 0x1F) goto yy1139; - goto yy1149; + if (yych <= '\f') goto yy1150; + if (yych <= 0x1F) goto yy1140; + goto yy1150; } } else { - if (yych <= '/') { - if (yych <= '"') goto yy1155; - if (yych <= '.') goto yy1149; - goto yy1160; + if (yych <= '?') { + if (yych <= '"') goto yy1156; + if (yych <= '>') goto yy1150; + goto yy1157; } else { - if (yych == '\\') goto yy1157; - goto yy1149; + if (yych == '\\') goto yy1158; + goto yy1150; } } yy1169: + ++YYCURSOR; + if (YYLIMIT <= YYCURSOR) YYFILL(1); + yych = *YYCURSOR; + if (yybm[0+yych] & 32) { + goto yy1159; + } + if (yych <= '!') { + if (yych <= '\n') { + if (yych == '\t') goto yy1150; + goto yy1140; + } else { + if (yych <= '\f') goto yy1150; + if (yych <= 0x1F) goto yy1140; + goto yy1150; + } + } else { + if (yych <= '/') { + if (yych <= '"') goto yy1156; + if (yych <= '.') goto yy1150; + goto yy1161; + } else { + if (yych == '\\') goto yy1158; + goto yy1150; + } + } +yy1170: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '9') { if (yych <= '\f') { - if (yych == '\t') goto yy1149; - if (yych <= '\n') goto yy1139; - goto yy1149; + if (yych == '\t') goto yy1150; + if (yych <= '\n') goto yy1140; + goto yy1150; } else { if (yych <= '!') { - if (yych <= 0x1F) goto yy1139; - goto yy1149; + if (yych <= 0x1F) goto yy1140; + goto yy1150; } else { - if (yych <= '"') goto yy1155; - if (yych <= '/') goto yy1149; + if (yych <= '"') goto yy1156; + if (yych <= '/') goto yy1150; } } } else { if (yych <= 'F') { - if (yych == '?') goto yy1156; - if (yych <= '@') goto yy1149; + if (yych == '?') goto yy1157; + if (yych <= '@') goto yy1150; } else { if (yych <= '\\') { - if (yych <= '[') goto yy1149; - goto yy1157; + if (yych <= '[') goto yy1150; + goto yy1158; } else { - if (yych <= '`') goto yy1149; - if (yych >= 'g') goto yy1149; + if (yych <= '`') goto yy1150; + if (yych >= 'g') goto yy1150; } } } @@ -8363,29 +8373,29 @@ yy1169: yych = *YYCURSOR; if (yych <= '9') { if (yych <= '\f') { - if (yych == '\t') goto yy1149; - if (yych <= '\n') goto yy1139; - goto yy1149; + if (yych == '\t') goto yy1150; + if (yych <= '\n') goto yy1140; + goto yy1150; } else { if (yych <= '!') { - if (yych <= 0x1F) goto yy1139; - goto yy1149; + if (yych <= 0x1F) goto yy1140; + goto yy1150; } else { - if (yych <= '"') goto yy1155; - if (yych <= '/') goto yy1149; + if (yych <= '"') goto yy1156; + if (yych <= '/') goto yy1150; } } } else { if (yych <= 'F') { - if (yych == '?') goto yy1156; - if (yych <= '@') goto yy1149; + if (yych == '?') goto yy1157; + if (yych <= '@') goto yy1150; } else { if (yych <= '\\') { - if (yych <= '[') goto yy1149; - goto yy1157; + if (yych <= '[') goto yy1150; + goto yy1158; } else { - if (yych <= '`') goto yy1149; - if (yych >= 'g') goto yy1149; + if (yych <= '`') goto yy1150; + if (yych >= 'g') goto yy1150; } } } @@ -8394,29 +8404,29 @@ yy1169: yych = *YYCURSOR; if (yych <= '9') { if (yych <= '\f') { - if (yych == '\t') goto yy1149; - if (yych <= '\n') goto yy1139; - goto yy1149; + if (yych == '\t') goto yy1150; + if (yych <= '\n') goto yy1140; + goto yy1150; } else { if (yych <= '!') { - if (yych <= 0x1F) goto yy1139; - goto yy1149; + if (yych <= 0x1F) goto yy1140; + goto yy1150; } else { - if (yych <= '"') goto yy1155; - if (yych <= '/') goto yy1149; + if (yych <= '"') goto yy1156; + if (yych <= '/') goto yy1150; } } } else { if (yych <= 'F') { - if (yych == '?') goto yy1156; - if (yych <= '@') goto yy1149; + if (yych == '?') goto yy1157; + if (yych <= '@') goto yy1150; } else { if (yych <= '\\') { - if (yych <= '[') goto yy1149; - goto yy1157; + if (yych <= '[') goto yy1150; + goto yy1158; } else { - if (yych <= '`') goto yy1149; - if (yych >= 'g') goto yy1149; + if (yych <= '`') goto yy1150; + if (yych >= 'g') goto yy1150; } } } @@ -8425,29 +8435,29 @@ yy1169: yych = *YYCURSOR; if (yych <= '9') { if (yych <= '\f') { - if (yych == '\t') goto yy1149; - if (yych <= '\n') goto yy1139; - goto yy1149; + if (yych == '\t') goto yy1150; + if (yych <= '\n') goto yy1140; + goto yy1150; } else { if (yych <= '!') { - if (yych <= 0x1F) goto yy1139; - goto yy1149; + if (yych <= 0x1F) goto yy1140; + goto yy1150; } else { - if (yych <= '"') goto yy1155; - if (yych <= '/') goto yy1149; + if (yych <= '"') goto yy1156; + if (yych <= '/') goto yy1150; } } } else { if (yych <= 'F') { - if (yych == '?') goto yy1156; - if (yych <= '@') goto yy1149; + if (yych == '?') goto yy1157; + if (yych <= '@') goto yy1150; } else { if (yych <= '\\') { - if (yych <= '[') goto yy1149; - goto yy1157; + if (yych <= '[') goto yy1150; + goto yy1158; } else { - if (yych <= '`') goto yy1149; - if (yych >= 'g') goto yy1149; + if (yych <= '`') goto yy1150; + if (yych >= 'g') goto yy1150; } } } @@ -8456,29 +8466,29 @@ yy1169: yych = *YYCURSOR; if (yych <= '9') { if (yych <= '\f') { - if (yych == '\t') goto yy1149; - if (yych <= '\n') goto yy1139; - goto yy1149; + if (yych == '\t') goto yy1150; + if (yych <= '\n') goto yy1140; + goto yy1150; } else { if (yych <= '!') { - if (yych <= 0x1F) goto yy1139; - goto yy1149; + if (yych <= 0x1F) goto yy1140; + goto yy1150; } else { - if (yych <= '"') goto yy1155; - if (yych <= '/') goto yy1149; + if (yych <= '"') goto yy1156; + if (yych <= '/') goto yy1150; } } } else { if (yych <= 'F') { - if (yych == '?') goto yy1156; - if (yych <= '@') goto yy1149; + if (yych == '?') goto yy1157; + if (yych <= '@') goto yy1150; } else { if (yych <= '\\') { - if (yych <= '[') goto yy1149; - goto yy1157; + if (yych <= '[') goto yy1150; + goto yy1158; } else { - if (yych <= '`') goto yy1149; - if (yych >= 'g') goto yy1149; + if (yych <= '`') goto yy1150; + if (yych >= 'g') goto yy1150; } } } @@ -8487,29 +8497,29 @@ yy1169: yych = *YYCURSOR; if (yych <= '9') { if (yych <= '\f') { - if (yych == '\t') goto yy1149; - if (yych <= '\n') goto yy1139; - goto yy1149; + if (yych == '\t') goto yy1150; + if (yych <= '\n') goto yy1140; + goto yy1150; } else { if (yych <= '!') { - if (yych <= 0x1F) goto yy1139; - goto yy1149; + if (yych <= 0x1F) goto yy1140; + goto yy1150; } else { - if (yych <= '"') goto yy1155; - if (yych <= '/') goto yy1149; + if (yych <= '"') goto yy1156; + if (yych <= '/') goto yy1150; } } } else { if (yych <= 'F') { - if (yych == '?') goto yy1156; - if (yych <= '@') goto yy1149; + if (yych == '?') goto yy1157; + if (yych <= '@') goto yy1150; } else { if (yych <= '\\') { - if (yych <= '[') goto yy1149; - goto yy1157; + if (yych <= '[') goto yy1150; + goto yy1158; } else { - if (yych <= '`') goto yy1149; - if (yych >= 'g') goto yy1149; + if (yych <= '`') goto yy1150; + if (yych >= 'g') goto yy1150; } } } @@ -8517,41 +8527,41 @@ yy1169: if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yybm[0+yych] & 16) { - goto yy1149; + goto yy1150; } - if (yych <= '!') goto yy1139; - if (yych <= '"') goto yy1155; - if (yych <= '[') goto yy1156; - goto yy1157; -yy1176: + if (yych <= '!') goto yy1140; + if (yych <= '"') goto yy1156; + if (yych <= '[') goto yy1157; + goto yy1158; +yy1177: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '9') { if (yych <= '\f') { - if (yych == '\t') goto yy1149; - if (yych <= '\n') goto yy1139; - goto yy1149; + if (yych == '\t') goto yy1150; + if (yych <= '\n') goto yy1140; + goto yy1150; } else { if (yych <= '!') { - if (yych <= 0x1F) goto yy1139; - goto yy1149; + if (yych <= 0x1F) goto yy1140; + goto yy1150; } else { - if (yych <= '"') goto yy1155; - if (yych <= '/') goto yy1149; + if (yych <= '"') goto yy1156; + if (yych <= '/') goto yy1150; } } } else { if (yych <= 'F') { - if (yych == '?') goto yy1156; - if (yych <= '@') goto yy1149; + if (yych == '?') goto yy1157; + if (yych <= '@') goto yy1150; } else { if (yych <= '\\') { - if (yych <= '[') goto yy1149; - goto yy1157; + if (yych <= '[') goto yy1150; + goto yy1158; } else { - if (yych <= '`') goto yy1149; - if (yych >= 'g') goto yy1149; + if (yych <= '`') goto yy1150; + if (yych >= 'g') goto yy1150; } } } @@ -8560,29 +8570,29 @@ yy1176: yych = *YYCURSOR; if (yych <= '9') { if (yych <= '\f') { - if (yych == '\t') goto yy1149; - if (yych <= '\n') goto yy1139; - goto yy1149; + if (yych == '\t') goto yy1150; + if (yych <= '\n') goto yy1140; + goto yy1150; } else { if (yych <= '!') { - if (yych <= 0x1F) goto yy1139; - goto yy1149; + if (yych <= 0x1F) goto yy1140; + goto yy1150; } else { - if (yych <= '"') goto yy1155; - if (yych <= '/') goto yy1149; + if (yych <= '"') goto yy1156; + if (yych <= '/') goto yy1150; } } } else { if (yych <= 'F') { - if (yych == '?') goto yy1156; - if (yych <= '@') goto yy1149; + if (yych == '?') goto yy1157; + if (yych <= '@') goto yy1150; } else { if (yych <= '\\') { - if (yych <= '[') goto yy1149; - goto yy1157; + if (yych <= '[') goto yy1150; + goto yy1158; } else { - if (yych <= '`') goto yy1149; - if (yych >= 'g') goto yy1149; + if (yych <= '`') goto yy1150; + if (yych >= 'g') goto yy1150; } } } @@ -8590,156 +8600,156 @@ yy1176: if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yybm[0+yych] & 16) { - goto yy1149; + goto yy1150; } - if (yych <= '!') goto yy1139; - if (yych <= '"') goto yy1155; - if (yych <= '[') goto yy1156; - goto yy1157; -yy1179: - ++YYCURSOR; - if (YYLIMIT <= YYCURSOR) YYFILL(1); - yych = *YYCURSOR; - if (yybm[0+yych] & 16) { - goto yy1149; - } - if (yych <= '!') goto yy1139; - if (yych <= '"') goto yy1155; - if (yych <= '[') goto yy1158; - goto yy1157; + if (yych <= '!') goto yy1140; + if (yych <= '"') goto yy1156; + if (yych <= '[') goto yy1157; + goto yy1158; yy1180: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; - if (yych <= '@') { - if (yych <= '/') goto yy1139; - if (yych >= ':') goto yy1139; - } else { - if (yych <= 'F') goto yy1181; - if (yych <= '`') goto yy1139; - if (yych >= 'g') goto yy1139; + if (yybm[0+yych] & 16) { + goto yy1150; } + if (yych <= '!') goto yy1140; + if (yych <= '"') goto yy1156; + if (yych <= '[') goto yy1159; + goto yy1158; yy1181: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1139; - if (yych >= ':') goto yy1139; + if (yych <= '/') goto yy1140; + if (yych >= ':') goto yy1140; } else { if (yych <= 'F') goto yy1182; - if (yych <= '`') goto yy1139; - if (yych >= 'g') goto yy1139; + if (yych <= '`') goto yy1140; + if (yych >= 'g') goto yy1140; } yy1182: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1139; - if (yych >= ':') goto yy1139; + if (yych <= '/') goto yy1140; + if (yych >= ':') goto yy1140; } else { if (yych <= 'F') goto yy1183; - if (yych <= '`') goto yy1139; - if (yych >= 'g') goto yy1139; + if (yych <= '`') goto yy1140; + if (yych >= 'g') goto yy1140; } yy1183: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1139; - if (yych >= ':') goto yy1139; + if (yych <= '/') goto yy1140; + if (yych >= ':') goto yy1140; } else { if (yych <= 'F') goto yy1184; - if (yych <= '`') goto yy1139; - if (yych >= 'g') goto yy1139; + if (yych <= '`') goto yy1140; + if (yych >= 'g') goto yy1140; } yy1184: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1139; - if (yych >= ':') goto yy1139; + if (yych <= '/') goto yy1140; + if (yych >= ':') goto yy1140; } else { if (yych <= 'F') goto yy1185; - if (yych <= '`') goto yy1139; - if (yych >= 'g') goto yy1139; + if (yych <= '`') goto yy1140; + if (yych >= 'g') goto yy1140; } yy1185: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1139; - if (yych >= ':') goto yy1139; + if (yych <= '/') goto yy1140; + if (yych >= ':') goto yy1140; } else { if (yych <= 'F') goto yy1186; - if (yych <= '`') goto yy1139; - if (yych >= 'g') goto yy1139; + if (yych <= '`') goto yy1140; + if (yych >= 'g') goto yy1140; } yy1186: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1139; - if (yych <= '9') goto yy1149; - goto yy1139; + if (yych <= '/') goto yy1140; + if (yych >= ':') goto yy1140; } else { - if (yych <= 'F') goto yy1149; - if (yych <= '`') goto yy1139; - if (yych <= 'f') goto yy1149; - goto yy1139; + if (yych <= 'F') goto yy1187; + if (yych <= '`') goto yy1140; + if (yych >= 'g') goto yy1140; } yy1187: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1139; - if (yych >= ':') goto yy1139; + if (yych <= '/') goto yy1140; + if (yych <= '9') goto yy1150; + goto yy1140; } else { - if (yych <= 'F') goto yy1188; - if (yych <= '`') goto yy1139; - if (yych >= 'g') goto yy1139; + if (yych <= 'F') goto yy1150; + if (yych <= '`') goto yy1140; + if (yych <= 'f') goto yy1150; + goto yy1140; } yy1188: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1139; - if (yych >= ':') goto yy1139; + if (yych <= '/') goto yy1140; + if (yych >= ':') goto yy1140; } else { if (yych <= 'F') goto yy1189; - if (yych <= '`') goto yy1139; - if (yych >= 'g') goto yy1139; + if (yych <= '`') goto yy1140; + if (yych >= 'g') goto yy1140; } yy1189: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1139; - if (yych <= '9') goto yy1149; - goto yy1139; + if (yych <= '/') goto yy1140; + if (yych >= ':') goto yy1140; } else { - if (yych <= 'F') goto yy1149; - if (yych <= '`') goto yy1139; - if (yych <= 'f') goto yy1149; - goto yy1139; + if (yych <= 'F') goto yy1190; + if (yych <= '`') goto yy1140; + if (yych >= 'g') goto yy1140; + } +yy1190: + ++YYCURSOR; + if (YYLIMIT <= YYCURSOR) YYFILL(1); + yych = *YYCURSOR; + if (yych <= '@') { + if (yych <= '/') goto yy1140; + if (yych <= '9') goto yy1150; + goto yy1140; + } else { + if (yych <= 'F') goto yy1150; + if (yych <= '`') goto yy1140; + if (yych <= 'f') goto yy1150; + goto yy1140; } } -#line 500 "cpp.re" +#line 501 "cpp.re" } extrawstringlit: { -#line 8743 "cpp_re.inc" +#line 8753 "cpp_re.inc" { YYCTYPE yych; static const unsigned char yybm[] = { @@ -8780,265 +8790,265 @@ extrawstringlit: yych = *YYCURSOR; if (yych <= 0x1F) { if (yych <= '\n') { - if (yych <= 0x08) goto yy1192; - if (yych <= '\t') goto yy1193; - goto yy1197; + if (yych <= 0x08) goto yy1193; + if (yych <= '\t') goto yy1194; + goto yy1198; } else { - if (yych <= '\f') goto yy1193; - if (yych <= '\r') goto yy1199; + if (yych <= '\f') goto yy1194; + if (yych <= '\r') goto yy1200; } } else { if (yych <= '>') { - if (yych == '"') goto yy1200; - goto yy1193; + if (yych == '"') goto yy1201; + goto yy1194; } else { - if (yych <= '?') goto yy1195; - if (yych == '\\') goto yy1196; - goto yy1193; + if (yych <= '?') goto yy1196; + if (yych == '\\') goto yy1197; + goto yy1194; } } -yy1192: - YYCURSOR = YYMARKER; - goto yy1194; yy1193: - ++YYCURSOR; + YYCURSOR = YYMARKER; + goto yy1195; yy1194: -#line 507 "cpp.re" + ++YYCURSOR; +yy1195: +#line 508 "cpp.re" { goto extrawstringlit; } -#line 8811 "cpp_re.inc" -yy1195: - yych = *(YYMARKER = ++YYCURSOR); - if (yych == '?') goto yy1221; - goto yy1194; +#line 8821 "cpp_re.inc" yy1196: + yych = *(YYMARKER = ++YYCURSOR); + if (yych == '?') goto yy1222; + goto yy1195; +yy1197: yych = *++YYCURSOR; if (yych <= '`') { if (yych <= '7') { if (yych <= '&') { - if (yych == '"') goto yy1193; - goto yy1192; + if (yych == '"') goto yy1194; + goto yy1193; } else { - if (yych <= '\'') goto yy1193; - if (yych <= '/') goto yy1192; - goto yy1206; + if (yych <= '\'') goto yy1194; + if (yych <= '/') goto yy1193; + goto yy1207; } } else { if (yych <= 'T') { - if (yych == '?') goto yy1204; - goto yy1192; + if (yych == '?') goto yy1205; + goto yy1193; } else { - if (yych <= 'U') goto yy1203; - if (yych == '\\') goto yy1193; - goto yy1192; + if (yych <= 'U') goto yy1204; + if (yych == '\\') goto yy1194; + goto yy1193; } } } else { if (yych <= 'r') { if (yych <= 'f') { - if (yych <= 'b') goto yy1193; - if (yych <= 'e') goto yy1192; - goto yy1193; + if (yych <= 'b') goto yy1194; + if (yych <= 'e') goto yy1193; + goto yy1194; } else { - if (yych == 'n') goto yy1193; - if (yych <= 'q') goto yy1192; - goto yy1193; + if (yych == 'n') goto yy1194; + if (yych <= 'q') goto yy1193; + goto yy1194; } } else { if (yych <= 'u') { - if (yych <= 's') goto yy1192; - if (yych <= 't') goto yy1193; - goto yy1202; + if (yych <= 's') goto yy1193; + if (yych <= 't') goto yy1194; + goto yy1203; } else { - if (yych <= 'v') goto yy1193; - if (yych == 'x') goto yy1205; - goto yy1192; + if (yych <= 'v') goto yy1194; + if (yych == 'x') goto yy1206; + goto yy1193; } } } -yy1197: - ++YYCURSOR; yy1198: -#line 512 "cpp.re" + ++YYCURSOR; +yy1199: +#line 513 "cpp.re" { s->line += count_backslash_newlines(s, cursor) +1; cursor.column = 1; goto extrawstringlit; } -#line 8870 "cpp_re.inc" -yy1199: - yych = *++YYCURSOR; - if (yych == '\n') goto yy1197; - goto yy1198; +#line 8880 "cpp_re.inc" yy1200: - ++YYCURSOR; -#line 518 "cpp.re" - { BOOST_WAVE_RET(T_RAWSTRINGLIT); } -#line 8879 "cpp_re.inc" -yy1202: yych = *++YYCURSOR; - if (yych <= '@') { - if (yych <= '/') goto yy1192; - if (yych <= '9') goto yy1218; - goto yy1192; - } else { - if (yych <= 'F') goto yy1218; - if (yych <= '`') goto yy1192; - if (yych <= 'f') goto yy1218; - goto yy1192; - } + if (yych == '\n') goto yy1198; + goto yy1199; +yy1201: + ++YYCURSOR; +#line 519 "cpp.re" + { BOOST_WAVE_RET(T_RAWSTRINGLIT); } +#line 8889 "cpp_re.inc" yy1203: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1192; - if (yych <= '9') goto yy1211; - goto yy1192; + if (yych <= '/') goto yy1193; + if (yych <= '9') goto yy1219; + goto yy1193; } else { - if (yych <= 'F') goto yy1211; - if (yych <= '`') goto yy1192; - if (yych <= 'f') goto yy1211; - goto yy1192; + if (yych <= 'F') goto yy1219; + if (yych <= '`') goto yy1193; + if (yych <= 'f') goto yy1219; + goto yy1193; } yy1204: - yych = *(YYMARKER = ++YYCURSOR); - if (yych == '?') goto yy1210; - goto yy1194; -yy1205: yych = *++YYCURSOR; - if (yybm[0+yych] & 128) { - goto yy1208; + if (yych <= '@') { + if (yych <= '/') goto yy1193; + if (yych <= '9') goto yy1212; + goto yy1193; + } else { + if (yych <= 'F') goto yy1212; + if (yych <= '`') goto yy1193; + if (yych <= 'f') goto yy1212; + goto yy1193; } - goto yy1192; +yy1205: + yych = *(YYMARKER = ++YYCURSOR); + if (yych == '?') goto yy1211; + goto yy1195; yy1206: yych = *++YYCURSOR; - if (yych <= '/') goto yy1194; - if (yych >= '8') goto yy1194; + if (yybm[0+yych] & 128) { + goto yy1209; + } + goto yy1193; +yy1207: yych = *++YYCURSOR; - if (yych <= '/') goto yy1194; - if (yych <= '7') goto yy1193; - goto yy1194; -yy1208: + if (yych <= '/') goto yy1195; + if (yych >= '8') goto yy1195; + yych = *++YYCURSOR; + if (yych <= '/') goto yy1195; + if (yych <= '7') goto yy1194; + goto yy1195; +yy1209: ++YYCURSOR; if (YYLIMIT <= YYCURSOR) YYFILL(1); yych = *YYCURSOR; if (yybm[0+yych] & 128) { - goto yy1208; + goto yy1209; } - goto yy1194; -yy1210: - yych = *++YYCURSOR; - if (yych == '/') goto yy1193; - goto yy1192; + goto yy1195; yy1211: yych = *++YYCURSOR; - if (yych <= '@') { - if (yych <= '/') goto yy1192; - if (yych >= ':') goto yy1192; - } else { - if (yych <= 'F') goto yy1212; - if (yych <= '`') goto yy1192; - if (yych >= 'g') goto yy1192; - } + if (yych == '/') goto yy1194; + goto yy1193; yy1212: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1192; - if (yych >= ':') goto yy1192; + if (yych <= '/') goto yy1193; + if (yych >= ':') goto yy1193; } else { if (yych <= 'F') goto yy1213; - if (yych <= '`') goto yy1192; - if (yych >= 'g') goto yy1192; + if (yych <= '`') goto yy1193; + if (yych >= 'g') goto yy1193; } yy1213: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1192; - if (yych >= ':') goto yy1192; + if (yych <= '/') goto yy1193; + if (yych >= ':') goto yy1193; } else { if (yych <= 'F') goto yy1214; - if (yych <= '`') goto yy1192; - if (yych >= 'g') goto yy1192; + if (yych <= '`') goto yy1193; + if (yych >= 'g') goto yy1193; } yy1214: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1192; - if (yych >= ':') goto yy1192; + if (yych <= '/') goto yy1193; + if (yych >= ':') goto yy1193; } else { if (yych <= 'F') goto yy1215; - if (yych <= '`') goto yy1192; - if (yych >= 'g') goto yy1192; + if (yych <= '`') goto yy1193; + if (yych >= 'g') goto yy1193; } yy1215: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1192; - if (yych >= ':') goto yy1192; + if (yych <= '/') goto yy1193; + if (yych >= ':') goto yy1193; } else { if (yych <= 'F') goto yy1216; - if (yych <= '`') goto yy1192; - if (yych >= 'g') goto yy1192; + if (yych <= '`') goto yy1193; + if (yych >= 'g') goto yy1193; } yy1216: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1192; - if (yych >= ':') goto yy1192; + if (yych <= '/') goto yy1193; + if (yych >= ':') goto yy1193; } else { if (yych <= 'F') goto yy1217; - if (yych <= '`') goto yy1192; - if (yych >= 'g') goto yy1192; + if (yych <= '`') goto yy1193; + if (yych >= 'g') goto yy1193; } yy1217: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1192; - if (yych <= '9') goto yy1193; - goto yy1192; + if (yych <= '/') goto yy1193; + if (yych >= ':') goto yy1193; } else { - if (yych <= 'F') goto yy1193; - if (yych <= '`') goto yy1192; - if (yych <= 'f') goto yy1193; - goto yy1192; + if (yych <= 'F') goto yy1218; + if (yych <= '`') goto yy1193; + if (yych >= 'g') goto yy1193; } yy1218: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1192; - if (yych >= ':') goto yy1192; + if (yych <= '/') goto yy1193; + if (yych <= '9') goto yy1194; + goto yy1193; } else { - if (yych <= 'F') goto yy1219; - if (yych <= '`') goto yy1192; - if (yych >= 'g') goto yy1192; + if (yych <= 'F') goto yy1194; + if (yych <= '`') goto yy1193; + if (yych <= 'f') goto yy1194; + goto yy1193; } yy1219: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1192; - if (yych >= ':') goto yy1192; + if (yych <= '/') goto yy1193; + if (yych >= ':') goto yy1193; } else { if (yych <= 'F') goto yy1220; - if (yych <= '`') goto yy1192; - if (yych >= 'g') goto yy1192; + if (yych <= '`') goto yy1193; + if (yych >= 'g') goto yy1193; } yy1220: yych = *++YYCURSOR; if (yych <= '@') { - if (yych <= '/') goto yy1192; - if (yych <= '9') goto yy1193; - goto yy1192; + if (yych <= '/') goto yy1193; + if (yych >= ':') goto yy1193; } else { - if (yych <= 'F') goto yy1193; - if (yych <= '`') goto yy1192; - if (yych <= 'f') goto yy1193; - goto yy1192; + if (yych <= 'F') goto yy1221; + if (yych <= '`') goto yy1193; + if (yych >= 'g') goto yy1193; } yy1221: + yych = *++YYCURSOR; + if (yych <= '@') { + if (yych <= '/') goto yy1193; + if (yych <= '9') goto yy1194; + goto yy1193; + } else { + if (yych <= 'F') goto yy1194; + if (yych <= '`') goto yy1193; + if (yych <= 'f') goto yy1194; + goto yy1193; + } +yy1222: ++YYCURSOR; - if ((yych = *YYCURSOR) == '/') goto yy1196; - goto yy1192; + if ((yych = *YYCURSOR) == '/') goto yy1197; + goto yy1193; } -#line 519 "cpp.re" +#line 520 "cpp.re" } diff --git a/src/cpplexer/re2clex/strict_cpp_re.inc b/src/cpplexer/re2clex/strict_cpp_re.inc index 87b80ff..14bdece 100644 --- a/src/cpplexer/re2clex/strict_cpp_re.inc +++ b/src/cpplexer/re2clex/strict_cpp_re.inc @@ -1,4 +1,4 @@ -/* Generated by re2c 0.13.5 on Sun Jan 09 15:38:28 2011 */ +/* Generated by re2c 0.13.5 on Thu Jul 18 20:13:38 2013 */ #line 1 "strict_cpp.re" /*============================================================================= Boost.Wave: A Standard compliant C++ preprocessor library diff --git a/test/testwave/testfiles/t_9_024.cpp b/test/testwave/testfiles/t_9_024.cpp new file mode 100644 index 0000000..94bffb6 --- /dev/null +++ b/test/testwave/testfiles/t_9_024.cpp @@ -0,0 +1,34 @@ +/*============================================================================= + Boost.Wave: A Standard compliant C++ preprocessor library + http://www.boost.org/ + + Copyright (c) 2001-2013 Hartmut Kaiser. Distributed under the Boost + Software License, Version 1.0. (See accompanying file + LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) +=============================================================================*/ + +// Verifies resolution of #8848: Wave driver improperly processes 0xFFFFui64 +// token + +//O --long_long + +#if defined(__TESTWAVE_SUPPORT_MS_EXTENSIONS__) + +#define TEST 0xFFFFFui64 + +TEST + +//R #line 19 "t_9_024.cpp" +//R 0xFFFFFui64 + +//H 10: t_9_024.cpp(15): #if +//H 11: t_9_024.cpp(15): #if defined(__TESTWAVE_SUPPORT_MS_EXTENSIONS__): 1 +//H 10: t_9_024.cpp(17): #define +//H 08: t_9_024.cpp(17): TEST=0xFFFFFui64 +//H 01: t_9_024.cpp(17): TEST +//H 02: 0xFFFFFui64 +//H 03: 0xFFFFFui64 +//H 10: t_9_024.cpp(33): #endif + +#endif + diff --git a/test/testwave/testfiles/test.cfg b/test/testwave/testfiles/test.cfg index 0f76468..113d1b8 100644 --- a/test/testwave/testfiles/test.cfg +++ b/test/testwave/testfiles/test.cfg @@ -2,7 +2,7 @@ # Boost.Wave: A Standard compliant C++ preprocessor library # http://www.boost.org/ # -# Copyright (c) 2003-2011 Hartmut Kaiser. Distributed under the Boost +# Copyright (c) 2003-2013 Hartmut Kaiser. Distributed under the Boost # Software License, Version 1.0. (See accompanying file # LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) # @@ -239,3 +239,4 @@ t_9_020.cpp t_9_021.cpp t_9_022.cpp t_9_023.cpp +t_9_024.cpp diff --git a/test/testwave/testwave_app.cpp b/test/testwave/testwave_app.cpp index a6cb0e6..78a9a9d 100644 --- a/test/testwave/testwave_app.cpp +++ b/test/testwave/testwave_app.cpp @@ -2,7 +2,7 @@ Boost.Wave: A Standard compliant C++ preprocessor library http://www.boost.org/ - Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost + Copyright (c) 2001-2013 Hartmut Kaiser. Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) =============================================================================*/ @@ -1198,6 +1198,27 @@ testwave_app::add_strict_lexer_definition(Context& ctx) return true; } +#if BOOST_WAVE_SUPPORT_MS_EXTENSIONS +// Predefine __TESTWAVE_SUPPORT_MS_EXTENSIONS__ +template +inline bool +testwave_app::add_support_ms_extensions_definition(Context& ctx) +{ + std::string macro("__TESTWAVE_SUPPORT_MS_EXTENSIONS__=1"); + if (!ctx.add_macro_definition(macro, true)) { + std::cerr << "testwave: failed to predefine macro: " << macro + << std::endl; + return false; + } + else if (9 == debuglevel) { + std::cerr << "add_support_ms_extensions_definition: predefined macro: " + << macro + << std::endl; + } + return true; +} +#endif + /////////////////////////////////////////////////////////////////////////////// // // Add special predefined macros to the context object. @@ -1260,6 +1281,16 @@ testwave_app::add_predefined_macros(Context& ctx) << std::endl; } +#if BOOST_WAVE_SUPPORT_MS_EXTENSIONS +// Predefine __TESTWAVE_SUPPORT_MS_EXTENSIONS__ + if (!add_support_ms_extensions_definition(ctx)) + { + std::cerr << "testwave: failed to add a predefined macro " + "(__TESTWAVE_SUPPORT_MS_EXTENSIONS__)." + << std::endl; + } +#endif + #if BOOST_WAVE_USE_STRICT_LEXER != 0 return add_strict_lexer_definition(ctx); #else diff --git a/test/testwave/testwave_app.hpp b/test/testwave/testwave_app.hpp index 68ab6db..eff367b 100644 --- a/test/testwave/testwave_app.hpp +++ b/test/testwave/testwave_app.hpp @@ -2,7 +2,7 @@ Boost.Wave: A Standard compliant C++ preprocessor library http://www.boost.org/ - Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost + Copyright (c) 2001-2013 Hartmut Kaiser. Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) =============================================================================*/ @@ -120,6 +120,12 @@ protected: template bool add_strict_lexer_definition(Context& ctx); +#if BOOST_WAVE_SUPPORT_MS_EXTENSIONS + // Predefine __TESTWAVE_SUPPORT_MS_EXTENSIONS__ + template + bool add_support_ms_extensions_definition(Context& ctx); +#endif + private: int debuglevel; boost::program_options::options_description desc_options;