-/* Generated by re2c 0.14.3 on Sat Aug 22 15:45:34 2015 */
+/* Generated by re2c 0.14.3 on Sun Aug 23 10:47:18 2015 */
#line 1 "../src/parse/scanner_lex.re"
#include <stdlib.h>
#include <string.h>
#line 32 "../src/parse/scanner_lex.re"
-#line 53 "../src/parse/scanner_lex.re"
+#line 56 "../src/parse/scanner_lex.re"
Scanner::ParseMode Scanner::echo()
}
}
++YYCURSOR;
-#line 196 "../src/parse/scanner_lex.re"
+#line 199 "../src/parse/scanner_lex.re"
{
if (!(ignore_eoc || DFlag || flag_skeleton))
{
yy4:
++YYCURSOR;
yy5:
-#line 207 "../src/parse/scanner_lex.re"
+#line 210 "../src/parse/scanner_lex.re"
{
goto echo;
}
}
if (yych == '#') goto yy91;
yy7:
-#line 183 "../src/parse/scanner_lex.re"
+#line 186 "../src/parse/scanner_lex.re"
{
if (ignore_eoc)
{
yych = (YYCTYPE)*++YYCURSOR;
if (yych != 'c') goto yy12;
++YYCURSOR;
-#line 84 "../src/parse/scanner_lex.re"
+#line 87 "../src/parse/scanner_lex.re"
{
if (rFlag)
{
if (yych != 'c') goto yy12;
yy32:
++YYCURSOR;
-#line 69 "../src/parse/scanner_lex.re"
+#line 72 "../src/parse/scanner_lex.re"
{
if (rFlag)
{
yych = (YYCTYPE)*++YYCURSOR;
if (yych != 'c') goto yy12;
++YYCURSOR;
-#line 96 "../src/parse/scanner_lex.re"
+#line 99 "../src/parse/scanner_lex.re"
{
if (!rFlag)
{
yych = (YYCTYPE)*++YYCURSOR;
if (yych != 'c') goto yy12;
++YYCURSOR;
-#line 110 "../src/parse/scanner_lex.re"
+#line 113 "../src/parse/scanner_lex.re"
{
if (!DFlag)
{
yych = (YYCTYPE)*++YYCURSOR;
if (yych != 'c') goto yy12;
++YYCURSOR;
-#line 119 "../src/parse/scanner_lex.re"
+#line 122 "../src/parse/scanner_lex.re"
{
tok = pos = cur;
out.insert_state_goto (topIndent);
yych = (YYCTYPE)*++YYCURSOR;
if (yych != 'c') goto yy12;
++YYCURSOR;
-#line 125 "../src/parse/scanner_lex.re"
+#line 128 "../src/parse/scanner_lex.re"
{
tok = pos = cur;
ignore_eoc = true;
yych = (YYCTYPE)*++YYCURSOR;
if (yych != 'c') goto yy12;
++YYCURSOR;
-#line 130 "../src/parse/scanner_lex.re"
+#line 133 "../src/parse/scanner_lex.re"
{
tok = pos = cur;
ignore_eoc = true;
if (yych == '\n') goto yy87;
if (yych == '\r') goto yy86;
yy85:
-#line 161 "../src/parse/scanner_lex.re"
+#line 164 "../src/parse/scanner_lex.re"
{
if (ignore_eoc)
{
if (yych != '\n') goto yy12;
yy87:
++YYCURSOR;
-#line 143 "../src/parse/scanner_lex.re"
+#line 146 "../src/parse/scanner_lex.re"
{
cline++;
if (ignore_eoc)
yy103:
++YYCURSOR;
YYCURSOR = YYCTXMARKER;
-#line 179 "../src/parse/scanner_lex.re"
+#line 182 "../src/parse/scanner_lex.re"
{
set_sourceline ();
goto echo;
if (yych == '\r') goto yy105;
goto yy12;
}
-#line 210 "../src/parse/scanner_lex.re"
+#line 213 "../src/parse/scanner_lex.re"
}
{
uint32_t depth;
- char quote;
- bool negated_class = false;
- std::vector<uint32_t> cpoints;
scan:
tchar = cur - pos;
tline = cline;
start:
-#line 600 "src/parse/scanner_lex.cc"
+#line 597 "src/parse/scanner_lex.cc"
{
YYCTYPE yych;
unsigned int yyaccept = 0;
if (yych >= '%') goto yy121;
} else {
if (yych <= '&') goto yy112;
- if (yych <= '\'') goto yy119;
- goto yy122;
+ if (yych <= '\'') goto yy122;
+ goto yy124;
}
} else {
if (yych <= '+') {
- if (yych <= '*') goto yy124;
- goto yy126;
+ if (yych <= '*') goto yy126;
+ goto yy128;
} else {
- if (yych <= ',') goto yy122;
- if (yych >= '.') goto yy128;
+ if (yych <= ',') goto yy124;
+ if (yych >= '.') goto yy130;
}
}
}
if (yych <= '[') {
if (yych <= '<') {
if (yych <= '9') {
- if (yych <= '/') goto yy130;
- goto yy131;
- } else {
- if (yych <= ':') goto yy132;
- if (yych <= ';') goto yy122;
+ if (yych <= '/') goto yy132;
goto yy133;
+ } else {
+ if (yych <= ':') goto yy134;
+ if (yych <= ';') goto yy124;
+ goto yy135;
}
} else {
if (yych <= '?') {
- if (yych <= '>') goto yy122;
- goto yy126;
+ if (yych <= '>') goto yy124;
+ goto yy128;
} else {
if (yych <= '@') goto yy112;
- if (yych <= 'Z') goto yy131;
- goto yy134;
+ if (yych <= 'Z') goto yy133;
+ goto yy136;
}
}
} else {
if (yych <= 'q') {
if (yych <= '^') {
- if (yych <= '\\') goto yy122;
+ if (yych <= '\\') goto yy124;
} else {
- if (yych != '`') goto yy131;
+ if (yych != '`') goto yy133;
}
} else {
if (yych <= 'z') {
- if (yych <= 'r') goto yy136;
- goto yy131;
+ if (yych <= 'r') goto yy138;
+ goto yy133;
} else {
- if (yych <= '{') goto yy137;
- if (yych <= '|') goto yy122;
+ if (yych <= '{') goto yy139;
+ if (yych <= '|') goto yy124;
}
}
}
yy112:
++YYCURSOR;
yy113:
-#line 383 "../src/parse/scanner_lex.re"
+#line 409 "../src/parse/scanner_lex.re"
{
fatalf("unexpected character: '%c'", *tok);
goto scan;
}
-#line 720 "src/parse/scanner_lex.cc"
+#line 717 "src/parse/scanner_lex.cc"
yy114:
++YYCURSOR;
yych = (YYCTYPE)*YYCURSOR;
- goto yy218;
+ goto yy220;
yy115:
-#line 367 "../src/parse/scanner_lex.re"
+#line 393 "../src/parse/scanner_lex.re"
{
goto scan;
}
-#line 730 "src/parse/scanner_lex.cc"
+#line 727 "src/parse/scanner_lex.cc"
yy116:
yyaccept = 0;
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
if (yych <= 0x1F) {
- if (yych == '\t') goto yy196;
+ if (yych == '\t') goto yy198;
} else {
- if (yych <= ' ') goto yy196;
- if (yych == '#') goto yy198;
+ if (yych <= ' ') goto yy198;
+ if (yych == '#') goto yy200;
}
yy117:
-#line 376 "../src/parse/scanner_lex.re"
+#line 402 "../src/parse/scanner_lex.re"
{
if (cur == eof) return 0;
pos = cur;
cline++;
goto scan;
}
-#line 748 "src/parse/scanner_lex.cc"
+#line 745 "src/parse/scanner_lex.cc"
yy118:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == '\n') goto yy195;
+ if (yych == '\n') goto yy197;
goto yy113;
yy119:
++YYCURSOR;
-#line 262 "../src/parse/scanner_lex.re"
- { quote = tok[0]; goto cpoints; }
-#line 757 "src/parse/scanner_lex.cc"
+#line 270 "../src/parse/scanner_lex.re"
+ {
+ std::vector<uint32_t> cpoints;
+ lex_cpoints ('"', cpoints);
+ yylval.regexp = cpoint_string (cpoints, bCaseInsensitive || bCaseInverted);
+ return REGEXP;
+ }
+#line 759 "src/parse/scanner_lex.cc"
yy121:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == '}') goto yy193;
+ if (yych == '}') goto yy195;
goto yy113;
yy122:
++YYCURSOR;
-yy123:
-#line 272 "../src/parse/scanner_lex.re"
+#line 263 "../src/parse/scanner_lex.re"
+ {
+ std::vector<uint32_t> cpoints;
+ lex_cpoints ('\'', cpoints);
+ yylval.regexp = cpoint_string (cpoints, bCaseInsensitive || !bCaseInverted);
+ return REGEXP;
+ }
+#line 773 "src/parse/scanner_lex.cc"
+yy124:
+ ++YYCURSOR;
+yy125:
+#line 297 "../src/parse/scanner_lex.re"
{
return *tok;
}
-#line 769 "src/parse/scanner_lex.cc"
-yy124:
+#line 781 "src/parse/scanner_lex.cc"
+yy126:
++YYCURSOR;
- if ((yych = (YYCTYPE)*YYCURSOR) == '/') goto yy193;
-#line 276 "../src/parse/scanner_lex.re"
+ if ((yych = (YYCTYPE)*YYCURSOR) == '/') goto yy195;
+#line 301 "../src/parse/scanner_lex.re"
{
yylval.op = *tok;
return STAR;
}
-#line 778 "src/parse/scanner_lex.cc"
-yy126:
+#line 790 "src/parse/scanner_lex.cc"
+yy128:
++YYCURSOR;
-#line 280 "../src/parse/scanner_lex.re"
+#line 305 "../src/parse/scanner_lex.re"
{
yylval.op = *tok;
return CLOSE;
}
-#line 786 "src/parse/scanner_lex.cc"
-yy128:
+#line 798 "src/parse/scanner_lex.cc"
+yy130:
++YYCURSOR;
-#line 362 "../src/parse/scanner_lex.re"
+#line 388 "../src/parse/scanner_lex.re"
{
yylval.regexp = mkDot();
- return RANGE;
+ return REGEXP;
}
-#line 794 "src/parse/scanner_lex.cc"
-yy130:
+#line 806 "src/parse/scanner_lex.cc"
+yy132:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == '*') goto yy189;
- if (yych == '/') goto yy191;
- goto yy123;
-yy131:
+ if (yych == '*') goto yy191;
+ if (yych == '/') goto yy193;
+ goto yy125;
+yy133:
YYCTXMARKER = YYCURSOR + 1;
yych = (YYCTYPE)*++YYCURSOR;
- goto yy163;
-yy132:
+ goto yy165;
+yy134:
YYCTXMARKER = YYCURSOR + 1;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == '=') goto yy185;
+ if (yych == '=') goto yy187;
goto yy113;
-yy133:
+yy135:
yyaccept = 1;
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych == '!') goto yy176;
- if (yych == '>') goto yy178;
- goto yy123;
-yy134:
- ++YYCURSOR;
- if ((yych = (YYCTYPE)*YYCURSOR) == '^') goto yy174;
-#line 263 "../src/parse/scanner_lex.re"
- { quote = ']'; goto cpoints; }
-#line 820 "src/parse/scanner_lex.cc"
+ if (yych == '!') goto yy178;
+ if (yych == '>') goto yy180;
+ goto yy125;
yy136:
+ ++YYCURSOR;
+ if ((yych = (YYCTYPE)*YYCURSOR) == '^') goto yy176;
+#line 277 "../src/parse/scanner_lex.re"
+ {
+ std::vector<uint32_t> cpoints;
+ lex_cpoints (']', cpoints);
+ yylval.regexp = cpoint_class (cpoints, false);
+ return REGEXP;
+ }
+#line 837 "src/parse/scanner_lex.cc"
+yy138:
YYCTXMARKER = YYCURSOR + 1;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'e') goto yy164;
- goto yy163;
-yy137:
+ if (yych == 'e') goto yy166;
+ goto yy165;
+yy139:
yyaccept = 2;
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
if (yybm[0+yych] & 16) {
- goto yy139;
+ goto yy141;
}
if (yych <= 'Z') {
- if (yych == ',') goto yy144;
- if (yych >= 'A') goto yy142;
+ if (yych == ',') goto yy146;
+ if (yych >= 'A') goto yy144;
} else {
if (yych <= '_') {
- if (yych >= '_') goto yy142;
+ if (yych >= '_') goto yy144;
} else {
- if (yych <= '`') goto yy138;
- if (yych <= 'z') goto yy142;
+ if (yych <= '`') goto yy140;
+ if (yych <= 'z') goto yy144;
}
}
-yy138:
+yy140:
#line 233 "../src/parse/scanner_lex.re"
{
depth = 1;
goto code;
}
-#line 849 "src/parse/scanner_lex.cc"
-yy139:
+#line 866 "src/parse/scanner_lex.cc"
+yy141:
++YYCURSOR;
if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
yych = (YYCTYPE)*YYCURSOR;
if (yybm[0+yych] & 16) {
- goto yy139;
+ goto yy141;
}
if (yych <= '^') {
if (yych <= ',') {
- if (yych >= ',') goto yy150;
+ if (yych >= ',') goto yy152;
} else {
- if (yych <= '@') goto yy141;
- if (yych <= 'Z') goto yy142;
+ if (yych <= '@') goto yy143;
+ if (yych <= 'Z') goto yy144;
}
} else {
if (yych <= 'z') {
- if (yych != '`') goto yy142;
+ if (yych != '`') goto yy144;
} else {
- if (yych == '}') goto yy148;
+ if (yych == '}') goto yy150;
}
}
-yy141:
+yy143:
YYCURSOR = YYMARKER;
if (yyaccept <= 1) {
if (yyaccept == 0) {
goto yy117;
} else {
- goto yy123;
+ goto yy125;
}
} else {
if (yyaccept == 2) {
- goto yy138;
+ goto yy140;
} else {
- goto yy145;
+ goto yy147;
}
}
-yy142:
+yy144:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = (YYCTYPE)*YYCURSOR;
if (yybm[0+yych] & 32) {
- goto yy142;
+ goto yy144;
}
- if (yych == '}') goto yy146;
- goto yy141;
-yy144:
+ if (yych == '}') goto yy148;
+ goto yy143;
+yy146:
++YYCURSOR;
-yy145:
-#line 316 "../src/parse/scanner_lex.re"
+yy147:
+#line 341 "../src/parse/scanner_lex.re"
{
fatal("illegal closure form, use '{n}', '{n,}', '{n,m}' where n and m are numbers");
}
-#line 902 "src/parse/scanner_lex.cc"
-yy146:
+#line 919 "src/parse/scanner_lex.cc"
+yy148:
++YYCURSOR;
-#line 320 "../src/parse/scanner_lex.re"
+#line 345 "../src/parse/scanner_lex.re"
{
if (!FFlag) {
fatal("curly braces for names only allowed with -F switch");
yylval.str = new std::string (tok + 1, tok_len () - 2); // -2 to omit braces
return ID;
}
-#line 913 "src/parse/scanner_lex.cc"
-yy148:
+#line 930 "src/parse/scanner_lex.cc"
+yy150:
++YYCURSOR;
-#line 285 "../src/parse/scanner_lex.re"
+#line 310 "../src/parse/scanner_lex.re"
{
if (!s_to_u32_unsafe (tok + 1, cur - 1, yylval.extop.min))
{
yylval.extop.max = yylval.extop.min;
return CLOSESIZE;
}
-#line 925 "src/parse/scanner_lex.cc"
-yy150:
+#line 942 "src/parse/scanner_lex.cc"
+yy152:
yyaccept = 3;
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych <= '/') goto yy145;
- if (yych <= '9') goto yy153;
- if (yych != '}') goto yy145;
+ if (yych <= '/') goto yy147;
+ if (yych <= '9') goto yy155;
+ if (yych != '}') goto yy147;
++YYCURSOR;
-#line 307 "../src/parse/scanner_lex.re"
+#line 332 "../src/parse/scanner_lex.re"
{
if (!s_to_u32_unsafe (tok + 1, cur - 2, yylval.extop.min))
{
yylval.extop.max = UINT32_MAX;
return CLOSESIZE;
}
-#line 942 "src/parse/scanner_lex.cc"
-yy153:
+#line 959 "src/parse/scanner_lex.cc"
+yy155:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = (YYCTYPE)*YYCURSOR;
- if (yych <= '/') goto yy141;
- if (yych <= '9') goto yy153;
- if (yych != '}') goto yy141;
+ if (yych <= '/') goto yy143;
+ if (yych <= '9') goto yy155;
+ if (yych != '}') goto yy143;
++YYCURSOR;
-#line 294 "../src/parse/scanner_lex.re"
+#line 319 "../src/parse/scanner_lex.re"
{
const char * p = strchr (tok, ',');
if (!s_to_u32_unsafe (tok + 1, p, yylval.extop.min))
}
return CLOSESIZE;
}
-#line 964 "src/parse/scanner_lex.cc"
-yy157:
+#line 981 "src/parse/scanner_lex.cc"
+yy159:
++YYCURSOR;
YYCURSOR = YYCTXMARKER;
-#line 348 "../src/parse/scanner_lex.re"
+#line 373 "../src/parse/scanner_lex.re"
{
if (!FFlag) {
yylval.str = new std::string (tok, tok_len ());
return ID;
} else {
+ std::vector<uint32_t> cpoints;
for (char * p = tok; p < cur; ++p)
{
cpoints.push_back (static_cast<uint8_t> (*p));
}
yylval.regexp = cpoint_string (cpoints, bCaseInsensitive || bCaseInverted);
- return STRING;
+ return REGEXP;
}
}
-#line 982 "src/parse/scanner_lex.cc"
-yy159:
+#line 1000 "src/parse/scanner_lex.cc"
+yy161:
yych = (YYCTYPE)*++YYCURSOR;
- goto yy172;
-yy160:
+ goto yy174;
+yy162:
++YYCURSOR;
-yy161:
+yy163:
YYCURSOR = YYCTXMARKER;
-#line 343 "../src/parse/scanner_lex.re"
+#line 368 "../src/parse/scanner_lex.re"
{
yylval.str = new std::string (tok, tok_len ());
return ID;
}
-#line 995 "src/parse/scanner_lex.cc"
-yy162:
+#line 1013 "src/parse/scanner_lex.cc"
+yy164:
YYCTXMARKER = YYCURSOR + 1;
++YYCURSOR;
if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
yych = (YYCTYPE)*YYCURSOR;
-yy163:
+yy165:
if (yych <= '9') {
if (yych <= ' ') {
- if (yych == '\t') goto yy159;
- if (yych <= 0x1F) goto yy157;
- goto yy159;
+ if (yych == '\t') goto yy161;
+ if (yych <= 0x1F) goto yy159;
+ goto yy161;
} else {
- if (yych == ',') goto yy160;
- if (yych <= '/') goto yy157;
- goto yy162;
+ if (yych == ',') goto yy162;
+ if (yych <= '/') goto yy159;
+ goto yy164;
}
} else {
if (yych <= 'Z') {
- if (yych <= '<') goto yy157;
- if (yych <= '>') goto yy160;
- if (yych <= '@') goto yy157;
- goto yy162;
+ if (yych <= '<') goto yy159;
+ if (yych <= '>') goto yy162;
+ if (yych <= '@') goto yy159;
+ goto yy164;
} else {
if (yych <= '_') {
- if (yych <= '^') goto yy157;
- goto yy162;
+ if (yych <= '^') goto yy159;
+ goto yy164;
} else {
- if (yych <= '`') goto yy157;
- if (yych <= 'z') goto yy162;
- goto yy157;
+ if (yych <= '`') goto yy159;
+ if (yych <= 'z') goto yy164;
+ goto yy159;
}
}
}
-yy164:
+yy166:
YYCTXMARKER = YYCURSOR + 1;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != '2') goto yy163;
+ if (yych != '2') goto yy165;
YYCTXMARKER = YYCURSOR + 1;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'c') goto yy163;
+ if (yych != 'c') goto yy165;
YYCTXMARKER = YYCURSOR + 1;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != ':') goto yy163;
+ if (yych != ':') goto yy165;
++YYCURSOR;
-#line 328 "../src/parse/scanner_lex.re"
+#line 353 "../src/parse/scanner_lex.re"
{ goto conf; }
-#line 1042 "src/parse/scanner_lex.cc"
-yy169:
+#line 1060 "src/parse/scanner_lex.cc"
+yy171:
++YYCURSOR;
YYCURSOR = YYCTXMARKER;
-#line 330 "../src/parse/scanner_lex.re"
+#line 355 "../src/parse/scanner_lex.re"
{
yylval.str = new std::string (tok, tok_len ());
if (FFlag)
return ID;
}
}
-#line 1059 "src/parse/scanner_lex.cc"
-yy171:
+#line 1077 "src/parse/scanner_lex.cc"
+yy173:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = (YYCTYPE)*YYCURSOR;
-yy172:
+yy174:
if (yybm[0+yych] & 64) {
- goto yy171;
+ goto yy173;
}
- if (yych == ',') goto yy173;
- if (yych <= '<') goto yy169;
- if (yych >= '?') goto yy169;
-yy173:
+ if (yych == ',') goto yy175;
+ if (yych <= '<') goto yy171;
+ if (yych >= '?') goto yy171;
+yy175:
yych = (YYCTYPE)*++YYCURSOR;
- goto yy161;
-yy174:
- ++YYCURSOR;
-#line 264 "../src/parse/scanner_lex.re"
- { quote = ']'; negated_class = true; goto cpoints; }
-#line 1078 "src/parse/scanner_lex.cc"
+ goto yy163;
yy176:
++YYCURSOR;
-#line 269 "../src/parse/scanner_lex.re"
+#line 284 "../src/parse/scanner_lex.re"
+ {
+ std::vector<uint32_t> cpoints;
+ lex_cpoints (']', cpoints);
+ yylval.regexp = cpoint_class (cpoints, true);
+ return REGEXP;
+ }
+#line 1101 "src/parse/scanner_lex.cc"
+yy178:
+ ++YYCURSOR;
+#line 294 "../src/parse/scanner_lex.re"
{
return SETUP;
}
-#line 1085 "src/parse/scanner_lex.cc"
-yy178:
+#line 1108 "src/parse/scanner_lex.cc"
+yy180:
YYCTXMARKER = YYCURSOR + 1;
yych = (YYCTYPE)*++YYCURSOR;
- goto yy180;
-yy179:
+ goto yy182;
+yy181:
++YYCURSOR;
if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
yych = (YYCTYPE)*YYCURSOR;
-yy180:
+yy182:
if (yych <= '9') {
if (yych <= '\t') {
- if (yych <= 0x08) goto yy141;
- goto yy179;
+ if (yych <= 0x08) goto yy143;
+ goto yy181;
} else {
- if (yych == ' ') goto yy179;
- goto yy141;
+ if (yych == ' ') goto yy181;
+ goto yy143;
}
} else {
if (yych <= '=') {
- if (yych <= ':') goto yy184;
- if (yych <= '<') goto yy141;
- goto yy183;
+ if (yych <= ':') goto yy186;
+ if (yych <= '<') goto yy143;
+ goto yy185;
} else {
- if (yych != '{') goto yy141;
+ if (yych != '{') goto yy143;
}
}
-yy181:
+yy183:
++YYCURSOR;
YYCURSOR = YYCTXMARKER;
-#line 266 "../src/parse/scanner_lex.re"
+#line 291 "../src/parse/scanner_lex.re"
{
return NOCOND;
}
-#line 1119 "src/parse/scanner_lex.cc"
-yy183:
+#line 1142 "src/parse/scanner_lex.cc"
+yy185:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == '>') goto yy181;
- goto yy141;
-yy184:
+ if (yych == '>') goto yy183;
+ goto yy143;
+yy186:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == '=') goto yy181;
- goto yy141;
-yy185:
+ if (yych == '=') goto yy183;
+ goto yy143;
+yy187:
++YYCURSOR;
- if ((yych = (YYCTYPE)*YYCURSOR) == '>') goto yy187;
+ if ((yych = (YYCTYPE)*YYCURSOR) == '>') goto yy189;
#line 242 "../src/parse/scanner_lex.re"
{
tok += 2; /* skip ":=" */
depth = 0;
goto code;
}
-#line 1137 "src/parse/scanner_lex.cc"
-yy187:
+#line 1160 "src/parse/scanner_lex.cc"
+yy189:
++YYCURSOR;
YYCURSOR = YYCTXMARKER;
#line 238 "../src/parse/scanner_lex.re"
{
return *tok;
}
-#line 1145 "src/parse/scanner_lex.cc"
-yy189:
+#line 1168 "src/parse/scanner_lex.cc"
+yy191:
++YYCURSOR;
#line 251 "../src/parse/scanner_lex.re"
{
depth = 1;
goto comment;
}
-#line 1153 "src/parse/scanner_lex.cc"
-yy191:
+#line 1176 "src/parse/scanner_lex.cc"
+yy193:
++YYCURSOR;
#line 248 "../src/parse/scanner_lex.re"
{
goto nextLine;
}
-#line 1160 "src/parse/scanner_lex.cc"
-yy193:
+#line 1183 "src/parse/scanner_lex.cc"
+yy195:
++YYCURSOR;
#line 257 "../src/parse/scanner_lex.re"
{
tok = cur;
return 0;
}
-#line 1168 "src/parse/scanner_lex.cc"
-yy195:
+#line 1191 "src/parse/scanner_lex.cc"
+yy197:
yyaccept = 0;
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
if (yych <= 0x1F) {
if (yych != '\t') goto yy117;
} else {
- if (yych <= ' ') goto yy196;
- if (yych == '#') goto yy198;
+ if (yych <= ' ') goto yy198;
+ if (yych == '#') goto yy200;
goto yy117;
}
-yy196:
+yy198:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = (YYCTYPE)*YYCURSOR;
if (yych <= 0x1F) {
- if (yych == '\t') goto yy196;
- goto yy141;
+ if (yych == '\t') goto yy198;
+ goto yy143;
} else {
- if (yych <= ' ') goto yy196;
- if (yych != '#') goto yy141;
+ if (yych <= ' ') goto yy198;
+ if (yych != '#') goto yy143;
}
-yy198:
+yy200:
++YYCURSOR;
if ((YYLIMIT - YYCURSOR) < 5) YYFILL(5);
yych = (YYCTYPE)*YYCURSOR;
if (yych <= 0x1F) {
- if (yych == '\t') goto yy198;
- goto yy141;
+ if (yych == '\t') goto yy200;
+ goto yy143;
} else {
- if (yych <= ' ') goto yy198;
- if (yych != 'l') goto yy141;
+ if (yych <= ' ') goto yy200;
+ if (yych != 'l') goto yy143;
}
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'i') goto yy141;
+ if (yych != 'i') goto yy143;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'n') goto yy141;
+ if (yych != 'n') goto yy143;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'e') goto yy141;
+ if (yych != 'e') goto yy143;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= '0') goto yy205;
- if (yych <= '9') goto yy141;
- goto yy205;
-yy204:
+ if (yych <= '0') goto yy207;
+ if (yych <= '9') goto yy143;
+ goto yy207;
+yy206:
YYCTXMARKER = YYCURSOR + 1;
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = (YYCTYPE)*YYCURSOR;
-yy205:
+yy207:
if (yych <= 0x1F) {
- if (yych == '\t') goto yy204;
- goto yy141;
+ if (yych == '\t') goto yy206;
+ goto yy143;
} else {
- if (yych <= ' ') goto yy204;
- if (yych <= '0') goto yy141;
- if (yych >= ':') goto yy141;
+ if (yych <= ' ') goto yy206;
+ if (yych <= '0') goto yy143;
+ if (yych >= ':') goto yy143;
}
-yy206:
+yy208:
++YYCURSOR;
if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
yych = (YYCTYPE)*YYCURSOR;
if (yych <= '\r') {
if (yych <= '\t') {
- if (yych <= 0x08) goto yy141;
+ if (yych <= 0x08) goto yy143;
} else {
- if (yych <= '\n') goto yy210;
- if (yych <= '\f') goto yy141;
- goto yy212;
+ if (yych <= '\n') goto yy212;
+ if (yych <= '\f') goto yy143;
+ goto yy214;
}
} else {
if (yych <= ' ') {
- if (yych <= 0x1F) goto yy141;
+ if (yych <= 0x1F) goto yy143;
} else {
- if (yych <= '/') goto yy141;
- if (yych <= '9') goto yy206;
- goto yy141;
+ if (yych <= '/') goto yy143;
+ if (yych <= '9') goto yy208;
+ goto yy143;
}
}
-yy208:
+yy210:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = (YYCTYPE)*YYCURSOR;
if (yych <= 0x1F) {
- if (yych == '\t') goto yy208;
- goto yy141;
+ if (yych == '\t') goto yy210;
+ goto yy143;
} else {
- if (yych <= ' ') goto yy208;
- if (yych == '"') goto yy213;
- goto yy141;
+ if (yych <= ' ') goto yy210;
+ if (yych == '"') goto yy215;
+ goto yy143;
}
-yy210:
+yy212:
++YYCURSOR;
YYCURSOR = YYCTXMARKER;
-#line 371 "../src/parse/scanner_lex.re"
+#line 397 "../src/parse/scanner_lex.re"
{
set_sourceline ();
goto scan;
}
-#line 1266 "src/parse/scanner_lex.cc"
-yy212:
+#line 1289 "src/parse/scanner_lex.cc"
+yy214:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == '\n') goto yy210;
- goto yy141;
-yy213:
+ if (yych == '\n') goto yy212;
+ goto yy143;
+yy215:
++YYCURSOR;
if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3);
yych = (YYCTYPE)*YYCURSOR;
if (yybm[0+yych] & 128) {
- goto yy213;
+ goto yy215;
}
- if (yych <= '\n') goto yy141;
- if (yych <= '"') goto yy216;
+ if (yych <= '\n') goto yy143;
+ if (yych <= '"') goto yy218;
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = (YYCTYPE)*YYCURSOR;
- if (yych == '\n') goto yy141;
- goto yy213;
-yy216:
+ if (yych == '\n') goto yy143;
+ goto yy215;
+yy218:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == '\n') goto yy210;
- if (yych == '\r') goto yy212;
- goto yy141;
-yy217:
+ if (yych == '\n') goto yy212;
+ if (yych == '\r') goto yy214;
+ goto yy143;
+yy219:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = (YYCTYPE)*YYCURSOR;
-yy218:
- if (yych == '\t') goto yy217;
- if (yych == ' ') goto yy217;
+yy220:
+ if (yych == '\t') goto yy219;
+ if (yych == ' ') goto yy219;
goto yy115;
}
-#line 387 "../src/parse/scanner_lex.re"
+#line 413 "../src/parse/scanner_lex.re"
flex_name:
-#line 1304 "src/parse/scanner_lex.cc"
+#line 1327 "src/parse/scanner_lex.cc"
{
YYCTYPE yych;
if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
yych = (YYCTYPE)*YYCURSOR;
- if (yych == '\n') goto yy223;
- if (yych == '\r') goto yy225;
+ if (yych == '\n') goto yy225;
+ if (yych == '\r') goto yy227;
++YYCURSOR;
-yy222:
-#line 398 "../src/parse/scanner_lex.re"
+yy224:
+#line 424 "../src/parse/scanner_lex.re"
{
YYCURSOR = tok;
goto start;
}
-#line 1318 "src/parse/scanner_lex.cc"
-yy223:
+#line 1341 "src/parse/scanner_lex.cc"
+yy225:
++YYCURSOR;
-yy224:
-#line 392 "../src/parse/scanner_lex.re"
+yy226:
+#line 418 "../src/parse/scanner_lex.re"
{
YYCURSOR = tok;
lexer_state = LEX_NORMAL;
return FID_END;
}
-#line 1328 "src/parse/scanner_lex.cc"
-yy225:
+#line 1351 "src/parse/scanner_lex.cc"
+yy227:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != '\n') goto yy222;
+ if (yych != '\n') goto yy224;
++YYCURSOR;
yych = (YYCTYPE)*YYCURSOR;
- goto yy224;
+ goto yy226;
}
-#line 402 "../src/parse/scanner_lex.re"
+#line 428 "../src/parse/scanner_lex.re"
-cpoints:
- tok = cur;
+code:
-#line 1342 "src/parse/scanner_lex.cc"
+#line 1364 "src/parse/scanner_lex.cc"
{
YYCTYPE yych;
unsigned int yyaccept = 0;
- if ((YYLIMIT - YYCURSOR) < 10) YYFILL(10);
+ static const unsigned char yybm[] = {
+ 48, 48, 48, 48, 48, 48, 48, 48,
+ 48, 112, 0, 48, 48, 48, 48, 48,
+ 48, 48, 48, 48, 48, 48, 48, 48,
+ 48, 48, 48, 48, 48, 48, 48, 48,
+ 112, 48, 16, 48, 48, 48, 48, 32,
+ 48, 48, 48, 48, 48, 48, 48, 48,
+ 176, 176, 176, 176, 176, 176, 176, 176,
+ 176, 176, 48, 48, 48, 48, 48, 48,
+ 48, 48, 48, 48, 48, 48, 48, 48,
+ 48, 48, 48, 48, 48, 48, 48, 48,
+ 48, 48, 48, 48, 48, 48, 48, 48,
+ 48, 48, 48, 48, 0, 48, 48, 48,
+ 48, 48, 48, 48, 48, 48, 48, 48,
+ 48, 48, 48, 48, 48, 48, 48, 48,
+ 48, 48, 48, 48, 48, 48, 48, 48,
+ 48, 48, 48, 48, 48, 48, 48, 48,
+ 48, 48, 48, 48, 48, 48, 48, 48,
+ 48, 48, 48, 48, 48, 48, 48, 48,
+ 48, 48, 48, 48, 48, 48, 48, 48,
+ 48, 48, 48, 48, 48, 48, 48, 48,
+ 48, 48, 48, 48, 48, 48, 48, 48,
+ 48, 48, 48, 48, 48, 48, 48, 48,
+ 48, 48, 48, 48, 48, 48, 48, 48,
+ 48, 48, 48, 48, 48, 48, 48, 48,
+ 48, 48, 48, 48, 48, 48, 48, 48,
+ 48, 48, 48, 48, 48, 48, 48, 48,
+ 48, 48, 48, 48, 48, 48, 48, 48,
+ 48, 48, 48, 48, 48, 48, 48, 48,
+ 48, 48, 48, 48, 48, 48, 48, 48,
+ 48, 48, 48, 48, 48, 48, 48, 48,
+ 48, 48, 48, 48, 48, 48, 48, 48,
+ 48, 48, 48, 48, 48, 48, 48, 48,
+ };
+ if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3);
yych = (YYCTYPE)*YYCURSOR;
- if (yych == '\n') goto yy231;
- if (yych == '\\') goto yy233;
- ++YYCURSOR;
-#line 426 "../src/parse/scanner_lex.re"
- {
- const char c = tok[0];
- if (c == quote)
- {
- switch (quote)
- {
- case ']':
- yylval.regexp = cpoint_class (cpoints, negated_class);
- return RANGE;
- case '\'':
- yylval.regexp = cpoint_string (cpoints, bCaseInsensitive || !bCaseInverted);
- return STRING;
- case '"':
- yylval.regexp = cpoint_string (cpoints, bCaseInsensitive || bCaseInverted);
- return STRING;
- }
+ if (yych <= '&') {
+ if (yych <= '\n') {
+ if (yych <= 0x00) goto yy231;
+ if (yych <= '\t') goto yy233;
+ goto yy235;
+ } else {
+ if (yych == '"') goto yy237;
+ goto yy233;
}
- else
- {
- cpoints.push_back (static_cast<uint8_t> (c));
- goto cpoints;
+ } else {
+ if (yych <= '{') {
+ if (yych <= '\'') goto yy238;
+ if (yych <= 'z') goto yy233;
+ goto yy239;
+ } else {
+ if (yych == '}') goto yy241;
+ goto yy233;
}
}
-#line 1375 "src/parse/scanner_lex.cc"
yy231:
++YYCURSOR;
-#line 407 "../src/parse/scanner_lex.re"
- { fatal ((tok - pos) - tchar, "syntax error"); }
-#line 1380 "src/parse/scanner_lex.cc"
+#line 491 "../src/parse/scanner_lex.re"
+ {
+ if (cur == eof)
+ {
+ if (depth)
+ {
+ fatal("missing '}'");
+ }
+ return 0;
+ }
+ goto code;
+ }
+#line 1437 "src/parse/scanner_lex.cc"
yy233:
++YYCURSOR;
- if ((yych = (YYCTYPE)*YYCURSOR) <= 'b') {
- if (yych <= 'T') {
- if (yych <= '/') {
- if (yych != '\n') goto yy235;
- } else {
- if (yych <= '3') goto yy237;
- if (yych <= '7') goto yy239;
- goto yy235;
- }
+yy234:
+#line 505 "../src/parse/scanner_lex.re"
+ {
+ goto code;
+ }
+#line 1445 "src/parse/scanner_lex.cc"
+yy235:
+ YYCTXMARKER = YYCURSOR + 1;
+ yyaccept = 0;
+ yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
+ if (yych <= '\r') {
+ if (yych <= '\t') {
+ if (yych >= '\t') goto yy252;
} else {
- if (yych <= 'X') {
- if (yych <= 'U') goto yy240;
- if (yych <= 'W') goto yy235;
- goto yy242;
- } else {
- if (yych == '\\') goto yy243;
- if (yych <= '`') goto yy235;
- goto yy243;
- }
+ if (yych <= '\n') goto yy254;
+ if (yych >= '\r') goto yy254;
}
} else {
- if (yych <= 'r') {
- if (yych <= 'm') {
- if (yych == 'f') goto yy243;
- goto yy235;
- } else {
- if (yych <= 'n') goto yy243;
- if (yych <= 'q') goto yy235;
- goto yy243;
- }
+ if (yych <= ' ') {
+ if (yych >= ' ') goto yy252;
} else {
- if (yych <= 'u') {
- if (yych <= 's') goto yy235;
- if (yych <= 't') goto yy243;
- goto yy242;
- } else {
- if (yych <= 'v') goto yy243;
- if (yych == 'x') goto yy245;
- goto yy235;
- }
+ if (yych == '#') goto yy255;
}
}
-#line 410 "../src/parse/scanner_lex.re"
- { fatal ((tok - pos) - tchar, "syntax error in escape sequence"); }
-#line 1427 "src/parse/scanner_lex.cc"
-yy235:
- ++YYCURSOR;
-#line 416 "../src/parse/scanner_lex.re"
+yy236:
+#line 472 "../src/parse/scanner_lex.re"
{
- const char c = tok[1];
- if (c != quote)
- {
- warn.useless_escape (tline, tok - pos, c);
- }
- cpoints.push_back (static_cast<uint8_t> (c));
- goto cpoints;
- }
-#line 1440 "src/parse/scanner_lex.cc"
+ if (depth == 0)
+ {
+ tok += strspn(tok, " \t\r\n");
+ while (cur > tok && strchr(" \t\r\n", cur[-1]))
+ {
+ --cur;
+ }
+ yylval.code = new Code (tok, tok_len (), get_fname (), tline);
+ return CODE;
+ }
+ else if (cur == eof)
+ {
+ fatal("missing '}'");
+ }
+ pos = cur;
+ cline++;
+ goto code;
+ }
+#line 1485 "src/parse/scanner_lex.cc"
yy237:
- yyaccept = 0;
- yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych <= '/') goto yy238;
- if (yych <= '7') goto yy260;
-yy238:
-#line 409 "../src/parse/scanner_lex.re"
- { fatal ((tok - pos) - tchar, "syntax error in octal escape sequence"); }
-#line 1449 "src/parse/scanner_lex.cc"
-yy239:
- yych = (YYCTYPE)*++YYCURSOR;
- goto yy238;
-yy240:
yyaccept = 1;
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych <= '@') {
- if (yych <= '/') goto yy241;
- if (yych <= '9') goto yy253;
- } else {
- if (yych <= 'F') goto yy253;
- if (yych <= '`') goto yy241;
- if (yych <= 'f') goto yy253;
- }
-yy241:
-#line 408 "../src/parse/scanner_lex.re"
- { fatal ((tok - pos) - tchar, "syntax error in hexadecimal escape sequence"); }
-#line 1467 "src/parse/scanner_lex.cc"
-yy242:
+ if (yych == '\n') goto yy234;
+ goto yy250;
+yy238:
yyaccept = 1;
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych <= '@') {
- if (yych <= '/') goto yy241;
- if (yych <= '9') goto yy250;
- goto yy241;
- } else {
- if (yych <= 'F') goto yy250;
- if (yych <= '`') goto yy241;
- if (yych <= 'f') goto yy250;
- goto yy241;
- }
-yy243:
- ++YYCURSOR;
-#line 414 "../src/parse/scanner_lex.re"
- { cpoints.push_back (unesc_simple (tok)); goto cpoints; }
-#line 1485 "src/parse/scanner_lex.cc"
-yy245:
- yyaccept = 1;
- yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych <= '@') {
- if (yych <= '/') goto yy241;
- if (yych >= ':') goto yy241;
- } else {
- if (yych <= 'F') goto yy246;
- if (yych <= '`') goto yy241;
- if (yych >= 'g') goto yy241;
- }
-yy246:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= '@') {
- if (yych <= '/') goto yy247;
- if (yych <= '9') goto yy248;
- } else {
- if (yych <= 'F') goto yy248;
- if (yych <= '`') goto yy247;
- if (yych <= 'f') goto yy248;
- }
-yy247:
- YYCURSOR = YYMARKER;
- if (yyaccept == 0) {
- goto yy238;
- } else {
- goto yy241;
- }
-yy248:
- ++YYCURSOR;
-#line 412 "../src/parse/scanner_lex.re"
- { cpoints.push_back (unesc_hex (tok, cur)); goto cpoints; }
-#line 1518 "src/parse/scanner_lex.cc"
-yy250:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= '@') {
- if (yych <= '/') goto yy247;
- if (yych >= ':') goto yy247;
- } else {
- if (yych <= 'F') goto yy251;
- if (yych <= '`') goto yy247;
- if (yych >= 'g') goto yy247;
- }
-yy251:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= '@') {
- if (yych <= '/') goto yy247;
- if (yych >= ':') goto yy247;
- } else {
- if (yych <= 'F') goto yy252;
- if (yych <= '`') goto yy247;
- if (yych >= 'g') goto yy247;
- }
-yy252:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= '@') {
- if (yych <= '/') goto yy247;
- if (yych <= '9') goto yy248;
- goto yy247;
- } else {
- if (yych <= 'F') goto yy248;
- if (yych <= '`') goto yy247;
- if (yych <= 'f') goto yy248;
- goto yy247;
- }
-yy253:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= '@') {
- if (yych <= '/') goto yy247;
- if (yych >= ':') goto yy247;
- } else {
- if (yych <= 'F') goto yy254;
- if (yych <= '`') goto yy247;
- if (yych >= 'g') goto yy247;
- }
-yy254:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= '@') {
- if (yych <= '/') goto yy247;
- if (yych >= ':') goto yy247;
- } else {
- if (yych <= 'F') goto yy255;
- if (yych <= '`') goto yy247;
- if (yych >= 'g') goto yy247;
- }
-yy255:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= '@') {
- if (yych <= '/') goto yy247;
- if (yych >= ':') goto yy247;
- } else {
- if (yych <= 'F') goto yy256;
- if (yych <= '`') goto yy247;
- if (yych >= 'g') goto yy247;
- }
-yy256:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= '@') {
- if (yych <= '/') goto yy247;
- if (yych >= ':') goto yy247;
- } else {
- if (yych <= 'F') goto yy257;
- if (yych <= '`') goto yy247;
- if (yych >= 'g') goto yy247;
- }
-yy257:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= '@') {
- if (yych <= '/') goto yy247;
- if (yych >= ':') goto yy247;
- } else {
- if (yych <= 'F') goto yy258;
- if (yych <= '`') goto yy247;
- if (yych >= 'g') goto yy247;
- }
-yy258:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= '@') {
- if (yych <= '/') goto yy247;
- if (yych >= ':') goto yy247;
- } else {
- if (yych <= 'F') goto yy259;
- if (yych <= '`') goto yy247;
- if (yych >= 'g') goto yy247;
- }
-yy259:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= '@') {
- if (yych <= '/') goto yy247;
- if (yych <= '9') goto yy248;
- goto yy247;
- } else {
- if (yych <= 'F') goto yy248;
- if (yych <= '`') goto yy247;
- if (yych <= 'f') goto yy248;
- goto yy247;
- }
-yy260:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= '/') goto yy247;
- if (yych >= '8') goto yy247;
- ++YYCURSOR;
-#line 413 "../src/parse/scanner_lex.re"
- { cpoints.push_back (unesc_oct (tok, cur)); goto cpoints; }
-#line 1630 "src/parse/scanner_lex.cc"
-}
-#line 449 "../src/parse/scanner_lex.re"
-
-
-code:
-
-#line 1637 "src/parse/scanner_lex.cc"
-{
- YYCTYPE yych;
- unsigned int yyaccept = 0;
- static const unsigned char yybm[] = {
- 48, 48, 48, 48, 48, 48, 48, 48,
- 48, 112, 0, 48, 48, 48, 48, 48,
- 48, 48, 48, 48, 48, 48, 48, 48,
- 48, 48, 48, 48, 48, 48, 48, 48,
- 112, 48, 16, 48, 48, 48, 48, 32,
- 48, 48, 48, 48, 48, 48, 48, 48,
- 176, 176, 176, 176, 176, 176, 176, 176,
- 176, 176, 48, 48, 48, 48, 48, 48,
- 48, 48, 48, 48, 48, 48, 48, 48,
- 48, 48, 48, 48, 48, 48, 48, 48,
- 48, 48, 48, 48, 48, 48, 48, 48,
- 48, 48, 48, 48, 0, 48, 48, 48,
- 48, 48, 48, 48, 48, 48, 48, 48,
- 48, 48, 48, 48, 48, 48, 48, 48,
- 48, 48, 48, 48, 48, 48, 48, 48,
- 48, 48, 48, 48, 48, 48, 48, 48,
- 48, 48, 48, 48, 48, 48, 48, 48,
- 48, 48, 48, 48, 48, 48, 48, 48,
- 48, 48, 48, 48, 48, 48, 48, 48,
- 48, 48, 48, 48, 48, 48, 48, 48,
- 48, 48, 48, 48, 48, 48, 48, 48,
- 48, 48, 48, 48, 48, 48, 48, 48,
- 48, 48, 48, 48, 48, 48, 48, 48,
- 48, 48, 48, 48, 48, 48, 48, 48,
- 48, 48, 48, 48, 48, 48, 48, 48,
- 48, 48, 48, 48, 48, 48, 48, 48,
- 48, 48, 48, 48, 48, 48, 48, 48,
- 48, 48, 48, 48, 48, 48, 48, 48,
- 48, 48, 48, 48, 48, 48, 48, 48,
- 48, 48, 48, 48, 48, 48, 48, 48,
- 48, 48, 48, 48, 48, 48, 48, 48,
- 48, 48, 48, 48, 48, 48, 48, 48,
- };
- if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3);
- yych = (YYCTYPE)*YYCURSOR;
- if (yych <= '&') {
- if (yych <= '\n') {
- if (yych <= 0x00) goto yy265;
- if (yych <= '\t') goto yy267;
- goto yy269;
- } else {
- if (yych == '"') goto yy271;
- goto yy267;
- }
- } else {
- if (yych <= '{') {
- if (yych <= '\'') goto yy272;
- if (yych <= 'z') goto yy267;
- goto yy273;
- } else {
- if (yych == '}') goto yy275;
- goto yy267;
- }
- }
-yy265:
- ++YYCURSOR;
-#line 512 "../src/parse/scanner_lex.re"
- {
- if (cur == eof)
- {
- if (depth)
- {
- fatal("missing '}'");
- }
- return 0;
- }
- goto code;
- }
-#line 1710 "src/parse/scanner_lex.cc"
-yy267:
- ++YYCURSOR;
-yy268:
-#line 526 "../src/parse/scanner_lex.re"
- {
- goto code;
- }
-#line 1718 "src/parse/scanner_lex.cc"
-yy269:
- YYCTXMARKER = YYCURSOR + 1;
- yyaccept = 0;
- yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych <= '\r') {
- if (yych <= '\t') {
- if (yych >= '\t') goto yy286;
- } else {
- if (yych <= '\n') goto yy288;
- if (yych >= '\r') goto yy288;
- }
- } else {
- if (yych <= ' ') {
- if (yych >= ' ') goto yy286;
- } else {
- if (yych == '#') goto yy289;
- }
- }
-yy270:
-#line 493 "../src/parse/scanner_lex.re"
- {
- if (depth == 0)
- {
- tok += strspn(tok, " \t\r\n");
- while (cur > tok && strchr(" \t\r\n", cur[-1]))
- {
- --cur;
- }
- yylval.code = new Code (tok, tok_len (), get_fname (), tline);
- return CODE;
- }
- else if (cur == eof)
- {
- fatal("missing '}'");
- }
- pos = cur;
- cline++;
- goto code;
- }
-#line 1758 "src/parse/scanner_lex.cc"
-yy271:
- yyaccept = 1;
- yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych == '\n') goto yy268;
- goto yy284;
-yy272:
- yyaccept = 1;
- yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych == '\n') goto yy268;
- goto yy278;
-yy273:
+ if (yych == '\n') goto yy234;
+ goto yy244;
+yy239:
++YYCURSOR;
-#line 465 "../src/parse/scanner_lex.re"
+#line 444 "../src/parse/scanner_lex.re"
{
if (depth == 0)
{
}
goto code;
}
-#line 1783 "src/parse/scanner_lex.cc"
-yy275:
+#line 1510 "src/parse/scanner_lex.cc"
+yy241:
++YYCURSOR;
-#line 453 "../src/parse/scanner_lex.re"
+#line 432 "../src/parse/scanner_lex.re"
{
if (depth == 0)
{
}
goto code;
}
-#line 1799 "src/parse/scanner_lex.cc"
-yy277:
+#line 1526 "src/parse/scanner_lex.cc"
+yy243:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = (YYCTYPE)*YYCURSOR;
-yy278:
+yy244:
if (yybm[0+yych] & 16) {
- goto yy277;
+ goto yy243;
}
- if (yych <= '\n') goto yy279;
- if (yych <= '\'') goto yy281;
- goto yy280;
-yy279:
+ if (yych <= '\n') goto yy245;
+ if (yych <= '\'') goto yy247;
+ goto yy246;
+yy245:
YYCURSOR = YYMARKER;
if (yyaccept <= 1) {
if (yyaccept == 0) {
- goto yy270;
+ goto yy236;
} else {
- goto yy268;
+ goto yy234;
}
} else {
- goto yy287;
+ goto yy253;
}
-yy280:
+yy246:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = (YYCTYPE)*YYCURSOR;
- if (yych == '\n') goto yy279;
- goto yy277;
-yy281:
+ if (yych == '\n') goto yy245;
+ goto yy243;
+yy247:
++YYCURSOR;
-#line 523 "../src/parse/scanner_lex.re"
+#line 502 "../src/parse/scanner_lex.re"
{
goto code;
}
-#line 1834 "src/parse/scanner_lex.cc"
-yy283:
+#line 1561 "src/parse/scanner_lex.cc"
+yy249:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = (YYCTYPE)*YYCURSOR;
-yy284:
+yy250:
if (yybm[0+yych] & 32) {
- goto yy283;
+ goto yy249;
}
- if (yych <= '\n') goto yy279;
- if (yych <= '"') goto yy281;
+ if (yych <= '\n') goto yy245;
+ if (yych <= '"') goto yy247;
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = (YYCTYPE)*YYCURSOR;
- if (yych == '\n') goto yy279;
- goto yy283;
-yy286:
+ if (yych == '\n') goto yy245;
+ goto yy249;
+yy252:
yyaccept = 2;
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
if (yych <= 0x1F) {
- if (yych == '\t') goto yy308;
+ if (yych == '\t') goto yy274;
} else {
- if (yych <= ' ') goto yy308;
- if (yych == '#') goto yy289;
+ if (yych <= ' ') goto yy274;
+ if (yych == '#') goto yy255;
}
-yy287:
+yy253:
YYCURSOR = YYCTXMARKER;
-#line 480 "../src/parse/scanner_lex.re"
+#line 459 "../src/parse/scanner_lex.re"
{
if (depth == 0)
{
cline++;
goto code;
}
-#line 1875 "src/parse/scanner_lex.cc"
-yy288:
+#line 1602 "src/parse/scanner_lex.cc"
+yy254:
yych = (YYCTYPE)*++YYCURSOR;
- goto yy287;
-yy289:
+ goto yy253;
+yy255:
++YYCURSOR;
if ((YYLIMIT - YYCURSOR) < 5) YYFILL(5);
yych = (YYCTYPE)*YYCURSOR;
if (yybm[0+yych] & 64) {
- goto yy289;
+ goto yy255;
}
- if (yych != 'l') goto yy279;
+ if (yych != 'l') goto yy245;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'i') goto yy279;
+ if (yych != 'i') goto yy245;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'n') goto yy279;
+ if (yych != 'n') goto yy245;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'e') goto yy279;
+ if (yych != 'e') goto yy245;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= '0') goto yy296;
- if (yych <= '9') goto yy279;
- goto yy296;
-yy295:
+ if (yych <= '0') goto yy262;
+ if (yych <= '9') goto yy245;
+ goto yy262;
+yy261:
YYCTXMARKER = YYCURSOR + 1;
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = (YYCTYPE)*YYCURSOR;
-yy296:
+yy262:
if (yych <= 0x1F) {
- if (yych == '\t') goto yy295;
- goto yy279;
+ if (yych == '\t') goto yy261;
+ goto yy245;
} else {
- if (yych <= ' ') goto yy295;
- if (yych <= '0') goto yy279;
- if (yych >= ':') goto yy279;
+ if (yych <= ' ') goto yy261;
+ if (yych <= '0') goto yy245;
+ if (yych >= ':') goto yy245;
}
-yy297:
+yy263:
++YYCURSOR;
if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
yych = (YYCTYPE)*YYCURSOR;
if (yybm[0+yych] & 128) {
- goto yy297;
+ goto yy263;
}
if (yych <= '\f') {
- if (yych <= 0x08) goto yy279;
- if (yych <= '\t') goto yy299;
- if (yych <= '\n') goto yy301;
- goto yy279;
+ if (yych <= 0x08) goto yy245;
+ if (yych <= '\t') goto yy265;
+ if (yych <= '\n') goto yy267;
+ goto yy245;
} else {
- if (yych <= '\r') goto yy303;
- if (yych != ' ') goto yy279;
+ if (yych <= '\r') goto yy269;
+ if (yych != ' ') goto yy245;
}
-yy299:
+yy265:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = (YYCTYPE)*YYCURSOR;
if (yych <= 0x1F) {
- if (yych == '\t') goto yy299;
- goto yy279;
+ if (yych == '\t') goto yy265;
+ goto yy245;
} else {
- if (yych <= ' ') goto yy299;
- if (yych == '"') goto yy304;
- goto yy279;
+ if (yych <= ' ') goto yy265;
+ if (yych == '"') goto yy270;
+ goto yy245;
}
-yy301:
+yy267:
++YYCURSOR;
YYCURSOR = YYCTXMARKER;
-#line 476 "../src/parse/scanner_lex.re"
+#line 455 "../src/parse/scanner_lex.re"
{
set_sourceline ();
goto code;
}
-#line 1947 "src/parse/scanner_lex.cc"
-yy303:
+#line 1674 "src/parse/scanner_lex.cc"
+yy269:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == '\n') goto yy301;
- goto yy279;
-yy304:
+ if (yych == '\n') goto yy267;
+ goto yy245;
+yy270:
++YYCURSOR;
if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3);
yych = (YYCTYPE)*YYCURSOR;
if (yych <= '!') {
- if (yych == '\n') goto yy279;
- goto yy304;
+ if (yych == '\n') goto yy245;
+ goto yy270;
} else {
- if (yych <= '"') goto yy307;
- if (yych != '\\') goto yy304;
+ if (yych <= '"') goto yy273;
+ if (yych != '\\') goto yy270;
}
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = (YYCTYPE)*YYCURSOR;
- if (yych == '\n') goto yy279;
- goto yy304;
-yy307:
+ if (yych == '\n') goto yy245;
+ goto yy270;
+yy273:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == '\n') goto yy301;
- if (yych == '\r') goto yy303;
- goto yy279;
-yy308:
+ if (yych == '\n') goto yy267;
+ if (yych == '\r') goto yy269;
+ goto yy245;
+yy274:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = (YYCTYPE)*YYCURSOR;
if (yych <= 0x1F) {
- if (yych == '\t') goto yy308;
- goto yy279;
+ if (yych == '\t') goto yy274;
+ goto yy245;
} else {
- if (yych <= ' ') goto yy308;
- if (yych == '#') goto yy289;
- goto yy279;
+ if (yych <= ' ') goto yy274;
+ if (yych == '#') goto yy255;
+ goto yy245;
}
}
-#line 529 "../src/parse/scanner_lex.re"
+#line 508 "../src/parse/scanner_lex.re"
comment:
-#line 1991 "src/parse/scanner_lex.cc"
+#line 1718 "src/parse/scanner_lex.cc"
{
YYCTYPE yych;
static const unsigned char yybm[] = {
if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
yych = (YYCTYPE)*YYCURSOR;
if (yych <= ')') {
- if (yych == '\n') goto yy314;
+ if (yych == '\n') goto yy280;
} else {
- if (yych <= '*') goto yy316;
- if (yych == '/') goto yy317;
+ if (yych <= '*') goto yy282;
+ if (yych == '/') goto yy283;
}
++YYCURSOR;
-yy313:
-#line 561 "../src/parse/scanner_lex.re"
+yy279:
+#line 540 "../src/parse/scanner_lex.re"
{
if (cur == eof)
{
}
goto comment;
}
-#line 2046 "src/parse/scanner_lex.cc"
-yy314:
+#line 1773 "src/parse/scanner_lex.cc"
+yy280:
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
if (yybm[0+yych] & 32) {
- goto yy322;
+ goto yy288;
}
- if (yych == '#') goto yy325;
-yy315:
-#line 552 "../src/parse/scanner_lex.re"
+ if (yych == '#') goto yy291;
+yy281:
+#line 531 "../src/parse/scanner_lex.re"
{
if (cur == eof)
{
cline++;
goto comment;
}
-#line 2064 "src/parse/scanner_lex.cc"
-yy316:
+#line 1791 "src/parse/scanner_lex.cc"
+yy282:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == '/') goto yy320;
- goto yy313;
-yy317:
+ if (yych == '/') goto yy286;
+ goto yy279;
+yy283:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != '*') goto yy313;
+ if (yych != '*') goto yy279;
++YYCURSOR;
-#line 543 "../src/parse/scanner_lex.re"
+#line 522 "../src/parse/scanner_lex.re"
{
++depth;
fatal("ambiguous /* found");
goto comment;
}
-#line 2079 "src/parse/scanner_lex.cc"
-yy320:
+#line 1806 "src/parse/scanner_lex.cc"
+yy286:
++YYCURSOR;
-#line 533 "../src/parse/scanner_lex.re"
+#line 512 "../src/parse/scanner_lex.re"
{
if (--depth == 0)
{
goto comment;
}
}
-#line 2093 "src/parse/scanner_lex.cc"
-yy322:
+#line 1820 "src/parse/scanner_lex.cc"
+yy288:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = (YYCTYPE)*YYCURSOR;
if (yybm[0+yych] & 32) {
- goto yy322;
+ goto yy288;
}
- if (yych == '#') goto yy325;
-yy324:
+ if (yych == '#') goto yy291;
+yy290:
YYCURSOR = YYMARKER;
- goto yy315;
-yy325:
+ goto yy281;
+yy291:
++YYCURSOR;
if ((YYLIMIT - YYCURSOR) < 5) YYFILL(5);
yych = (YYCTYPE)*YYCURSOR;
if (yych <= 0x1F) {
- if (yych == '\t') goto yy325;
- goto yy324;
+ if (yych == '\t') goto yy291;
+ goto yy290;
} else {
- if (yych <= ' ') goto yy325;
- if (yych != 'l') goto yy324;
+ if (yych <= ' ') goto yy291;
+ if (yych != 'l') goto yy290;
}
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'i') goto yy324;
+ if (yych != 'i') goto yy290;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'n') goto yy324;
+ if (yych != 'n') goto yy290;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'e') goto yy324;
+ if (yych != 'e') goto yy290;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= '0') goto yy332;
- if (yych <= '9') goto yy324;
- goto yy332;
-yy331:
+ if (yych <= '0') goto yy298;
+ if (yych <= '9') goto yy290;
+ goto yy298;
+yy297:
YYCTXMARKER = YYCURSOR + 1;
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = (YYCTYPE)*YYCURSOR;
-yy332:
+yy298:
if (yych <= 0x1F) {
- if (yych == '\t') goto yy331;
- goto yy324;
+ if (yych == '\t') goto yy297;
+ goto yy290;
} else {
- if (yych <= ' ') goto yy331;
- if (yych <= '0') goto yy324;
- if (yych >= ':') goto yy324;
+ if (yych <= ' ') goto yy297;
+ if (yych <= '0') goto yy290;
+ if (yych >= ':') goto yy290;
}
-yy333:
+yy299:
++YYCURSOR;
if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
yych = (YYCTYPE)*YYCURSOR;
if (yybm[0+yych] & 64) {
- goto yy333;
+ goto yy299;
}
if (yych <= '\f') {
- if (yych <= 0x08) goto yy324;
- if (yych <= '\t') goto yy335;
- if (yych <= '\n') goto yy337;
- goto yy324;
+ if (yych <= 0x08) goto yy290;
+ if (yych <= '\t') goto yy301;
+ if (yych <= '\n') goto yy303;
+ goto yy290;
} else {
- if (yych <= '\r') goto yy339;
- if (yych != ' ') goto yy324;
+ if (yych <= '\r') goto yy305;
+ if (yych != ' ') goto yy290;
}
-yy335:
+yy301:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = (YYCTYPE)*YYCURSOR;
if (yych <= 0x1F) {
- if (yych == '\t') goto yy335;
- goto yy324;
+ if (yych == '\t') goto yy301;
+ goto yy290;
} else {
- if (yych <= ' ') goto yy335;
- if (yych == '"') goto yy340;
- goto yy324;
+ if (yych <= ' ') goto yy301;
+ if (yych == '"') goto yy306;
+ goto yy290;
}
-yy337:
+yy303:
++YYCURSOR;
YYCURSOR = YYCTXMARKER;
-#line 548 "../src/parse/scanner_lex.re"
+#line 527 "../src/parse/scanner_lex.re"
{
set_sourceline ();
goto comment;
}
-#line 2176 "src/parse/scanner_lex.cc"
-yy339:
+#line 1903 "src/parse/scanner_lex.cc"
+yy305:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == '\n') goto yy337;
- goto yy324;
-yy340:
+ if (yych == '\n') goto yy303;
+ goto yy290;
+yy306:
++YYCURSOR;
if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3);
yych = (YYCTYPE)*YYCURSOR;
if (yybm[0+yych] & 128) {
- goto yy340;
+ goto yy306;
}
- if (yych <= '\n') goto yy324;
- if (yych <= '"') goto yy343;
+ if (yych <= '\n') goto yy290;
+ if (yych <= '"') goto yy309;
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = (YYCTYPE)*YYCURSOR;
- if (yych == '\n') goto yy324;
- goto yy340;
-yy343:
+ if (yych == '\n') goto yy290;
+ goto yy306;
+yy309:
++YYCURSOR;
- if ((yych = (YYCTYPE)*YYCURSOR) == '\n') goto yy337;
- if (yych == '\r') goto yy339;
- goto yy324;
+ if ((yych = (YYCTYPE)*YYCURSOR) == '\n') goto yy303;
+ if (yych == '\r') goto yy305;
+ goto yy290;
}
-#line 568 "../src/parse/scanner_lex.re"
+#line 547 "../src/parse/scanner_lex.re"
nextLine:
-#line 2206 "src/parse/scanner_lex.cc"
+#line 1933 "src/parse/scanner_lex.cc"
{
YYCTYPE yych;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = (YYCTYPE)*YYCURSOR;
- if (yych == '\n') goto yy348;
+ if (yych == '\n') goto yy314;
++YYCURSOR;
-#line 579 "../src/parse/scanner_lex.re"
+#line 558 "../src/parse/scanner_lex.re"
{ if(cur == eof) {
return 0;
}
goto nextLine;
}
-#line 2219 "src/parse/scanner_lex.cc"
-yy348:
+#line 1946 "src/parse/scanner_lex.cc"
+yy314:
++YYCURSOR;
-#line 572 "../src/parse/scanner_lex.re"
+#line 551 "../src/parse/scanner_lex.re"
{ if(cur == eof) {
return 0;
}
cline++;
goto scan;
}
-#line 2230 "src/parse/scanner_lex.cc"
+#line 1957 "src/parse/scanner_lex.cc"
}
-#line 584 "../src/parse/scanner_lex.re"
+#line 563 "../src/parse/scanner_lex.re"
conf:
tok = cur;
lexer_state = LEX_CONF;
-#line 2239 "src/parse/scanner_lex.cc"
+#line 1966 "src/parse/scanner_lex.cc"
{
YYCTYPE yych;
unsigned int yyaccept = 0;
if ((YYLIMIT - YYCURSOR) < 27) YYFILL(27);
yych = (YYCTYPE)*YYCURSOR;
switch (yych) {
- case 'c': goto yy354;
- case 'd': goto yy355;
- case 'f': goto yy356;
- case 'i': goto yy357;
- case 'l': goto yy358;
- case 's': goto yy359;
- case 'v': goto yy360;
- case 'y': goto yy361;
- default: goto yy352;
- }
-yy352:
- ++YYCURSOR;
-yy353:
-#line 590 "../src/parse/scanner_lex.re"
+ case 'c': goto yy320;
+ case 'd': goto yy321;
+ case 'f': goto yy322;
+ case 'i': goto yy323;
+ case 'l': goto yy324;
+ case 's': goto yy325;
+ case 'v': goto yy326;
+ case 'y': goto yy327;
+ default: goto yy318;
+ }
+yy318:
+ ++YYCURSOR;
+yy319:
+#line 569 "../src/parse/scanner_lex.re"
{ fatal ((tok - pos) - tchar, "unrecognized configuration"); }
-#line 2261 "src/parse/scanner_lex.cc"
-yy354:
+#line 1988 "src/parse/scanner_lex.cc"
+yy320:
yyaccept = 0;
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych == 'g') goto yy686;
- if (yych == 'o') goto yy687;
- goto yy353;
-yy355:
+ if (yych == 'g') goto yy652;
+ if (yych == 'o') goto yy653;
+ goto yy319;
+yy321:
yyaccept = 0;
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych == 'e') goto yy531;
- goto yy353;
-yy356:
+ if (yych == 'e') goto yy497;
+ goto yy319;
+yy322:
yyaccept = 0;
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych == 'l') goto yy524;
- goto yy353;
-yy357:
+ if (yych == 'l') goto yy490;
+ goto yy319;
+yy323:
yyaccept = 0;
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych == 'n') goto yy507;
- goto yy353;
-yy358:
+ if (yych == 'n') goto yy473;
+ goto yy319;
+yy324:
yyaccept = 0;
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych == 'a') goto yy480;
- goto yy353;
-yy359:
+ if (yych == 'a') goto yy446;
+ goto yy319;
+yy325:
yyaccept = 0;
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych == 't') goto yy451;
- goto yy353;
-yy360:
+ if (yych == 't') goto yy417;
+ goto yy319;
+yy326:
yyaccept = 0;
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych == 'a') goto yy418;
- goto yy353;
-yy361:
+ if (yych == 'a') goto yy384;
+ goto yy319;
+yy327:
yyaccept = 0;
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych != 'y') goto yy353;
+ if (yych != 'y') goto yy319;
yych = (YYCTYPE)*++YYCURSOR;
if (yych <= 'c') {
- if (yych <= 'a') goto yy363;
- if (yych <= 'b') goto yy364;
- goto yy365;
+ if (yych <= 'a') goto yy329;
+ if (yych <= 'b') goto yy330;
+ goto yy331;
} else {
- if (yych == 'f') goto yy366;
+ if (yych == 'f') goto yy332;
}
-yy363:
+yy329:
YYCURSOR = YYMARKER;
if (yyaccept <= 1) {
if (yyaccept == 0) {
- goto yy353;
+ goto yy319;
} else {
- goto yy555;
+ goto yy521;
}
} else {
if (yyaccept == 2) {
- goto yy701;
+ goto yy667;
} else {
- goto yy711;
+ goto yy677;
}
}
-yy364:
+yy330:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'm') goto yy412;
- goto yy363;
-yy365:
+ if (yych == 'm') goto yy378;
+ goto yy329;
+yy331:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'h') goto yy394;
- goto yy363;
-yy366:
+ if (yych == 'h') goto yy360;
+ goto yy329;
+yy332:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'i') goto yy363;
+ if (yych != 'i') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'l') goto yy363;
+ if (yych != 'l') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'l') goto yy363;
+ if (yych != 'l') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != ':') goto yy363;
+ if (yych != ':') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
if (yych <= 'd') {
- if (yych == 'c') goto yy373;
- goto yy363;
+ if (yych == 'c') goto yy339;
+ goto yy329;
} else {
- if (yych <= 'e') goto yy372;
- if (yych != 'p') goto yy363;
+ if (yych <= 'e') goto yy338;
+ if (yych != 'p') goto yy329;
}
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'a') goto yy385;
- goto yy363;
-yy372:
+ if (yych == 'a') goto yy351;
+ goto yy329;
+yy338:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'n') goto yy379;
- goto yy363;
-yy373:
+ if (yych == 'n') goto yy345;
+ goto yy329;
+yy339:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'h') goto yy363;
+ if (yych != 'h') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'e') goto yy363;
+ if (yych != 'e') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'c') goto yy363;
+ if (yych != 'c') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'k') goto yy363;
+ if (yych != 'k') goto yy329;
++YYCURSOR;
-#line 678 "../src/parse/scanner_lex.re"
+#line 657 "../src/parse/scanner_lex.re"
{ return CONF_YYFILL_CHECK; }
-#line 2369 "src/parse/scanner_lex.cc"
-yy379:
+#line 2096 "src/parse/scanner_lex.cc"
+yy345:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'a') goto yy363;
+ if (yych != 'a') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'b') goto yy363;
+ if (yych != 'b') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'l') goto yy363;
+ if (yych != 'l') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'e') goto yy363;
+ if (yych != 'e') goto yy329;
++YYCURSOR;
-#line 679 "../src/parse/scanner_lex.re"
+#line 658 "../src/parse/scanner_lex.re"
{ return CONF_YYFILL_ENABLE; }
-#line 2382 "src/parse/scanner_lex.cc"
-yy385:
+#line 2109 "src/parse/scanner_lex.cc"
+yy351:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'r') goto yy363;
+ if (yych != 'r') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'a') goto yy363;
+ if (yych != 'a') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'm') goto yy363;
+ if (yych != 'm') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'e') goto yy363;
+ if (yych != 'e') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 't') goto yy363;
+ if (yych != 't') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'e') goto yy363;
+ if (yych != 'e') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'r') goto yy363;
+ if (yych != 'r') goto yy329;
++YYCURSOR;
-#line 680 "../src/parse/scanner_lex.re"
+#line 659 "../src/parse/scanner_lex.re"
{ return CONF_YYFILL_PARAMETER; }
-#line 2401 "src/parse/scanner_lex.cc"
-yy394:
+#line 2128 "src/parse/scanner_lex.cc"
+yy360:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != ':') goto yy363;
+ if (yych != ':') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'c') goto yy397;
- if (yych != 'e') goto yy363;
+ if (yych == 'c') goto yy363;
+ if (yych != 'e') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'm') goto yy408;
- goto yy363;
-yy397:
+ if (yych == 'm') goto yy374;
+ goto yy329;
+yy363:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'o') goto yy363;
+ if (yych != 'o') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'n') goto yy363;
+ if (yych != 'n') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'v') goto yy363;
+ if (yych != 'v') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'e') goto yy363;
+ if (yych != 'e') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'r') goto yy363;
+ if (yych != 'r') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 's') goto yy363;
+ if (yych != 's') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'i') goto yy363;
+ if (yych != 'i') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'o') goto yy363;
+ if (yych != 'o') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'n') goto yy363;
+ if (yych != 'n') goto yy329;
++YYCURSOR;
-#line 676 "../src/parse/scanner_lex.re"
+#line 655 "../src/parse/scanner_lex.re"
{ return CONF_YYCH_CONVERSION; }
-#line 2433 "src/parse/scanner_lex.cc"
-yy408:
+#line 2160 "src/parse/scanner_lex.cc"
+yy374:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'i') goto yy363;
+ if (yych != 'i') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 't') goto yy363;
+ if (yych != 't') goto yy329;
++YYCURSOR;
-#line 677 "../src/parse/scanner_lex.re"
+#line 656 "../src/parse/scanner_lex.re"
{ return CONF_YYCH_EMIT; }
-#line 2442 "src/parse/scanner_lex.cc"
-yy412:
+#line 2169 "src/parse/scanner_lex.cc"
+yy378:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != ':') goto yy363;
+ if (yych != ':') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'h') goto yy363;
+ if (yych != 'h') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'e') goto yy363;
+ if (yych != 'e') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'x') goto yy363;
+ if (yych != 'x') goto yy329;
++YYCURSOR;
-#line 675 "../src/parse/scanner_lex.re"
+#line 654 "../src/parse/scanner_lex.re"
{ return CONF_YYBM_HEX; }
-#line 2455 "src/parse/scanner_lex.cc"
-yy418:
+#line 2182 "src/parse/scanner_lex.cc"
+yy384:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'r') goto yy363;
+ if (yych != 'r') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'i') goto yy363;
+ if (yych != 'i') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'a') goto yy363;
+ if (yych != 'a') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'b') goto yy363;
+ if (yych != 'b') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'l') goto yy363;
+ if (yych != 'l') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'e') goto yy363;
+ if (yych != 'e') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != ':') goto yy363;
+ if (yych != ':') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'y') goto yy363;
+ if (yych != 'y') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'y') goto yy363;
+ if (yych != 'y') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
if (yych <= 'c') {
- if (yych <= '`') goto yy363;
- if (yych <= 'a') goto yy428;
- if (yych <= 'b') goto yy429;
- goto yy430;
+ if (yych <= '`') goto yy329;
+ if (yych <= 'a') goto yy394;
+ if (yych <= 'b') goto yy395;
+ goto yy396;
} else {
- if (yych <= 'r') goto yy363;
- if (yych <= 's') goto yy431;
- if (yych <= 't') goto yy432;
- goto yy363;
+ if (yych <= 'r') goto yy329;
+ if (yych <= 's') goto yy397;
+ if (yych <= 't') goto yy398;
+ goto yy329;
}
-yy428:
+yy394:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'c') goto yy447;
- goto yy363;
-yy429:
+ if (yych == 'c') goto yy413;
+ goto yy329;
+yy395:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'm') goto yy437;
- goto yy363;
-yy430:
+ if (yych == 'm') goto yy403;
+ goto yy329;
+yy396:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'h') goto yy437;
- if (yych == 't') goto yy443;
- goto yy363;
-yy431:
+ if (yych == 'h') goto yy403;
+ if (yych == 't') goto yy409;
+ goto yy329;
+yy397:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 't') goto yy439;
- goto yy363;
-yy432:
+ if (yych == 't') goto yy405;
+ goto yy329;
+yy398:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'a') goto yy363;
+ if (yych != 'a') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'r') goto yy363;
+ if (yych != 'r') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'g') goto yy363;
+ if (yych != 'g') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'e') goto yy363;
+ if (yych != 'e') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 't') goto yy363;
-yy437:
+ if (yych != 't') goto yy329;
+yy403:
++YYCURSOR;
-#line 637 "../src/parse/scanner_lex.re"
+#line 616 "../src/parse/scanner_lex.re"
{
tok += sizeof "variable:" - 1;
yylval.str = new std::string (tok, tok_len ());
return CONF;
}
-#line 2523 "src/parse/scanner_lex.cc"
-yy439:
+#line 2250 "src/parse/scanner_lex.cc"
+yy405:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'a') goto yy363;
+ if (yych != 'a') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'b') goto yy363;
+ if (yych != 'b') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'l') goto yy363;
+ if (yych != 'l') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'e') goto yy437;
- goto yy363;
-yy443:
+ if (yych == 'e') goto yy403;
+ goto yy329;
+yy409:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'a') goto yy363;
+ if (yych != 'a') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'b') goto yy363;
+ if (yych != 'b') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'l') goto yy363;
+ if (yych != 'l') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'e') goto yy437;
- goto yy363;
-yy447:
+ if (yych == 'e') goto yy403;
+ goto yy329;
+yy413:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'c') goto yy363;
+ if (yych != 'c') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'e') goto yy363;
+ if (yych != 'e') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'p') goto yy363;
+ if (yych != 'p') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 't') goto yy437;
- goto yy363;
-yy451:
+ if (yych == 't') goto yy403;
+ goto yy329;
+yy417:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'a') goto yy363;
+ if (yych != 'a') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'r') goto yy454;
- if (yych != 't') goto yy363;
+ if (yych == 'r') goto yy420;
+ if (yych != 't') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'e') goto yy462;
- goto yy363;
-yy454:
+ if (yych == 'e') goto yy428;
+ goto yy329;
+yy420:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 't') goto yy363;
+ if (yych != 't') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'l') goto yy363;
+ if (yych != 'l') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'a') goto yy363;
+ if (yych != 'a') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'b') goto yy363;
+ if (yych != 'b') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'e') goto yy363;
+ if (yych != 'e') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'l') goto yy363;
+ if (yych != 'l') goto yy329;
++YYCURSOR;
-#line 672 "../src/parse/scanner_lex.re"
+#line 651 "../src/parse/scanner_lex.re"
{ return CONF_STARTLABEL; }
-#line 2579 "src/parse/scanner_lex.cc"
-yy462:
+#line 2306 "src/parse/scanner_lex.cc"
+yy428:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != ':') goto yy363;
+ if (yych != ':') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'a') goto yy464;
- if (yych == 'n') goto yy465;
- goto yy363;
-yy464:
+ if (yych == 'a') goto yy430;
+ if (yych == 'n') goto yy431;
+ goto yy329;
+yy430:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'b') goto yy475;
- goto yy363;
-yy465:
+ if (yych == 'b') goto yy441;
+ goto yy329;
+yy431:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'e') goto yy363;
+ if (yych != 'e') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'x') goto yy363;
+ if (yych != 'x') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 't') goto yy363;
+ if (yych != 't') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'l') goto yy363;
+ if (yych != 'l') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'a') goto yy363;
+ if (yych != 'a') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'b') goto yy363;
+ if (yych != 'b') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'e') goto yy363;
+ if (yych != 'e') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'l') goto yy363;
+ if (yych != 'l') goto yy329;
++YYCURSOR;
-#line 674 "../src/parse/scanner_lex.re"
+#line 653 "../src/parse/scanner_lex.re"
{ return CONF_STATE_NEXTLABEL; }
-#line 2611 "src/parse/scanner_lex.cc"
-yy475:
+#line 2338 "src/parse/scanner_lex.cc"
+yy441:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'o') goto yy363;
+ if (yych != 'o') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'r') goto yy363;
+ if (yych != 'r') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 't') goto yy363;
+ if (yych != 't') goto yy329;
++YYCURSOR;
-#line 673 "../src/parse/scanner_lex.re"
+#line 652 "../src/parse/scanner_lex.re"
{ return CONF_STATE_ABORT; }
-#line 2622 "src/parse/scanner_lex.cc"
-yy480:
+#line 2349 "src/parse/scanner_lex.cc"
+yy446:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'b') goto yy363;
+ if (yych != 'b') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'e') goto yy363;
+ if (yych != 'e') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'l') goto yy363;
+ if (yych != 'l') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == ':') goto yy485;
- if (yych != 'p') goto yy363;
+ if (yych == ':') goto yy451;
+ if (yych != 'p') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'r') goto yy501;
- goto yy363;
-yy485:
+ if (yych == 'r') goto yy467;
+ goto yy329;
+yy451:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'y') goto yy363;
+ if (yych != 'y') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'y') goto yy363;
+ if (yych != 'y') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'F') goto yy488;
- if (yych == 'N') goto yy489;
- goto yy363;
-yy488:
+ if (yych == 'F') goto yy454;
+ if (yych == 'N') goto yy455;
+ goto yy329;
+yy454:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'i') goto yy494;
- goto yy363;
-yy489:
+ if (yych == 'i') goto yy460;
+ goto yy329;
+yy455:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'e') goto yy363;
+ if (yych != 'e') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'x') goto yy363;
+ if (yych != 'x') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 't') goto yy363;
-yy492:
+ if (yych != 't') goto yy329;
+yy458:
++YYCURSOR;
-#line 623 "../src/parse/scanner_lex.re"
+#line 602 "../src/parse/scanner_lex.re"
{
tok += sizeof "label:" - 1;
yylval.str = new std::string (tok, tok_len ());
return CONF;
}
-#line 2664 "src/parse/scanner_lex.cc"
-yy494:
+#line 2391 "src/parse/scanner_lex.cc"
+yy460:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'l') goto yy363;
+ if (yych != 'l') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'l') goto yy363;
+ if (yych != 'l') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'L') goto yy363;
+ if (yych != 'L') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'a') goto yy363;
+ if (yych != 'a') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'b') goto yy363;
+ if (yych != 'b') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'e') goto yy363;
+ if (yych != 'e') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'l') goto yy492;
- goto yy363;
-yy501:
+ if (yych == 'l') goto yy458;
+ goto yy329;
+yy467:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'e') goto yy363;
+ if (yych != 'e') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'f') goto yy363;
+ if (yych != 'f') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'i') goto yy363;
+ if (yych != 'i') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'x') goto yy363;
+ if (yych != 'x') goto yy329;
++YYCURSOR;
-#line 671 "../src/parse/scanner_lex.re"
+#line 650 "../src/parse/scanner_lex.re"
{ return CONF_LABELPREFIX; }
-#line 2693 "src/parse/scanner_lex.cc"
-yy507:
+#line 2420 "src/parse/scanner_lex.cc"
+yy473:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'd') goto yy363;
+ if (yych != 'd') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'e') goto yy363;
+ if (yych != 'e') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'n') goto yy363;
+ if (yych != 'n') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 't') goto yy363;
+ if (yych != 't') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != ':') goto yy363;
+ if (yych != ':') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 'r') goto yy363;
- if (yych <= 's') goto yy514;
- if (yych >= 'u') goto yy363;
+ if (yych <= 'r') goto yy329;
+ if (yych <= 's') goto yy480;
+ if (yych >= 'u') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'o') goto yy521;
- goto yy363;
-yy514:
+ if (yych == 'o') goto yy487;
+ goto yy329;
+yy480:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 't') goto yy363;
+ if (yych != 't') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'r') goto yy363;
+ if (yych != 'r') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'i') goto yy363;
+ if (yych != 'i') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'n') goto yy363;
+ if (yych != 'n') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'g') goto yy363;
+ if (yych != 'g') goto yy329;
++YYCURSOR;
-#line 669 "../src/parse/scanner_lex.re"
+#line 648 "../src/parse/scanner_lex.re"
{ return CONF_INDENT_STRING; }
-#line 2726 "src/parse/scanner_lex.cc"
-yy521:
+#line 2453 "src/parse/scanner_lex.cc"
+yy487:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'p') goto yy363;
+ if (yych != 'p') goto yy329;
++YYCURSOR;
-#line 670 "../src/parse/scanner_lex.re"
+#line 649 "../src/parse/scanner_lex.re"
{ return CONF_INDENT_TOP; }
-#line 2733 "src/parse/scanner_lex.cc"
-yy524:
+#line 2460 "src/parse/scanner_lex.cc"
+yy490:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'a') goto yy363;
+ if (yych != 'a') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'g') goto yy363;
+ if (yych != 'g') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 's') goto yy363;
+ if (yych != 's') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != ':') goto yy363;
+ if (yych != ':') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
if (yych <= 'e') {
- if (yych == '8') goto yy529;
- if (yych <= 'd') goto yy363;
+ if (yych == '8') goto yy495;
+ if (yych <= 'd') goto yy329;
} else {
if (yych <= 'u') {
- if (yych <= 't') goto yy363;
+ if (yych <= 't') goto yy329;
} else {
- if (yych <= 'v') goto yy363;
- if (yych >= 'y') goto yy363;
+ if (yych <= 'v') goto yy329;
+ if (yych >= 'y') goto yy329;
}
}
-yy529:
+yy495:
++YYCURSOR;
-#line 658 "../src/parse/scanner_lex.re"
+#line 637 "../src/parse/scanner_lex.re"
{
switch (YYCURSOR[-1])
{
}
return CONF_FLAGS;
}
-#line 2769 "src/parse/scanner_lex.cc"
-yy531:
+#line 2496 "src/parse/scanner_lex.cc"
+yy497:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'f') goto yy363;
+ if (yych != 'f') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'i') goto yy363;
+ if (yych != 'i') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'n') goto yy363;
+ if (yych != 'n') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'e') goto yy363;
+ if (yych != 'e') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != ':') goto yy363;
+ if (yych != ':') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'Y') goto yy363;
+ if (yych != 'Y') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'Y') goto yy363;
+ if (yych != 'Y') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
switch (yych) {
- case 'B': goto yy542;
- case 'C': goto yy543;
- case 'D': goto yy544;
- case 'F': goto yy541;
- case 'G': goto yy540;
- case 'L': goto yy545;
- case 'M': goto yy546;
- case 'P': goto yy547;
- case 'R': goto yy548;
- case 'S': goto yy539;
- default: goto yy363;
- }
-yy539:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'E') goto yy649;
- if (yych == 'K') goto yy648;
- goto yy363;
-yy540:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'E') goto yy618;
- goto yy363;
-yy541:
+ case 'B': goto yy508;
+ case 'C': goto yy509;
+ case 'D': goto yy510;
+ case 'F': goto yy507;
+ case 'G': goto yy506;
+ case 'L': goto yy511;
+ case 'M': goto yy512;
+ case 'P': goto yy513;
+ case 'R': goto yy514;
+ case 'S': goto yy505;
+ default: goto yy329;
+ }
+yy505:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych == 'E') goto yy615;
+ if (yych == 'K') goto yy614;
+ goto yy329;
+yy506:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych == 'E') goto yy584;
+ goto yy329;
+yy507:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'I') goto yy603;
- goto yy363;
-yy542:
+ if (yych == 'I') goto yy569;
+ goto yy329;
+yy508:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'A') goto yy596;
- goto yy363;
-yy543:
+ if (yych == 'A') goto yy562;
+ goto yy329;
+yy509:
yych = (YYCTYPE)*++YYCURSOR;
if (yych <= 'S') {
- if (yych == 'O') goto yy579;
- goto yy363;
+ if (yych == 'O') goto yy545;
+ goto yy329;
} else {
- if (yych <= 'T') goto yy578;
- if (yych <= 'U') goto yy577;
- goto yy363;
+ if (yych <= 'T') goto yy544;
+ if (yych <= 'U') goto yy543;
+ goto yy329;
}
-yy544:
+yy510:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'E') goto yy574;
- goto yy363;
-yy545:
+ if (yych == 'E') goto yy540;
+ goto yy329;
+yy511:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'E') goto yy566;
- if (yych == 'I') goto yy565;
- goto yy363;
-yy546:
+ if (yych == 'E') goto yy532;
+ if (yych == 'I') goto yy531;
+ goto yy329;
+yy512:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'A') goto yy561;
- goto yy363;
-yy547:
+ if (yych == 'A') goto yy527;
+ goto yy329;
+yy513:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'E') goto yy559;
- goto yy363;
-yy548:
+ if (yych == 'E') goto yy525;
+ goto yy329;
+yy514:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'E') goto yy363;
+ if (yych != 'E') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'S') goto yy363;
+ if (yych != 'S') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'T') goto yy363;
+ if (yych != 'T') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'O') goto yy363;
+ if (yych != 'O') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'R') goto yy363;
+ if (yych != 'R') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'E') goto yy363;
+ if (yych != 'E') goto yy329;
yyaccept = 1;
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych == 'C') goto yy556;
-yy555:
-#line 613 "../src/parse/scanner_lex.re"
+ if (yych == 'C') goto yy522;
+yy521:
+#line 592 "../src/parse/scanner_lex.re"
{
tok += sizeof "define:" - 1;
yylval.str = new std::string (tok, tok_len ());
return CONF;
}
-#line 2866 "src/parse/scanner_lex.cc"
-yy556:
+#line 2593 "src/parse/scanner_lex.cc"
+yy522:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'T') goto yy363;
+ if (yych != 'T') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'X') goto yy363;
-yy558:
+ if (yych != 'X') goto yy329;
+yy524:
yych = (YYCTYPE)*++YYCURSOR;
- goto yy555;
-yy559:
+ goto yy521;
+yy525:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'E') goto yy363;
+ if (yych != 'E') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'K') goto yy558;
- goto yy363;
-yy561:
+ if (yych == 'K') goto yy524;
+ goto yy329;
+yy527:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'R') goto yy363;
+ if (yych != 'R') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'K') goto yy363;
+ if (yych != 'K') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'E') goto yy363;
+ if (yych != 'E') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'R') goto yy558;
- goto yy363;
-yy565:
+ if (yych == 'R') goto yy524;
+ goto yy329;
+yy531:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'M') goto yy572;
- goto yy363;
-yy566:
+ if (yych == 'M') goto yy538;
+ goto yy329;
+yy532:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'S') goto yy363;
+ if (yych != 'S') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'S') goto yy363;
+ if (yych != 'S') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'T') goto yy363;
+ if (yych != 'T') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'H') goto yy363;
+ if (yych != 'H') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'A') goto yy363;
+ if (yych != 'A') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'N') goto yy558;
- goto yy363;
-yy572:
+ if (yych == 'N') goto yy524;
+ goto yy329;
+yy538:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'I') goto yy363;
+ if (yych != 'I') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'T') goto yy558;
- goto yy363;
-yy574:
+ if (yych == 'T') goto yy524;
+ goto yy329;
+yy540:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'B') goto yy363;
+ if (yych != 'B') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'U') goto yy363;
+ if (yych != 'U') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'G') goto yy558;
- goto yy363;
-yy577:
+ if (yych == 'G') goto yy524;
+ goto yy329;
+yy543:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'R') goto yy593;
- goto yy363;
-yy578:
+ if (yych == 'R') goto yy559;
+ goto yy329;
+yy544:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 'W') goto yy363;
- if (yych <= 'X') goto yy585;
- if (yych <= 'Y') goto yy586;
- goto yy363;
-yy579:
+ if (yych <= 'W') goto yy329;
+ if (yych <= 'X') goto yy551;
+ if (yych <= 'Y') goto yy552;
+ goto yy329;
+yy545:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'N') goto yy363;
+ if (yych != 'N') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'D') goto yy363;
+ if (yych != 'D') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'T') goto yy363;
+ if (yych != 'T') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'Y') goto yy363;
+ if (yych != 'Y') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'P') goto yy363;
+ if (yych != 'P') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'E') goto yy558;
- goto yy363;
-yy585:
+ if (yych == 'E') goto yy524;
+ goto yy329;
+yy551:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'M') goto yy588;
- goto yy363;
-yy586:
+ if (yych == 'M') goto yy554;
+ goto yy329;
+yy552:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'P') goto yy363;
+ if (yych != 'P') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'E') goto yy558;
- goto yy363;
-yy588:
+ if (yych == 'E') goto yy524;
+ goto yy329;
+yy554:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'A') goto yy363;
+ if (yych != 'A') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'R') goto yy363;
+ if (yych != 'R') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'K') goto yy363;
+ if (yych != 'K') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'E') goto yy363;
+ if (yych != 'E') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'R') goto yy558;
- goto yy363;
-yy593:
+ if (yych == 'R') goto yy524;
+ goto yy329;
+yy559:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'S') goto yy363;
+ if (yych != 'S') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'O') goto yy363;
+ if (yych != 'O') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'R') goto yy558;
- goto yy363;
-yy596:
+ if (yych == 'R') goto yy524;
+ goto yy329;
+yy562:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'C') goto yy363;
+ if (yych != 'C') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'K') goto yy363;
+ if (yych != 'K') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'U') goto yy363;
+ if (yych != 'U') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'P') goto yy363;
+ if (yych != 'P') goto yy329;
yyaccept = 1;
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych != 'C') goto yy555;
+ if (yych != 'C') goto yy521;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'T') goto yy363;
+ if (yych != 'T') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'X') goto yy558;
- goto yy363;
-yy603:
+ if (yych == 'X') goto yy524;
+ goto yy329;
+yy569:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'L') goto yy363;
+ if (yych != 'L') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'L') goto yy363;
+ if (yych != 'L') goto yy329;
yyaccept = 1;
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych == ':') goto yy607;
- if (yych != '@') goto yy555;
+ if (yych == ':') goto yy573;
+ if (yych != '@') goto yy521;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'l') goto yy614;
- goto yy363;
-yy607:
+ if (yych == 'l') goto yy580;
+ goto yy329;
+yy573:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'n') goto yy363;
+ if (yych != 'n') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'a') goto yy363;
+ if (yych != 'a') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'k') goto yy363;
+ if (yych != 'k') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'e') goto yy363;
+ if (yych != 'e') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'd') goto yy363;
+ if (yych != 'd') goto yy329;
++YYCURSOR;
-#line 650 "../src/parse/scanner_lex.re"
+#line 629 "../src/parse/scanner_lex.re"
{ return CONF_DEFINE_YYFILL_NAKED; }
-#line 3020 "src/parse/scanner_lex.cc"
-yy614:
+#line 2747 "src/parse/scanner_lex.cc"
+yy580:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'e') goto yy363;
+ if (yych != 'e') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'n') goto yy363;
+ if (yych != 'n') goto yy329;
++YYCURSOR;
-#line 651 "../src/parse/scanner_lex.re"
+#line 630 "../src/parse/scanner_lex.re"
{ return CONF_DEFINE_YYFILL_LEN; }
-#line 3029 "src/parse/scanner_lex.cc"
-yy618:
+#line 2756 "src/parse/scanner_lex.cc"
+yy584:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'T') goto yy363;
+ if (yych != 'T') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'C') goto yy621;
- if (yych != 'S') goto yy363;
+ if (yych == 'C') goto yy587;
+ if (yych != 'S') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'T') goto yy637;
- goto yy363;
-yy621:
+ if (yych == 'T') goto yy603;
+ goto yy329;
+yy587:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'O') goto yy363;
+ if (yych != 'O') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'N') goto yy363;
+ if (yych != 'N') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'D') goto yy363;
+ if (yych != 'D') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'I') goto yy363;
+ if (yych != 'I') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'T') goto yy363;
+ if (yych != 'T') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'I') goto yy363;
+ if (yych != 'I') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'O') goto yy363;
+ if (yych != 'O') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'N') goto yy363;
+ if (yych != 'N') goto yy329;
yyaccept = 1;
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych != ':') goto yy555;
+ if (yych != ':') goto yy521;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'n') goto yy363;
+ if (yych != 'n') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'a') goto yy363;
+ if (yych != 'a') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'k') goto yy363;
+ if (yych != 'k') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'e') goto yy363;
+ if (yych != 'e') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'd') goto yy363;
+ if (yych != 'd') goto yy329;
++YYCURSOR;
-#line 652 "../src/parse/scanner_lex.re"
+#line 631 "../src/parse/scanner_lex.re"
{ return CONF_DEFINE_YYGETCONDITION_NAKED; }
-#line 3072 "src/parse/scanner_lex.cc"
-yy637:
+#line 2799 "src/parse/scanner_lex.cc"
+yy603:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'A') goto yy363;
+ if (yych != 'A') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'T') goto yy363;
+ if (yych != 'T') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'E') goto yy363;
+ if (yych != 'E') goto yy329;
yyaccept = 1;
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych != ':') goto yy555;
+ if (yych != ':') goto yy521;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'n') goto yy363;
+ if (yych != 'n') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'a') goto yy363;
+ if (yych != 'a') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'k') goto yy363;
+ if (yych != 'k') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'e') goto yy363;
+ if (yych != 'e') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'd') goto yy363;
+ if (yych != 'd') goto yy329;
++YYCURSOR;
-#line 653 "../src/parse/scanner_lex.re"
+#line 632 "../src/parse/scanner_lex.re"
{ return CONF_DEFINE_YYGETSTATE_NAKED; }
-#line 3096 "src/parse/scanner_lex.cc"
-yy648:
+#line 2823 "src/parse/scanner_lex.cc"
+yy614:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'I') goto yy685;
- goto yy363;
-yy649:
+ if (yych == 'I') goto yy651;
+ goto yy329;
+yy615:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'T') goto yy363;
+ if (yych != 'T') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'C') goto yy652;
- if (yych != 'S') goto yy363;
+ if (yych == 'C') goto yy618;
+ if (yych != 'S') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'T') goto yy667;
- goto yy363;
-yy652:
+ if (yych == 'T') goto yy633;
+ goto yy329;
+yy618:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'O') goto yy363;
+ if (yych != 'O') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'N') goto yy363;
+ if (yych != 'N') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'D') goto yy363;
+ if (yych != 'D') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'I') goto yy363;
+ if (yych != 'I') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'T') goto yy363;
+ if (yych != 'T') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'I') goto yy363;
+ if (yych != 'I') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'O') goto yy363;
+ if (yych != 'O') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'N') goto yy363;
+ if (yych != 'N') goto yy329;
yyaccept = 1;
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych != '@') goto yy555;
+ if (yych != '@') goto yy521;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'c') goto yy363;
+ if (yych != 'c') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'o') goto yy363;
+ if (yych != 'o') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'n') goto yy363;
+ if (yych != 'n') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'd') goto yy363;
+ if (yych != 'd') goto yy329;
++YYCURSOR;
-#line 654 "../src/parse/scanner_lex.re"
+#line 633 "../src/parse/scanner_lex.re"
{ return CONF_DEFINE_YYSETCONDITION_COND; }
-#line 3141 "src/parse/scanner_lex.cc"
-yy667:
+#line 2868 "src/parse/scanner_lex.cc"
+yy633:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'A') goto yy363;
+ if (yych != 'A') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'T') goto yy363;
+ if (yych != 'T') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'E') goto yy363;
+ if (yych != 'E') goto yy329;
yyaccept = 1;
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych == ':') goto yy672;
- if (yych != '@') goto yy555;
+ if (yych == ':') goto yy638;
+ if (yych != '@') goto yy521;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 's') goto yy679;
- goto yy363;
-yy672:
+ if (yych == 's') goto yy645;
+ goto yy329;
+yy638:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'n') goto yy363;
+ if (yych != 'n') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'a') goto yy363;
+ if (yych != 'a') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'k') goto yy363;
+ if (yych != 'k') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'e') goto yy363;
+ if (yych != 'e') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'd') goto yy363;
+ if (yych != 'd') goto yy329;
++YYCURSOR;
-#line 655 "../src/parse/scanner_lex.re"
+#line 634 "../src/parse/scanner_lex.re"
{ return CONF_DEFINE_YYSETSTATE_NAKED; }
-#line 3170 "src/parse/scanner_lex.cc"
-yy679:
+#line 2897 "src/parse/scanner_lex.cc"
+yy645:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 't') goto yy363;
+ if (yych != 't') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'a') goto yy363;
+ if (yych != 'a') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 't') goto yy363;
+ if (yych != 't') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'e') goto yy363;
+ if (yych != 'e') goto yy329;
++YYCURSOR;
-#line 656 "../src/parse/scanner_lex.re"
+#line 635 "../src/parse/scanner_lex.re"
{ return CONF_DEFINE_YYSETSTATE_STATE; }
-#line 3183 "src/parse/scanner_lex.cc"
-yy685:
+#line 2910 "src/parse/scanner_lex.cc"
+yy651:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'P') goto yy558;
- goto yy363;
-yy686:
+ if (yych == 'P') goto yy524;
+ goto yy329;
+yy652:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'o') goto yy734;
- goto yy363;
-yy687:
+ if (yych == 'o') goto yy700;
+ goto yy329;
+yy653:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'n') goto yy363;
+ if (yych != 'n') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'd') goto yy363;
+ if (yych != 'd') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
if (yych <= 'd') {
- if (yych == ':') goto yy692;
- goto yy363;
+ if (yych == ':') goto yy658;
+ goto yy329;
} else {
- if (yych <= 'e') goto yy691;
- if (yych != 'p') goto yy363;
+ if (yych <= 'e') goto yy657;
+ if (yych != 'p') goto yy329;
}
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'r') goto yy728;
- goto yy363;
-yy691:
+ if (yych == 'r') goto yy694;
+ goto yy329;
+yy657:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'n') goto yy718;
- goto yy363;
-yy692:
+ if (yych == 'n') goto yy684;
+ goto yy329;
+yy658:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'd') goto yy694;
- if (yych != 'g') goto yy363;
+ if (yych == 'd') goto yy660;
+ if (yych != 'g') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'o') goto yy708;
- goto yy363;
-yy694:
+ if (yych == 'o') goto yy674;
+ goto yy329;
+yy660:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'i') goto yy363;
+ if (yych != 'i') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'v') goto yy363;
+ if (yych != 'v') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'i') goto yy363;
+ if (yych != 'i') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'd') goto yy363;
+ if (yych != 'd') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'e') goto yy363;
+ if (yych != 'e') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'r') goto yy363;
+ if (yych != 'r') goto yy329;
yyaccept = 2;
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych == '@') goto yy702;
-yy701:
-#line 645 "../src/parse/scanner_lex.re"
+ if (yych == '@') goto yy668;
+yy667:
+#line 624 "../src/parse/scanner_lex.re"
{ return CONF_COND_DIVIDER; }
-#line 3238 "src/parse/scanner_lex.cc"
-yy702:
+#line 2965 "src/parse/scanner_lex.cc"
+yy668:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'c') goto yy363;
+ if (yych != 'c') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'o') goto yy363;
+ if (yych != 'o') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'n') goto yy363;
+ if (yych != 'n') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'd') goto yy363;
+ if (yych != 'd') goto yy329;
++YYCURSOR;
-#line 646 "../src/parse/scanner_lex.re"
+#line 625 "../src/parse/scanner_lex.re"
{ return CONF_COND_DIVIDER_COND; }
-#line 3251 "src/parse/scanner_lex.cc"
-yy708:
+#line 2978 "src/parse/scanner_lex.cc"
+yy674:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 't') goto yy363;
+ if (yych != 't') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'o') goto yy363;
+ if (yych != 'o') goto yy329;
yyaccept = 3;
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych == '@') goto yy712;
-yy711:
-#line 647 "../src/parse/scanner_lex.re"
+ if (yych == '@') goto yy678;
+yy677:
+#line 626 "../src/parse/scanner_lex.re"
{ return CONF_COND_GOTO; }
-#line 3263 "src/parse/scanner_lex.cc"
-yy712:
+#line 2990 "src/parse/scanner_lex.cc"
+yy678:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'c') goto yy363;
+ if (yych != 'c') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'o') goto yy363;
+ if (yych != 'o') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'n') goto yy363;
+ if (yych != 'n') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'd') goto yy363;
+ if (yych != 'd') goto yy329;
++YYCURSOR;
-#line 648 "../src/parse/scanner_lex.re"
+#line 627 "../src/parse/scanner_lex.re"
{ return CONF_COND_GOTO_COND; }
-#line 3276 "src/parse/scanner_lex.cc"
-yy718:
+#line 3003 "src/parse/scanner_lex.cc"
+yy684:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'u') goto yy363;
+ if (yych != 'u') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'm') goto yy363;
+ if (yych != 'm') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'p') goto yy363;
+ if (yych != 'p') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'r') goto yy363;
+ if (yych != 'r') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'e') goto yy363;
+ if (yych != 'e') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'f') goto yy363;
+ if (yych != 'f') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'i') goto yy363;
+ if (yych != 'i') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'x') goto yy363;
+ if (yych != 'x') goto yy329;
++YYCURSOR;
-#line 644 "../src/parse/scanner_lex.re"
+#line 623 "../src/parse/scanner_lex.re"
{ return CONF_CONDENUMPREFIX; }
-#line 3297 "src/parse/scanner_lex.cc"
-yy728:
+#line 3024 "src/parse/scanner_lex.cc"
+yy694:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'e') goto yy363;
+ if (yych != 'e') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'f') goto yy363;
+ if (yych != 'f') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'i') goto yy363;
+ if (yych != 'i') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'x') goto yy363;
+ if (yych != 'x') goto yy329;
++YYCURSOR;
-#line 643 "../src/parse/scanner_lex.re"
+#line 622 "../src/parse/scanner_lex.re"
{ return CONF_CONDPREFIX; }
-#line 3310 "src/parse/scanner_lex.cc"
-yy734:
+#line 3037 "src/parse/scanner_lex.cc"
+yy700:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 't') goto yy363;
+ if (yych != 't') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'o') goto yy363;
+ if (yych != 'o') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != ':') goto yy363;
+ if (yych != ':') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 't') goto yy363;
+ if (yych != 't') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'h') goto yy363;
+ if (yych != 'h') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'r') goto yy363;
+ if (yych != 'r') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'e') goto yy363;
+ if (yych != 'e') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 's') goto yy363;
+ if (yych != 's') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'h') goto yy363;
+ if (yych != 'h') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'o') goto yy363;
+ if (yych != 'o') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'l') goto yy363;
+ if (yych != 'l') goto yy329;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'd') goto yy363;
+ if (yych != 'd') goto yy329;
++YYCURSOR;
-#line 649 "../src/parse/scanner_lex.re"
+#line 628 "../src/parse/scanner_lex.re"
{ return CONF_CGOTO_THRESHOLD; }
-#line 3339 "src/parse/scanner_lex.cc"
+#line 3066 "src/parse/scanner_lex.cc"
}
-#line 681 "../src/parse/scanner_lex.re"
+#line 660 "../src/parse/scanner_lex.re"
conf_eq:
-#line 3346 "src/parse/scanner_lex.cc"
+#line 3073 "src/parse/scanner_lex.cc"
{
YYCTYPE yych;
static const unsigned char yybm[] = {
if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
yych = (YYCTYPE)*YYCURSOR;
if (yych <= 0x1F) {
- if (yych == '\t') goto yy752;
+ if (yych == '\t') goto yy718;
} else {
- if (yych <= ' ') goto yy752;
- if (yych == '=') goto yy753;
+ if (yych <= ' ') goto yy718;
+ if (yych == '=') goto yy719;
}
++YYCURSOR;
-yy751:
-#line 685 "../src/parse/scanner_lex.re"
+yy717:
+#line 664 "../src/parse/scanner_lex.re"
{ fatal ("missing '=' in configuration"); }
-#line 3395 "src/parse/scanner_lex.cc"
-yy752:
+#line 3122 "src/parse/scanner_lex.cc"
+yy718:
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
if (yych <= 0x1F) {
- if (yych == '\t') goto yy757;
- goto yy751;
+ if (yych == '\t') goto yy723;
+ goto yy717;
} else {
- if (yych <= ' ') goto yy757;
- if (yych == '=') goto yy755;
- goto yy751;
+ if (yych <= ' ') goto yy723;
+ if (yych == '=') goto yy721;
+ goto yy717;
}
-yy753:
+yy719:
++YYCURSOR;
yych = (YYCTYPE)*YYCURSOR;
- goto yy756;
-yy754:
-#line 686 "../src/parse/scanner_lex.re"
+ goto yy722;
+yy720:
+#line 665 "../src/parse/scanner_lex.re"
{ goto conf_val; }
-#line 3413 "src/parse/scanner_lex.cc"
-yy755:
+#line 3140 "src/parse/scanner_lex.cc"
+yy721:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = (YYCTYPE)*YYCURSOR;
-yy756:
+yy722:
if (yybm[0+yych] & 128) {
- goto yy755;
+ goto yy721;
}
- goto yy754;
-yy757:
+ goto yy720;
+yy723:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = (YYCTYPE)*YYCURSOR;
if (yych <= 0x1F) {
- if (yych == '\t') goto yy757;
+ if (yych == '\t') goto yy723;
} else {
- if (yych <= ' ') goto yy757;
- if (yych == '=') goto yy755;
+ if (yych <= ' ') goto yy723;
+ if (yych == '=') goto yy721;
}
YYCURSOR = YYMARKER;
- goto yy751;
+ goto yy717;
}
-#line 687 "../src/parse/scanner_lex.re"
+#line 666 "../src/parse/scanner_lex.re"
conf_val:
tok = cur;
lexer_state = LEX_NORMAL;
-#line 3443 "src/parse/scanner_lex.cc"
+#line 3170 "src/parse/scanner_lex.cc"
{
YYCTYPE yych;
static const unsigned char yybm[] = {
- 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 192, 0, 248, 248, 192, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248,
- 192, 248, 112, 248, 248, 248, 248, 168,
- 248, 248, 248, 248, 248, 248, 248, 248,
- 252, 252, 252, 252, 252, 252, 252, 252,
- 252, 252, 248, 192, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 32, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 0, 0, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 0, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 192, 192, 192, 192, 192, 192, 192, 192,
+ 192, 192, 128, 0, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
};
if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
yych = (YYCTYPE)*YYCURSOR;
- if (yych <= '&') {
- if (yych <= '\r') {
- if (yych <= 0x08) goto yy772;
- if (yych <= '\n') goto yy762;
- if (yych <= '\f') goto yy772;
+ if (yych <= '\'') {
+ if (yych <= ' ') {
+ if (yych <= 0x08) goto yy736;
+ if (yych <= '\n') goto yy728;
+ if (yych <= 0x1F) goto yy736;
} else {
- if (yych <= ' ') {
- if (yych <= 0x1F) goto yy772;
- } else {
- if (yych == '"') goto yy768;
- goto yy772;
- }
+ if (yych == '"') goto yy734;
+ if (yych <= '&') goto yy736;
+ goto yy734;
}
} else {
- if (yych <= '/') {
- if (yych <= '\'') goto yy770;
- if (yych == '-') goto yy765;
- goto yy772;
+ if (yych <= '0') {
+ if (yych == '-') goto yy731;
+ if (yych <= '/') goto yy736;
+ goto yy729;
} else {
- if (yych <= '9') {
- if (yych <= '0') goto yy763;
- goto yy766;
- } else {
- if (yych != ';') goto yy772;
- }
+ if (yych <= '9') goto yy732;
+ if (yych != ';') goto yy736;
}
}
-yy762:
-#line 709 "../src/parse/scanner_lex.re"
+yy728:
+#line 688 "../src/parse/scanner_lex.re"
{
yylval.str = new std::string (tok, tok_len ());
- return STR;
+ return STRING;
}
-#line 3515 "src/parse/scanner_lex.cc"
-yy763:
+#line 3235 "src/parse/scanner_lex.cc"
+yy729:
++YYCURSOR;
- if (yybm[0+(yych = (YYCTYPE)*YYCURSOR)] & 32) {
- goto yy772;
+ if (yybm[0+(yych = (YYCTYPE)*YYCURSOR)] & 128) {
+ goto yy736;
}
-yy764:
-#line 694 "../src/parse/scanner_lex.re"
+yy730:
+#line 673 "../src/parse/scanner_lex.re"
{
if (!s_to_i32_unsafe (tok, cur, yylval.num))
{
}
return NUM;
}
-#line 3530 "src/parse/scanner_lex.cc"
-yy765:
+#line 3250 "src/parse/scanner_lex.cc"
+yy731:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= '0') goto yy773;
- if (yych >= ':') goto yy773;
-yy766:
+ if (yych <= '0') goto yy737;
+ if (yych >= ':') goto yy737;
+yy732:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = (YYCTYPE)*YYCURSOR;
- if (yybm[0+yych] & 4) {
- goto yy766;
- }
- if (yych <= '\r') {
- if (yych <= 0x08) goto yy772;
- if (yych <= '\n') goto yy764;
- if (yych <= '\f') goto yy772;
- goto yy764;
- } else {
- if (yych <= ' ') {
- if (yych <= 0x1F) goto yy772;
- goto yy764;
- } else {
- if (yych == ';') goto yy764;
- goto yy772;
- }
- }
-yy768:
- YYMARKER = ++YYCURSOR;
- if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
- yych = (YYCTYPE)*YYCURSOR;
- if (yybm[0+yych] & 8) {
- goto yy768;
+ if (yybm[0+yych] & 64) {
+ goto yy732;
}
- if (yych <= ' ') {
- if (yych == '\n') goto yy762;
- goto yy783;
+ if (yych <= 0x1F) {
+ if (yych <= 0x08) goto yy736;
+ if (yych <= '\n') goto yy730;
+ goto yy736;
} else {
- if (yych <= '"') goto yy774;
- if (yych <= ';') goto yy783;
- goto yy782;
+ if (yych <= ' ') goto yy730;
+ if (yych == ';') goto yy730;
+ goto yy736;
}
-yy770:
- YYMARKER = ++YYCURSOR;
- if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
- yych = (YYCTYPE)*YYCURSOR;
- if (yybm[0+yych] & 16) {
- goto yy770;
- }
- if (yych <= ' ') {
- if (yych == '\n') goto yy762;
- goto yy777;
- } else {
- if (yych <= '\'') goto yy774;
- if (yych <= ';') goto yy777;
- goto yy776;
+yy734:
+ ++YYCURSOR;
+#line 681 "../src/parse/scanner_lex.re"
+ {
+ std::vector<uint32_t> cpoints;
+ lex_cpoints (tok[0], cpoints);
+ yylval.str = cpoint_conf (cpoints);
+ return STRING;
}
-yy772:
+#line 3280 "src/parse/scanner_lex.cc"
+yy736:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = (YYCTYPE)*YYCURSOR;
-yy773:
- if (yybm[0+yych] & 32) {
- goto yy772;
- }
- goto yy762;
-yy774:
- ++YYCURSOR;
- if (yybm[0+(yych = (YYCTYPE)*YYCURSOR)] & 32) {
- goto yy772;
+yy737:
+ if (yybm[0+yych] & 128) {
+ goto yy736;
}
-yy775:
-#line 702 "../src/parse/scanner_lex.re"
+ goto yy728;
+}
+#line 692 "../src/parse/scanner_lex.re"
+
+}
+
+static void escape (std::string & dest, const std::string & src)
+{
+ dest = src;
+ size_t l = dest.length();
+ for (size_t p = 0; p < l; ++p)
{
- yylval.str = new std::string ();
- SubStr s (tok + 1, tok_len () - 2); // skip quotes
- unescape (s, *(yylval.str));
- return STR;
+ if (dest[p] == '\\')
+ {
+ dest.insert(++p, "\\");
+ ++l;
+ }
}
-#line 3608 "src/parse/scanner_lex.cc"
-yy776:
- YYMARKER = ++YYCURSOR;
- if (YYLIMIT <= YYCURSOR) YYFILL(1);
+}
+
+void Scanner::lex_cpoints (char quote, std::vector<uint32_t> & cs)
+{
+ for (;;)
+ {
+ tok = cur;
+
+#line 3315 "src/parse/scanner_lex.cc"
+{
+ YYCTYPE yych;
+ unsigned int yyaccept = 0;
+ if ((YYLIMIT - YYCURSOR) < 10) YYFILL(10);
yych = (YYCTYPE)*YYCURSOR;
- if (yych <= '\r') {
- if (yych <= '\t') {
- if (yych <= 0x08) goto yy770;
+ if (yych == '\n') goto yy742;
+ if (yych == '\\') goto yy744;
+ ++YYCURSOR;
+#line 734 "../src/parse/scanner_lex.re"
+ {
+ const char c = tok[0];
+ if (c == quote)
+ {
+ return;
+ }
+ else
+ {
+ cs.push_back (static_cast<uint8_t> (c));
+ continue;
+ }
+ }
+#line 3337 "src/parse/scanner_lex.cc"
+yy742:
+ ++YYCURSOR;
+#line 715 "../src/parse/scanner_lex.re"
+ { fatal ((tok - pos) - tchar, "syntax error"); }
+#line 3342 "src/parse/scanner_lex.cc"
+yy744:
+ ++YYCURSOR;
+ if ((yych = (YYCTYPE)*YYCURSOR) <= 'b') {
+ if (yych <= 'T') {
+ if (yych <= '/') {
+ if (yych != '\n') goto yy746;
+ } else {
+ if (yych <= '3') goto yy748;
+ if (yych <= '7') goto yy750;
+ goto yy746;
+ }
} else {
- if (yych <= '\n') goto yy762;
- if (yych <= '\f') goto yy770;
+ if (yych <= 'X') {
+ if (yych <= 'U') goto yy751;
+ if (yych <= 'W') goto yy746;
+ goto yy753;
+ } else {
+ if (yych == '\\') goto yy754;
+ if (yych <= '`') goto yy746;
+ goto yy754;
+ }
}
} else {
- if (yych <= ' ') {
- if (yych <= 0x1F) goto yy770;
+ if (yych <= 'r') {
+ if (yych <= 'm') {
+ if (yych == 'f') goto yy754;
+ goto yy746;
+ } else {
+ if (yych <= 'n') goto yy754;
+ if (yych <= 'q') goto yy746;
+ goto yy754;
+ }
} else {
- if (yych != ';') goto yy770;
+ if (yych <= 'u') {
+ if (yych <= 's') goto yy746;
+ if (yych <= 't') goto yy754;
+ goto yy753;
+ } else {
+ if (yych <= 'v') goto yy754;
+ if (yych == 'x') goto yy756;
+ goto yy746;
+ }
}
}
-yy777:
+#line 718 "../src/parse/scanner_lex.re"
+ { fatal ((tok - pos) - tchar, "syntax error in escape sequence"); }
+#line 3389 "src/parse/scanner_lex.cc"
+yy746:
++YYCURSOR;
- if (YYLIMIT <= YYCURSOR) YYFILL(1);
- yych = (YYCTYPE)*YYCURSOR;
- if (yybm[0+yych] & 64) {
- goto yy777;
- }
- if (yych <= '\n') goto yy779;
- if (yych <= '\'') goto yy780;
- goto yy781;
-yy779:
- YYCURSOR = YYMARKER;
- goto yy762;
-yy780:
+#line 724 "../src/parse/scanner_lex.re"
+ {
+ const char c = tok[1];
+ if (c != quote)
+ {
+ warn.useless_escape (tline, tok - pos, c);
+ }
+ cs.push_back (static_cast<uint8_t> (c));
+ continue;
+ }
+#line 3402 "src/parse/scanner_lex.cc"
+yy748:
+ yyaccept = 0;
+ yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
+ if (yych <= '/') goto yy749;
+ if (yych <= '7') goto yy771;
+yy749:
+#line 717 "../src/parse/scanner_lex.re"
+ { fatal ((tok - pos) - tchar, "syntax error in octal escape sequence"); }
+#line 3411 "src/parse/scanner_lex.cc"
+yy750:
yych = (YYCTYPE)*++YYCURSOR;
- goto yy775;
-yy781:
+ goto yy749;
+yy751:
+ yyaccept = 1;
+ yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
+ if (yych <= '@') {
+ if (yych <= '/') goto yy752;
+ if (yych <= '9') goto yy764;
+ } else {
+ if (yych <= 'F') goto yy764;
+ if (yych <= '`') goto yy752;
+ if (yych <= 'f') goto yy764;
+ }
+yy752:
+#line 716 "../src/parse/scanner_lex.re"
+ { fatal ((tok - pos) - tchar, "syntax error in hexadecimal escape sequence"); }
+#line 3429 "src/parse/scanner_lex.cc"
+yy753:
+ yyaccept = 1;
+ yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
+ if (yych <= '@') {
+ if (yych <= '/') goto yy752;
+ if (yych <= '9') goto yy761;
+ goto yy752;
+ } else {
+ if (yych <= 'F') goto yy761;
+ if (yych <= '`') goto yy752;
+ if (yych <= 'f') goto yy761;
+ goto yy752;
+ }
+yy754:
++YYCURSOR;
- if (YYLIMIT <= YYCURSOR) YYFILL(1);
- yych = (YYCTYPE)*YYCURSOR;
- if (yych == '\n') goto yy779;
- goto yy777;
-yy782:
- YYMARKER = ++YYCURSOR;
- if (YYLIMIT <= YYCURSOR) YYFILL(1);
- yych = (YYCTYPE)*YYCURSOR;
- if (yych <= '\r') {
- if (yych <= '\t') {
- if (yych <= 0x08) goto yy768;
- } else {
- if (yych <= '\n') goto yy762;
- if (yych <= '\f') goto yy768;
- }
+#line 722 "../src/parse/scanner_lex.re"
+ { cs.push_back (unesc_simple (tok)); continue; }
+#line 3447 "src/parse/scanner_lex.cc"
+yy756:
+ yyaccept = 1;
+ yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
+ if (yych <= '@') {
+ if (yych <= '/') goto yy752;
+ if (yych >= ':') goto yy752;
} else {
- if (yych <= ' ') {
- if (yych <= 0x1F) goto yy768;
- } else {
- if (yych != ';') goto yy768;
- }
+ if (yych <= 'F') goto yy757;
+ if (yych <= '`') goto yy752;
+ if (yych >= 'g') goto yy752;
}
-yy783:
+yy757:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy758;
+ if (yych <= '9') goto yy759;
+ } else {
+ if (yych <= 'F') goto yy759;
+ if (yych <= '`') goto yy758;
+ if (yych <= 'f') goto yy759;
+ }
+yy758:
+ YYCURSOR = YYMARKER;
+ if (yyaccept == 0) {
+ goto yy749;
+ } else {
+ goto yy752;
+ }
+yy759:
++YYCURSOR;
- if (YYLIMIT <= YYCURSOR) YYFILL(1);
- yych = (YYCTYPE)*YYCURSOR;
- if (yybm[0+yych] & 128) {
- goto yy783;
+#line 720 "../src/parse/scanner_lex.re"
+ { cs.push_back (unesc_hex (tok, cur)); continue; }
+#line 3480 "src/parse/scanner_lex.cc"
+yy761:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy758;
+ if (yych >= ':') goto yy758;
+ } else {
+ if (yych <= 'F') goto yy762;
+ if (yych <= '`') goto yy758;
+ if (yych >= 'g') goto yy758;
+ }
+yy762:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy758;
+ if (yych >= ':') goto yy758;
+ } else {
+ if (yych <= 'F') goto yy763;
+ if (yych <= '`') goto yy758;
+ if (yych >= 'g') goto yy758;
+ }
+yy763:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy758;
+ if (yych <= '9') goto yy759;
+ goto yy758;
+ } else {
+ if (yych <= 'F') goto yy759;
+ if (yych <= '`') goto yy758;
+ if (yych <= 'f') goto yy759;
+ goto yy758;
+ }
+yy764:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy758;
+ if (yych >= ':') goto yy758;
+ } else {
+ if (yych <= 'F') goto yy765;
+ if (yych <= '`') goto yy758;
+ if (yych >= 'g') goto yy758;
+ }
+yy765:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy758;
+ if (yych >= ':') goto yy758;
+ } else {
+ if (yych <= 'F') goto yy766;
+ if (yych <= '`') goto yy758;
+ if (yych >= 'g') goto yy758;
+ }
+yy766:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy758;
+ if (yych >= ':') goto yy758;
+ } else {
+ if (yych <= 'F') goto yy767;
+ if (yych <= '`') goto yy758;
+ if (yych >= 'g') goto yy758;
+ }
+yy767:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy758;
+ if (yych >= ':') goto yy758;
+ } else {
+ if (yych <= 'F') goto yy768;
+ if (yych <= '`') goto yy758;
+ if (yych >= 'g') goto yy758;
+ }
+yy768:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy758;
+ if (yych >= ':') goto yy758;
+ } else {
+ if (yych <= 'F') goto yy769;
+ if (yych <= '`') goto yy758;
+ if (yych >= 'g') goto yy758;
+ }
+yy769:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy758;
+ if (yych >= ':') goto yy758;
+ } else {
+ if (yych <= 'F') goto yy770;
+ if (yych <= '`') goto yy758;
+ if (yych >= 'g') goto yy758;
+ }
+yy770:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych <= '@') {
+ if (yych <= '/') goto yy758;
+ if (yych <= '9') goto yy759;
+ goto yy758;
+ } else {
+ if (yych <= 'F') goto yy759;
+ if (yych <= '`') goto yy758;
+ if (yych <= 'f') goto yy759;
+ goto yy758;
}
- if (yych <= '\n') goto yy779;
- if (yych <= '"') goto yy780;
+yy771:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych <= '/') goto yy758;
+ if (yych >= '8') goto yy758;
++YYCURSOR;
- if (YYLIMIT <= YYCURSOR) YYFILL(1);
- yych = (YYCTYPE)*YYCURSOR;
- if (yych == '\n') goto yy779;
- goto yy783;
-}
-#line 713 "../src/parse/scanner_lex.re"
-
+#line 721 "../src/parse/scanner_lex.re"
+ { cs.push_back (unesc_oct (tok, cur)); continue; }
+#line 3592 "src/parse/scanner_lex.cc"
}
+#line 746 "../src/parse/scanner_lex.re"
-static void escape (std::string & dest, const std::string & src)
-{
- dest = src;
- size_t l = dest.length();
- for (size_t p = 0; p < l; ++p)
- {
- if (dest[p] == '\\')
- {
- dest.insert(++p, "\\");
- ++l;
- }
}
}
sourceline:
tok = cur;
-#line 3705 "src/parse/scanner_lex.cc"
+#line 3604 "src/parse/scanner_lex.cc"
{
YYCTYPE yych;
static const unsigned char yybm[] = {
if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
yych = (YYCTYPE)*YYCURSOR;
if (yych <= '!') {
- if (yych == '\n') goto yy790;
+ if (yych == '\n') goto yy778;
} else {
- if (yych <= '"') goto yy792;
- if (yych <= '0') goto yy788;
- if (yych <= '9') goto yy793;
+ if (yych <= '"') goto yy780;
+ if (yych <= '0') goto yy776;
+ if (yych <= '9') goto yy781;
}
-yy788:
+yy776:
++YYCURSOR;
-yy789:
-#line 758 "../src/parse/scanner_lex.re"
+yy777:
+#line 778 "../src/parse/scanner_lex.re"
{
goto sourceline;
}
-#line 3758 "src/parse/scanner_lex.cc"
-yy790:
+#line 3657 "src/parse/scanner_lex.cc"
+yy778:
++YYCURSOR;
-#line 746 "../src/parse/scanner_lex.re"
+#line 766 "../src/parse/scanner_lex.re"
{
if (cur == eof)
{
tok = cur;
return;
}
-#line 3774 "src/parse/scanner_lex.cc"
-yy792:
+#line 3673 "src/parse/scanner_lex.cc"
+yy780:
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych == '\n') goto yy789;
- goto yy798;
-yy793:
+ if (yych == '\n') goto yy777;
+ goto yy786;
+yy781:
++YYCURSOR;
yych = (YYCTYPE)*YYCURSOR;
- goto yy796;
-yy794:
-#line 735 "../src/parse/scanner_lex.re"
+ goto yy784;
+yy782:
+#line 755 "../src/parse/scanner_lex.re"
{
if (!s_to_u32_unsafe (tok, cur, cline))
{
}
goto sourceline;
}
-#line 3792 "src/parse/scanner_lex.cc"
-yy795:
+#line 3691 "src/parse/scanner_lex.cc"
+yy783:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = (YYCTYPE)*YYCURSOR;
-yy796:
+yy784:
if (yybm[0+yych] & 64) {
- goto yy795;
+ goto yy783;
}
- goto yy794;
-yy797:
+ goto yy782;
+yy785:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = (YYCTYPE)*YYCURSOR;
-yy798:
+yy786:
if (yybm[0+yych] & 128) {
- goto yy797;
+ goto yy785;
}
- if (yych <= '\n') goto yy799;
- if (yych <= '"') goto yy801;
- goto yy800;
-yy799:
+ if (yych <= '\n') goto yy787;
+ if (yych <= '"') goto yy789;
+ goto yy788;
+yy787:
YYCURSOR = YYMARKER;
- goto yy789;
-yy800:
+ goto yy777;
+yy788:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = (YYCTYPE)*YYCURSOR;
- if (yych == '\n') goto yy799;
- goto yy797;
-yy801:
+ if (yych == '\n') goto yy787;
+ goto yy785;
+yy789:
++YYCURSOR;
-#line 742 "../src/parse/scanner_lex.re"
+#line 762 "../src/parse/scanner_lex.re"
{
escape (in.file_name, std::string (tok + 1, tok_len () - 2)); // -2 to omit quotes
goto sourceline;
}
-#line 3829 "src/parse/scanner_lex.cc"
+#line 3728 "src/parse/scanner_lex.cc"
}
-#line 761 "../src/parse/scanner_lex.re"
+#line 781 "../src/parse/scanner_lex.re"
}