-/* Generated by re2c 0.16 on Mon Feb 13 12:10:06 2017 */
+/* Generated by re2c 0.16 on Fri Mar 3 02:03:51 2017 */
#line 1 "../src/conf/parse_opts.re"
#include "src/codegen/input_api.h"
#include "src/conf/msg.h"
case 'i': goto yy266;
case 'n': goto yy267;
case 'o': goto yy268;
- case 'r': goto yy269;
- case 's': goto yy270;
- case 't': goto yy271;
- case 'u': goto yy272;
- case 'v': goto yy273;
- case 'w': goto yy274;
+ case 'p': goto yy269;
+ case 'r': goto yy270;
+ case 's': goto yy271;
+ case 't': goto yy272;
+ case 'u': goto yy273;
+ case 'v': goto yy274;
+ case 'w': goto yy275;
default: goto yy258;
}
yy258:
error ("bad long option: %s", *argv);
return EXIT_FAIL;
}
-#line 1100 "src/conf/parse_opts.cc"
+#line 1101 "src/conf/parse_opts.cc"
yy260:
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych == 'i') goto yy275;
+ if (yych == 'i') goto yy276;
goto yy259;
yy261:
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych == 'a') goto yy277;
- if (yych == 'o') goto yy278;
+ if (yych == 'a') goto yy278;
+ if (yych == 'o') goto yy279;
goto yy259;
yy262:
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
if (yych <= 'f') {
if (yych <= 'd') goto yy259;
- if (yych <= 'e') goto yy279;
- goto yy280;
+ if (yych <= 'e') goto yy280;
+ goto yy281;
} else {
- if (yych == 'u') goto yy281;
+ if (yych == 'u') goto yy282;
goto yy259;
}
yy263:
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
if (yych <= 'c') {
- if (yych == 'a') goto yy282;
+ if (yych == 'a') goto yy283;
if (yych <= 'b') goto yy259;
- goto yy283;
+ goto yy284;
} else {
if (yych <= 'l') goto yy259;
- if (yych <= 'm') goto yy284;
- if (yych <= 'n') goto yy285;
+ if (yych <= 'm') goto yy285;
+ if (yych <= 'n') goto yy286;
goto yy259;
}
yy264:
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych == 'l') goto yy286;
+ if (yych == 'l') goto yy287;
goto yy259;
yy265:
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych == 'e') goto yy287;
+ if (yych == 'e') goto yy288;
goto yy259;
yy266:
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych == 'n') goto yy288;
+ if (yych == 'n') goto yy289;
goto yy259;
yy267:
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych == 'e') goto yy289;
- if (yych == 'o') goto yy290;
+ if (yych == 'e') goto yy290;
+ if (yych == 'o') goto yy291;
goto yy259;
yy268:
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych == 'u') goto yy291;
+ if (yych == 'u') goto yy292;
goto yy259;
yy269:
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych == 'e') goto yy292;
+ if (yych == 'o') goto yy293;
goto yy259;
yy270:
+ yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
+ if (yych == 'e') goto yy294;
+ goto yy259;
+yy271:
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
if (yych <= 'j') {
- if (yych == 'i') goto yy293;
+ if (yych == 'i') goto yy295;
goto yy259;
} else {
- if (yych <= 'k') goto yy294;
- if (yych == 't') goto yy295;
+ if (yych <= 'k') goto yy296;
+ if (yych == 't') goto yy297;
goto yy259;
}
-yy271:
- yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych == 'a') goto yy296;
- if (yych == 'y') goto yy297;
- goto yy259;
yy272:
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych == 'n') goto yy298;
- if (yych == 't') goto yy299;
+ if (yych == 'a') goto yy298;
+ if (yych == 'y') goto yy299;
goto yy259;
yy273:
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych == 'e') goto yy300;
+ if (yych == 'n') goto yy300;
+ if (yych == 't') goto yy301;
goto yy259;
yy274:
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych == 'i') goto yy301;
+ if (yych == 'e') goto yy302;
goto yy259;
yy275:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 't') goto yy302;
+ yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
+ if (yych == 'i') goto yy303;
+ goto yy259;
yy276:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych == 't') goto yy304;
+yy277:
YYCURSOR = YYMARKER;
goto yy259;
-yy277:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 's') goto yy303;
- goto yy276;
yy278:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'm') goto yy304;
- goto yy276;
+ if (yych == 's') goto yy305;
+ goto yy277;
yy279:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'b') goto yy305;
- goto yy276;
+ if (yych == 'm') goto yy306;
+ goto yy277;
yy280:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'a') goto yy306;
- goto yy276;
+ if (yych == 'b') goto yy307;
+ goto yy277;
yy281:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'm') goto yy307;
- goto yy276;
+ if (yych == 'a') goto yy308;
+ goto yy277;
yy282:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'g') goto yy308;
- goto yy276;
+ if (yych == 'm') goto yy309;
+ goto yy277;
yy283:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'b') goto yy309;
- goto yy276;
+ if (yych == 'g') goto yy310;
+ goto yy277;
yy284:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'i') goto yy310;
- if (yych == 'p') goto yy311;
- goto yy276;
+ if (yych == 'b') goto yy311;
+ goto yy277;
yy285:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'c') goto yy312;
- goto yy276;
+ if (yych == 'i') goto yy312;
+ if (yych == 'p') goto yy313;
+ goto yy277;
yy286:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'e') goto yy313;
- goto yy276;
+ if (yych == 'c') goto yy314;
+ goto yy277;
yy287:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'l') goto yy314;
- goto yy276;
+ if (yych == 'e') goto yy315;
+ goto yy277;
yy288:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'p') goto yy315;
- goto yy276;
+ if (yych == 'l') goto yy316;
+ goto yy277;
yy289:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 's') goto yy316;
- goto yy276;
+ if (yych == 'p') goto yy317;
+ goto yy277;
yy290:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == '-') goto yy317;
- goto yy276;
+ if (yych == 's') goto yy318;
+ goto yy277;
yy291:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 't') goto yy318;
- goto yy276;
+ if (yych == '-') goto yy319;
+ goto yy277;
yy292:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'u') goto yy319;
- goto yy276;
+ if (yych == 't') goto yy320;
+ goto yy277;
yy293:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'n') goto yy320;
- goto yy276;
+ if (yych == 's') goto yy321;
+ goto yy277;
yy294:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'e') goto yy321;
- goto yy276;
+ if (yych == 'u') goto yy322;
+ goto yy277;
yy295:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'a') goto yy322;
- if (yych == 'o') goto yy323;
- goto yy276;
+ if (yych == 'n') goto yy323;
+ goto yy277;
yy296:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'g') goto yy324;
- goto yy276;
+ if (yych == 'e') goto yy324;
+ goto yy277;
yy297:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'p') goto yy325;
- goto yy276;
+ if (yych == 'a') goto yy325;
+ if (yych == 'o') goto yy326;
+ goto yy277;
yy298:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'i') goto yy326;
- goto yy276;
+ if (yych == 'g') goto yy327;
+ goto yy277;
yy299:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'f') goto yy327;
- goto yy276;
+ if (yych == 'p') goto yy328;
+ goto yy277;
yy300:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'r') goto yy328;
- goto yy276;
+ if (yych == 'i') goto yy329;
+ goto yy277;
yy301:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'd') goto yy329;
- goto yy276;
+ if (yych == 'f') goto yy330;
+ goto yy277;
yy302:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == '-') goto yy330;
- goto yy276;
+ if (yych == 'r') goto yy331;
+ goto yy277;
yy303:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'e') goto yy331;
- goto yy276;
+ if (yych == 'd') goto yy332;
+ goto yy277;
yy304:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'p') goto yy332;
- goto yy276;
+ if (yych == '-') goto yy333;
+ goto yy277;
yy305:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'u') goto yy333;
- goto yy276;
+ if (yych == 'e') goto yy334;
+ goto yy277;
yy306:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == '-') goto yy334;
- goto yy276;
+ if (yych == 'p') goto yy335;
+ goto yy277;
yy307:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'p') goto yy335;
- goto yy276;
+ if (yych == 'u') goto yy336;
+ goto yy277;
yy308:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'e') goto yy336;
- goto yy276;
+ if (yych == '-') goto yy337;
+ goto yy277;
yy309:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy337;
- goto yy276;
+ if (yych == 'p') goto yy338;
+ goto yy277;
yy310:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 't') goto yy339;
- goto yy276;
+ if (yych == 'e') goto yy339;
+ goto yy277;
yy311:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 't') goto yy340;
- goto yy276;
+ if (yych <= 0x00) goto yy340;
+ goto yy277;
yy312:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'o') goto yy341;
- goto yy276;
+ if (yych == 't') goto yy342;
+ goto yy277;
yy313:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'x') goto yy342;
- goto yy276;
+ if (yych == 't') goto yy343;
+ goto yy277;
yy314:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'p') goto yy343;
- goto yy276;
+ if (yych == 'o') goto yy344;
+ goto yy277;
yy315:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'u') goto yy344;
- goto yy276;
+ if (yych == 'x') goto yy345;
+ goto yy277;
yy316:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 't') goto yy345;
- goto yy276;
+ if (yych == 'p') goto yy346;
+ goto yy277;
yy317:
yych = (YYCTYPE)*++YYCURSOR;
- switch (yych) {
- case 'd': goto yy346;
- case 'g': goto yy347;
- case 'l': goto yy348;
- case 'v': goto yy349;
- default: goto yy276;
- }
+ if (yych == 'u') goto yy347;
+ goto yy277;
yy318:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'p') goto yy350;
- goto yy276;
+ if (yych == 't') goto yy348;
+ goto yy277;
yy319:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 's') goto yy351;
- goto yy276;
+ switch (yych) {
+ case 'd': goto yy349;
+ case 'g': goto yy350;
+ case 'l': goto yy351;
+ case 'v': goto yy352;
+ default: goto yy277;
+ }
yy320:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'g') goto yy352;
- goto yy276;
+ if (yych == 'p') goto yy353;
+ goto yy277;
yy321:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'l') goto yy353;
- goto yy276;
+ if (yych == 'i') goto yy354;
+ goto yy277;
yy322:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'r') goto yy354;
- goto yy276;
+ if (yych == 's') goto yy355;
+ goto yy277;
yy323:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'r') goto yy355;
- goto yy276;
+ if (yych == 'g') goto yy356;
+ goto yy277;
yy324:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 's') goto yy356;
- goto yy276;
+ if (yych == 'l') goto yy357;
+ goto yy277;
yy325:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'e') goto yy357;
- goto yy276;
+ if (yych == 'r') goto yy358;
+ goto yy277;
yy326:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'c') goto yy358;
- goto yy276;
+ if (yych == 'r') goto yy359;
+ goto yy277;
yy327:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == '-') goto yy359;
- goto yy276;
+ if (yych == 's') goto yy360;
+ goto yy277;
yy328:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'n') goto yy360;
- if (yych == 's') goto yy361;
- goto yy276;
+ if (yych == 'e') goto yy361;
+ goto yy277;
yy329:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'e') goto yy362;
- goto yy276;
+ if (yych == 'c') goto yy362;
+ goto yy277;
yy330:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'v') goto yy363;
- goto yy276;
+ if (yych == '-') goto yy363;
+ goto yy277;
yy331:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == '-') goto yy364;
- goto yy276;
+ if (yych == 'n') goto yy364;
+ if (yych == 's') goto yy365;
+ goto yy277;
yy332:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'u') goto yy365;
- goto yy276;
+ if (yych == 'e') goto yy366;
+ goto yy277;
yy333:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'g') goto yy366;
- goto yy276;
+ if (yych == 'v') goto yy367;
+ goto yy277;
yy334:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'm') goto yy367;
- goto yy276;
+ if (yych == '-') goto yy368;
+ goto yy277;
yy335:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == '-') goto yy368;
- goto yy276;
+ if (yych == 'u') goto yy369;
+ goto yy277;
yy336:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'r') goto yy369;
- goto yy276;
+ if (yych == 'g') goto yy370;
+ goto yy277;
yy337:
- ++YYCURSOR;
-#line 152 "../src/conf/parse_opts.re"
- { if (!opts.set_encoding (Enc::EBCDIC)) { error_encoding (); return EXIT_FAIL; } goto opt; }
-#line 1443 "src/conf/parse_opts.cc"
-yy339:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == '-') goto yy370;
- goto yy276;
-yy340:
+ if (yych == 'm') goto yy371;
+ goto yy277;
+yy338:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'y') goto yy371;
- goto yy276;
-yy341:
+ if (yych == '-') goto yy372;
+ goto yy277;
+yy339:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'd') goto yy372;
- goto yy276;
+ if (yych == 'r') goto yy373;
+ goto yy277;
+yy340:
+ ++YYCURSOR;
+#line 153 "../src/conf/parse_opts.re"
+ { if (!opts.set_encoding (Enc::EBCDIC)) { error_encoding (); return EXIT_FAIL; } goto opt; }
+#line 1456 "src/conf/parse_opts.cc"
yy342:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == '-') goto yy373;
- goto yy276;
+ if (yych == '-') goto yy374;
+ goto yy277;
yy343:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy374;
- goto yy276;
+ if (yych == 'y') goto yy375;
+ goto yy277;
yy344:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 't') goto yy376;
- goto yy276;
+ if (yych == 'd') goto yy376;
+ goto yy277;
yy345:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'e') goto yy377;
- goto yy276;
+ if (yych == '-') goto yy377;
+ goto yy277;
yy346:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'e') goto yy378;
- goto yy276;
+ if (yych <= 0x00) goto yy378;
+ goto yy277;
yy347:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'e') goto yy379;
- goto yy276;
+ if (yych == 't') goto yy380;
+ goto yy277;
yy348:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'o') goto yy380;
- goto yy276;
+ if (yych == 'e') goto yy381;
+ goto yy277;
yy349:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'e') goto yy381;
- goto yy276;
+ if (yych == 'e') goto yy382;
+ goto yy277;
yy350:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'u') goto yy382;
- goto yy276;
+ if (yych == 'e') goto yy383;
+ goto yy277;
yy351:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'a') goto yy383;
- goto yy276;
+ if (yych == 'o') goto yy384;
+ goto yy277;
yy352:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'l') goto yy384;
- goto yy276;
+ if (yych == 'e') goto yy385;
+ goto yy277;
yy353:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'e') goto yy385;
- goto yy276;
+ if (yych == 'u') goto yy386;
+ goto yy277;
yy354:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 't') goto yy386;
- goto yy276;
+ if (yych == 'x') goto yy387;
+ goto yy277;
yy355:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'a') goto yy387;
- goto yy276;
+ if (yych == 'a') goto yy388;
+ goto yy277;
yy356:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy388;
- goto yy276;
+ if (yych == 'l') goto yy389;
+ goto yy277;
yy357:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == '-') goto yy390;
- goto yy276;
+ if (yych == 'e') goto yy390;
+ goto yy277;
yy358:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'o') goto yy391;
- goto yy276;
+ if (yych == 't') goto yy391;
+ goto yy277;
yy359:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == '1') goto yy392;
- if (yych == '8') goto yy393;
- goto yy276;
+ if (yych == 'a') goto yy392;
+ goto yy277;
yy360:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'u') goto yy394;
- goto yy276;
+ if (yych <= 0x00) goto yy393;
+ goto yy277;
yy361:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'i') goto yy395;
- goto yy276;
+ if (yych == '-') goto yy395;
+ goto yy277;
yy362:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == '-') goto yy396;
- goto yy276;
+ if (yych == 'o') goto yy396;
+ goto yy277;
yy363:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'e') goto yy397;
- goto yy276;
+ if (yych == '1') goto yy397;
+ if (yych == '8') goto yy398;
+ goto yy277;
yy364:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'i') goto yy398;
- goto yy276;
+ if (yych == 'u') goto yy399;
+ goto yy277;
yy365:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 't') goto yy399;
- goto yy276;
+ if (yych == 'i') goto yy400;
+ goto yy277;
yy366:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == '-') goto yy400;
- goto yy276;
+ if (yych == '-') goto yy401;
+ goto yy277;
yy367:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'i') goto yy401;
- goto yy276;
+ if (yych == 'e') goto yy402;
+ goto yy277;
yy368:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 'c') {
- if (yych == 'a') goto yy402;
- goto yy276;
- } else {
- if (yych <= 'd') goto yy403;
- if (yych == 'n') goto yy404;
- goto yy276;
- }
+ if (yych == 'i') goto yy403;
+ goto yy277;
yy369:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == '-') goto yy405;
- goto yy276;
+ if (yych == 't') goto yy404;
+ goto yy277;
yy370:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'd') goto yy406;
- goto yy276;
+ if (yych == '-') goto yy405;
+ goto yy277;
yy371:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == '-') goto yy407;
- goto yy276;
+ if (yych == 'i') goto yy406;
+ goto yy277;
yy372:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'i') goto yy408;
- goto yy276;
+ if (yych <= 'c') {
+ if (yych == 'a') goto yy407;
+ goto yy277;
+ } else {
+ if (yych <= 'd') goto yy408;
+ if (yych == 'n') goto yy409;
+ goto yy277;
+ }
yy373:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 's') goto yy409;
- goto yy276;
+ if (yych == '-') goto yy410;
+ goto yy277;
yy374:
- ++YYCURSOR;
-#line 131 "../src/conf/parse_opts.re"
- { usage (); return EXIT_OK; }
-#line 1595 "src/conf/parse_opts.cc"
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych == 'd') goto yy411;
+ goto yy277;
+yy375:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych == '-') goto yy412;
+ goto yy277;
yy376:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy410;
- goto yy276;
+ if (yych == 'i') goto yy413;
+ goto yy277;
yy377:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'd') goto yy412;
- goto yy276;
+ if (yych == 's') goto yy414;
+ goto yy277;
yy378:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'b') goto yy413;
- goto yy276;
-yy379:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'n') goto yy414;
- goto yy276;
+ ++YYCURSOR;
+#line 131 "../src/conf/parse_opts.re"
+ { usage (); return EXIT_OK; }
+#line 1612 "src/conf/parse_opts.cc"
yy380:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'o') goto yy415;
- goto yy276;
+ if (yych <= 0x00) goto yy415;
+ goto yy277;
yy381:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'r') goto yy416;
- goto yy276;
+ if (yych == 'd') goto yy417;
+ goto yy277;
yy382:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 't') goto yy417;
- goto yy276;
+ if (yych == 'b') goto yy418;
+ goto yy277;
yy383:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'b') goto yy418;
- goto yy276;
+ if (yych == 'n') goto yy419;
+ goto yy277;
yy384:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'e') goto yy419;
- goto yy276;
+ if (yych == 'o') goto yy420;
+ goto yy277;
yy385:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 't') goto yy420;
- goto yy276;
+ if (yych == 'r') goto yy421;
+ goto yy277;
yy386:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == '-') goto yy421;
- goto yy276;
+ if (yych == 't') goto yy422;
+ goto yy277;
yy387:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'b') goto yy422;
- goto yy276;
+ if (yych == '-') goto yy423;
+ goto yy277;
yy388:
- ++YYCURSOR;
-#line 149 "../src/conf/parse_opts.re"
- { opts.set_tags (true); goto opt; }
-#line 1648 "src/conf/parse_opts.cc"
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych == 'b') goto yy424;
+ goto yy277;
+yy389:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych == 'e') goto yy425;
+ goto yy277;
yy390:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'h') goto yy423;
- goto yy276;
+ if (yych == 't') goto yy426;
+ goto yy277;
yy391:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'd') goto yy424;
- goto yy276;
+ if (yych == '-') goto yy427;
+ goto yy277;
yy392:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == '6') goto yy425;
- goto yy276;
+ if (yych == 'b') goto yy428;
+ goto yy277;
yy393:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy426;
- goto yy276;
-yy394:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'm') goto yy428;
- goto yy276;
+ ++YYCURSOR;
+#line 149 "../src/conf/parse_opts.re"
+ { opts.set_tags (true); goto opt; }
+#line 1669 "src/conf/parse_opts.cc"
yy395:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'o') goto yy429;
- goto yy276;
+ if (yych == 'h') goto yy429;
+ goto yy277;
yy396:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'c') goto yy430;
- goto yy276;
+ if (yych == 'd') goto yy430;
+ goto yy277;
yy397:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'c') goto yy431;
- goto yy276;
+ if (yych == '6') goto yy431;
+ goto yy277;
yy398:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'n') goto yy432;
- goto yy276;
+ if (yych <= 0x00) goto yy432;
+ goto yy277;
yy399:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'e') goto yy433;
- goto yy276;
+ if (yych == 'm') goto yy434;
+ goto yy277;
yy400:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'o') goto yy434;
- goto yy276;
+ if (yych == 'o') goto yy435;
+ goto yy277;
yy401:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'n') goto yy435;
- goto yy276;
+ if (yych == 'c') goto yy436;
+ goto yy277;
yy402:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'd') goto yy436;
- goto yy276;
+ if (yych == 'c') goto yy437;
+ goto yy277;
yy403:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'f') goto yy437;
- goto yy276;
+ if (yych == 'n') goto yy438;
+ goto yy277;
yy404:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'f') goto yy438;
- goto yy276;
+ if (yych == 'e') goto yy439;
+ goto yy277;
yy405:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 's') goto yy439;
- goto yy276;
+ if (yych == 'o') goto yy440;
+ goto yy277;
yy406:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'o') goto yy440;
- goto yy276;
+ if (yych == 'n') goto yy441;
+ goto yy277;
yy407:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'c') goto yy441;
- goto yy276;
+ if (yych == 'd') goto yy442;
+ goto yy277;
yy408:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'n') goto yy442;
- goto yy276;
+ if (yych == 'f') goto yy443;
+ goto yy277;
yy409:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'y') goto yy443;
- goto yy276;
+ if (yych == 'f') goto yy444;
+ goto yy277;
yy410:
- ++YYCURSOR;
-#line 160 "../src/conf/parse_opts.re"
- { goto opt_input; }
-#line 1733 "src/conf/parse_opts.cc"
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych == 's') goto yy445;
+ goto yy277;
+yy411:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych == 'o') goto yy446;
+ goto yy277;
yy412:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == '-') goto yy444;
- goto yy276;
+ if (yych == 'c') goto yy447;
+ goto yy277;
yy413:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'u') goto yy445;
- goto yy276;
+ if (yych == 'n') goto yy448;
+ goto yy277;
yy414:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'e') goto yy446;
- goto yy276;
+ if (yych == 'y') goto yy449;
+ goto yy277;
yy415:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'k') goto yy447;
- goto yy276;
-yy416:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 's') goto yy448;
- goto yy276;
+ ++YYCURSOR;
+#line 161 "../src/conf/parse_opts.re"
+ { goto opt_input; }
+#line 1754 "src/conf/parse_opts.cc"
yy417:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy449;
- goto yy276;
+ if (yych == '-') goto yy450;
+ goto yy277;
yy418:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'l') goto yy451;
- goto yy276;
+ if (yych == 'u') goto yy451;
+ goto yy277;
yy419:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == '-') goto yy452;
- goto yy276;
+ if (yych == 'e') goto yy452;
+ goto yy277;
yy420:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'o') goto yy453;
- goto yy276;
+ if (yych == 'k') goto yy453;
+ goto yy277;
yy421:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'c') goto yy454;
- goto yy276;
+ if (yych == 's') goto yy454;
+ goto yy277;
yy422:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'l') goto yy455;
- goto yy276;
+ if (yych <= 0x00) goto yy455;
+ goto yy277;
yy423:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'e') goto yy456;
- goto yy276;
+ if (yych == 'c') goto yy457;
+ goto yy277;
yy424:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'e') goto yy457;
- goto yy276;
+ if (yych == 'l') goto yy458;
+ goto yy277;
yy425:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy458;
- goto yy276;
+ if (yych == '-') goto yy459;
+ goto yy277;
yy426:
- ++YYCURSOR;
-#line 156 "../src/conf/parse_opts.re"
- { if (!opts.set_encoding (Enc::UTF8)) { error_encoding (); return EXIT_FAIL; } goto opt; }
-#line 1794 "src/conf/parse_opts.cc"
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych == 'o') goto yy460;
+ goto yy277;
+yy427:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych == 'c') goto yy461;
+ goto yy277;
yy428:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy460;
- goto yy276;
+ if (yych == 'l') goto yy462;
+ goto yy277;
yy429:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'n') goto yy462;
- goto yy276;
+ if (yych == 'e') goto yy463;
+ goto yy277;
yy430:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'h') goto yy463;
- goto yy276;
+ if (yych == 'e') goto yy464;
+ goto yy277;
yy431:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 't') goto yy464;
- goto yy276;
+ if (yych <= 0x00) goto yy465;
+ goto yy277;
yy432:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 's') goto yy465;
- if (yych == 'v') goto yy466;
- goto yy276;
-yy433:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'd') goto yy467;
- goto yy276;
+ ++YYCURSOR;
+#line 157 "../src/conf/parse_opts.re"
+ { if (!opts.set_encoding (Enc::UTF8)) { error_encoding (); return EXIT_FAIL; } goto opt; }
+#line 1819 "src/conf/parse_opts.cc"
yy434:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'u') goto yy468;
- goto yy276;
+ if (yych <= 0x00) goto yy467;
+ goto yy277;
yy435:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'i') goto yy469;
- goto yy276;
+ if (yych == 'n') goto yy469;
+ goto yy277;
yy436:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'f') goto yy470;
- goto yy276;
+ if (yych == 'h') goto yy470;
+ goto yy277;
yy437:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'a') goto yy471;
- goto yy276;
+ if (yych == 't') goto yy471;
+ goto yy277;
yy438:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'a') goto yy472;
- goto yy276;
+ if (yych == 's') goto yy472;
+ if (yych == 'v') goto yy473;
+ goto yy277;
yy439:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'k') goto yy473;
- goto yy276;
+ if (yych == 'd') goto yy474;
+ goto yy277;
yy440:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 't') goto yy474;
- goto yy276;
+ if (yych == 'u') goto yy475;
+ goto yy277;
yy441:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'l') goto yy475;
- goto yy276;
+ if (yych == 'i') goto yy476;
+ goto yy277;
yy442:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'g') goto yy476;
- goto yy276;
+ if (yych == 'f') goto yy477;
+ goto yy277;
yy443:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'n') goto yy477;
- goto yy276;
+ if (yych == 'a') goto yy478;
+ goto yy277;
yy444:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'i') goto yy478;
- goto yy276;
+ if (yych == 'a') goto yy479;
+ goto yy277;
yy445:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'g') goto yy479;
- goto yy276;
+ if (yych == 'k') goto yy480;
+ goto yy277;
yy446:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'r') goto yy480;
- goto yy276;
+ if (yych == 't') goto yy481;
+ goto yy277;
yy447:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'a') goto yy481;
- goto yy276;
+ if (yych == 'l') goto yy482;
+ goto yy277;
yy448:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'i') goto yy482;
- goto yy276;
+ if (yych == 'g') goto yy483;
+ goto yy277;
yy449:
- ++YYCURSOR;
-#line 157 "../src/conf/parse_opts.re"
- { if (!next (YYCURSOR, argv)) { error_arg ("-o, --output"); return EXIT_FAIL; } goto opt_output; }
-#line 1884 "src/conf/parse_opts.cc"
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych == 'n') goto yy484;
+ goto yy277;
+yy450:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych == 'i') goto yy485;
+ goto yy277;
yy451:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'e') goto yy483;
- goto yy276;
+ if (yych == 'g') goto yy486;
+ goto yy277;
yy452:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'p') goto yy484;
- goto yy276;
+ if (yych == 'r') goto yy487;
+ goto yy277;
yy453:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'n') goto yy485;
- goto yy276;
+ if (yych == 'a') goto yy488;
+ goto yy277;
yy454:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'o') goto yy486;
- goto yy276;
+ if (yych == 'i') goto yy489;
+ goto yy277;
yy455:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'e') goto yy487;
- goto yy276;
-yy456:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'a') goto yy488;
- goto yy276;
+ ++YYCURSOR;
+#line 158 "../src/conf/parse_opts.re"
+ { if (!next (YYCURSOR, argv)) { error_arg ("-o, --output"); return EXIT_FAIL; } goto opt_output; }
+#line 1909 "src/conf/parse_opts.cc"
yy457:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy489;
- goto yy276;
+ if (yych == 'a') goto yy490;
+ goto yy277;
yy458:
- ++YYCURSOR;
-#line 155 "../src/conf/parse_opts.re"
- { if (!opts.set_encoding (Enc::UTF16)) { error_encoding (); return EXIT_FAIL; } goto opt; }
-#line 1917 "src/conf/parse_opts.cc"
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych == 'e') goto yy491;
+ goto yy277;
+yy459:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych == 'p') goto yy492;
+ goto yy277;
yy460:
- ++YYCURSOR;
-#line 133 "../src/conf/parse_opts.re"
- { vernum (); return EXIT_OK; }
-#line 1922 "src/conf/parse_opts.cc"
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych == 'n') goto yy493;
+ goto yy277;
+yy461:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych == 'o') goto yy494;
+ goto yy277;
yy462:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy491;
- goto yy276;
+ if (yych == 'e') goto yy495;
+ goto yy277;
yy463:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'a') goto yy493;
- goto yy276;
+ if (yych == 'a') goto yy496;
+ goto yy277;
yy464:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'o') goto yy494;
- goto yy276;
+ if (yych <= 0x00) goto yy497;
+ goto yy277;
yy465:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'e') goto yy495;
- goto yy276;
-yy466:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'e') goto yy496;
- goto yy276;
+ ++YYCURSOR;
+#line 156 "../src/conf/parse_opts.re"
+ { if (!opts.set_encoding (Enc::UTF16)) { error_encoding (); return EXIT_FAIL; } goto opt; }
+#line 1946 "src/conf/parse_opts.cc"
yy467:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych == '-') goto yy497;
- goto yy276;
-yy468:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 't') goto yy498;
- goto yy276;
+ ++YYCURSOR;
+#line 133 "../src/conf/parse_opts.re"
+ { vernum (); return EXIT_OK; }
+#line 1951 "src/conf/parse_opts.cc"
yy469:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'm') goto yy499;
- goto yy276;
+ if (yych <= 0x00) goto yy499;
+ goto yy277;
yy470:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'a') goto yy500;
- goto yy276;
+ if (yych == 'a') goto yy501;
+ goto yy277;
yy471:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == '-') goto yy501;
- goto yy276;
+ if (yych == 'o') goto yy502;
+ goto yy277;
yy472:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy502;
- goto yy276;
+ if (yych == 'e') goto yy503;
+ goto yy277;
yy473:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'i') goto yy504;
- goto yy276;
+ if (yych == 'e') goto yy504;
+ goto yy277;
yy474:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy505;
- goto yy276;
+ if (yych == '-') goto yy505;
+ goto yy277;
yy475:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'a') goto yy507;
- goto yy276;
+ if (yych == 't') goto yy506;
+ goto yy277;
yy476:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == '-') goto yy508;
- goto yy276;
+ if (yych == 'm') goto yy507;
+ goto yy277;
yy477:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 't') goto yy509;
- goto yy276;
+ if (yych == 'a') goto yy508;
+ goto yy277;
yy478:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'f') goto yy510;
- goto yy276;
+ if (yych == '-') goto yy509;
+ goto yy277;
yy479:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == '-') goto yy511;
- goto yy276;
+ if (yych <= 0x00) goto yy510;
+ goto yy277;
yy480:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'a') goto yy512;
- goto yy276;
+ if (yych == 'i') goto yy512;
+ goto yy277;
yy481:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'h') goto yy513;
- goto yy276;
+ if (yych <= 0x00) goto yy513;
+ goto yy277;
yy482:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'o') goto yy514;
- goto yy276;
+ if (yych == 'a') goto yy515;
+ goto yy277;
yy483:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy515;
- goto yy276;
+ if (yych == '-') goto yy516;
+ goto yy277;
yy484:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'a') goto yy517;
- goto yy276;
+ if (yych == 't') goto yy517;
+ goto yy277;
yy485:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy518;
- goto yy276;
+ if (yych == 'f') goto yy518;
+ goto yy277;
yy486:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'n') goto yy520;
- goto yy276;
+ if (yych == '-') goto yy519;
+ goto yy277;
yy487:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == '-') goto yy521;
- goto yy276;
+ if (yych == 'a') goto yy520;
+ goto yy277;
yy488:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'd') goto yy522;
- goto yy276;
+ if (yych == 'h') goto yy521;
+ goto yy277;
yy489:
- ++YYCURSOR;
-#line 153 "../src/conf/parse_opts.re"
- { if (!opts.set_encoding (Enc::UTF32)) { error_encoding (); return EXIT_FAIL; } goto opt; }
-#line 2035 "src/conf/parse_opts.cc"
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych == 'o') goto yy522;
+ goto yy277;
+yy490:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych == 'p') goto yy523;
+ goto yy277;
yy491:
- ++YYCURSOR;
-#line 132 "../src/conf/parse_opts.re"
- { version (); return EXIT_OK; }
-#line 2040 "src/conf/parse_opts.cc"
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych <= 0x00) goto yy524;
+ goto yy277;
+yy492:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych == 'a') goto yy526;
+ goto yy277;
yy493:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'r') goto yy523;
- goto yy276;
+ if (yych <= 0x00) goto yy527;
+ goto yy277;
yy494:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'r') goto yy524;
- goto yy276;
+ if (yych == 'n') goto yy529;
+ goto yy277;
yy495:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'n') goto yy525;
- goto yy276;
+ if (yych == '-') goto yy530;
+ goto yy277;
yy496:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'r') goto yy526;
- goto yy276;
+ if (yych == 'd') goto yy531;
+ goto yy277;
yy497:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'g') goto yy527;
- goto yy276;
-yy498:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'p') goto yy528;
- goto yy276;
+ ++YYCURSOR;
+#line 154 "../src/conf/parse_opts.re"
+ { if (!opts.set_encoding (Enc::UTF32)) { error_encoding (); return EXIT_FAIL; } goto opt; }
+#line 2068 "src/conf/parse_opts.cc"
yy499:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'i') goto yy529;
- goto yy276;
-yy500:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy530;
- goto yy276;
+ ++YYCURSOR;
+#line 132 "../src/conf/parse_opts.re"
+ { version (); return EXIT_OK; }
+#line 2073 "src/conf/parse_opts.cc"
yy501:
yych = (YYCTYPE)*++YYCURSOR;
- switch (yych) {
- case 'd': goto yy532;
- case 'm': goto yy533;
- case 'r': goto yy534;
- case 't': goto yy535;
- default: goto yy276;
- }
+ if (yych == 'r') goto yy532;
+ goto yy277;
yy502:
- ++YYCURSOR;
-#line 165 "../src/conf/parse_opts.re"
- { opts.set_dump_nfa(true); goto opt; }
-#line 2086 "src/conf/parse_opts.cc"
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych == 'r') goto yy533;
+ goto yy277;
+yy503:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych == 'n') goto yy534;
+ goto yy277;
yy504:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'p') goto yy536;
- goto yy276;
+ if (yych == 'r') goto yy535;
+ goto yy277;
yy505:
- ++YYCURSOR;
-#line 137 "../src/conf/parse_opts.re"
- { opts.set_target (opt_t::DOT); goto opt; }
-#line 2095 "src/conf/parse_opts.cc"
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych == 'g') goto yy536;
+ goto yy277;
+yy506:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych == 'p') goto yy537;
+ goto yy277;
yy507:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 's') goto yy537;
- goto yy276;
+ if (yych == 'i') goto yy538;
+ goto yy277;
yy508:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'p') goto yy538;
- goto yy276;
+ if (yych <= 0x00) goto yy539;
+ goto yy277;
yy509:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'a') goto yy539;
- goto yy276;
+ switch (yych) {
+ case 'd': goto yy541;
+ case 'm': goto yy542;
+ case 'r': goto yy543;
+ case 't': goto yy544;
+ default: goto yy277;
+ }
yy510:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 's') goto yy540;
- goto yy276;
-yy511:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'i') goto yy541;
- goto yy276;
+ ++YYCURSOR;
+#line 166 "../src/conf/parse_opts.re"
+ { opts.set_dump_nfa(true); goto opt; }
+#line 2119 "src/conf/parse_opts.cc"
yy512:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 't') goto yy542;
- goto yy276;
+ if (yych == 'p') goto yy545;
+ goto yy277;
yy513:
+ ++YYCURSOR;
+#line 137 "../src/conf/parse_opts.re"
+ { opts.set_target (opt_t::DOT); goto opt; }
+#line 2128 "src/conf/parse_opts.cc"
+yy515:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'e') goto yy543;
- goto yy276;
-yy514:
+ if (yych == 's') goto yy546;
+ goto yy277;
+yy516:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'n') goto yy544;
- goto yy276;
-yy515:
- ++YYCURSOR;
-#line 142 "../src/conf/parse_opts.re"
- { opts.set_rFlag (true); goto opt; }
-#line 2132 "src/conf/parse_opts.cc"
+ if (yych == 'p') goto yy547;
+ goto yy277;
yy517:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 's') goto yy545;
- goto yy276;
+ if (yych == 'a') goto yy548;
+ goto yy277;
yy518:
- ++YYCURSOR;
-#line 148 "../src/conf/parse_opts.re"
- { opts.set_target (opt_t::SKELETON); goto opt; }
-#line 2141 "src/conf/parse_opts.cc"
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych == 's') goto yy549;
+ goto yy277;
+yy519:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych == 'i') goto yy550;
+ goto yy277;
yy520:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'd') goto yy546;
- goto yy276;
+ if (yych == 't') goto yy551;
+ goto yy277;
yy521:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 's') goto yy547;
- goto yy276;
+ if (yych == 'e') goto yy552;
+ goto yy277;
yy522:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'e') goto yy548;
- goto yy276;
+ if (yych == 'n') goto yy553;
+ goto yy277;
yy523:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 's') goto yy549;
- goto yy276;
+ if (yych == 't') goto yy554;
+ goto yy277;
yy524:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 's') goto yy550;
- goto yy276;
-yy525:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 's') goto yy551;
- goto yy276;
+ ++YYCURSOR;
+#line 142 "../src/conf/parse_opts.re"
+ { opts.set_rFlag (true); goto opt; }
+#line 2169 "src/conf/parse_opts.cc"
yy526:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 't') goto yy552;
- goto yy276;
+ if (yych == 's') goto yy555;
+ goto yy277;
yy527:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'o') goto yy553;
- goto yy276;
-yy528:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'u') goto yy554;
- goto yy276;
+ ++YYCURSOR;
+#line 148 "../src/conf/parse_opts.re"
+ { opts.set_target (opt_t::SKELETON); goto opt; }
+#line 2178 "src/conf/parse_opts.cc"
yy529:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'z') goto yy555;
- goto yy276;
+ if (yych == 'd') goto yy556;
+ goto yy277;
yy530:
- ++YYCURSOR;
-#line 170 "../src/conf/parse_opts.re"
- { opts.set_dump_adfa(true); goto opt; }
-#line 2186 "src/conf/parse_opts.cc"
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych == 's') goto yy557;
+ goto yy277;
+yy531:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych == 'e') goto yy558;
+ goto yy277;
yy532:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'e') goto yy556;
- goto yy276;
+ if (yych == 's') goto yy559;
+ goto yy277;
yy533:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'i') goto yy557;
- goto yy276;
+ if (yych == 's') goto yy560;
+ goto yy277;
yy534:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'a') goto yy558;
- goto yy276;
+ if (yych == 's') goto yy561;
+ goto yy277;
yy535:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'a') goto yy559;
- goto yy276;
+ if (yych == 't') goto yy562;
+ goto yy277;
yy536:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy560;
- goto yy276;
+ if (yych == 'o') goto yy563;
+ goto yy277;
yy537:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 's') goto yy562;
- goto yy276;
+ if (yych == 'u') goto yy564;
+ goto yy277;
yy538:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'o') goto yy563;
- goto yy276;
+ if (yych == 'z') goto yy565;
+ goto yy277;
yy539:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'x') goto yy564;
- goto yy276;
-yy540:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy565;
- goto yy276;
+ ++YYCURSOR;
+#line 171 "../src/conf/parse_opts.re"
+ { opts.set_dump_adfa(true); goto opt; }
+#line 2223 "src/conf/parse_opts.cc"
yy541:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'n') goto yy567;
- goto yy276;
+ if (yych == 'e') goto yy566;
+ goto yy277;
yy542:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'i') goto yy568;
- goto yy276;
+ if (yych == 'i') goto yy567;
+ goto yy277;
yy543:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'a') goto yy569;
- goto yy276;
+ if (yych == 'a') goto yy568;
+ goto yy277;
yy544:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy570;
- goto yy276;
+ if (yych == 'a') goto yy569;
+ goto yy277;
yy545:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 's') goto yy572;
- goto yy276;
+ if (yych <= 0x00) goto yy570;
+ goto yy277;
yy546:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'i') goto yy573;
- goto yy276;
+ if (yych == 's') goto yy572;
+ goto yy277;
yy547:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 't') goto yy574;
- goto yy276;
+ if (yych == 'o') goto yy573;
+ goto yy277;
yy548:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'r') goto yy575;
- goto yy276;
+ if (yych == 'x') goto yy574;
+ goto yy277;
yy549:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy576;
- goto yy276;
+ if (yych <= 0x00) goto yy575;
+ goto yy277;
yy550:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy578;
- goto yy276;
+ if (yych == 'n') goto yy577;
+ goto yy277;
yy551:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'i') goto yy580;
- goto yy276;
+ if (yych == 'i') goto yy578;
+ goto yy277;
yy552:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'e') goto yy581;
- goto yy276;
+ if (yych == 'a') goto yy579;
+ goto yy277;
yy553:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 't') goto yy582;
- goto yy276;
+ if (yych <= 0x00) goto yy580;
+ goto yy277;
yy554:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 't') goto yy583;
- goto yy276;
+ if (yych == 'u') goto yy582;
+ goto yy277;
yy555:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'a') goto yy584;
- goto yy276;
+ if (yych == 's') goto yy583;
+ goto yy277;
yy556:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 't') goto yy585;
- goto yy276;
+ if (yych == 'i') goto yy584;
+ goto yy277;
yy557:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'n') goto yy586;
- goto yy276;
+ if (yych == 't') goto yy585;
+ goto yy277;
yy558:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'w') goto yy587;
- goto yy276;
+ if (yych == 'r') goto yy586;
+ goto yy277;
yy559:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'g') goto yy588;
- goto yy276;
+ if (yych <= 0x00) goto yy587;
+ goto yy277;
yy560:
- ++YYCURSOR;
-#line 151 "../src/conf/parse_opts.re"
- { opts.set_eager_skip(true); goto opt; }
-#line 2303 "src/conf/parse_opts.cc"
-yy562:
yych = (YYCTYPE)*++YYCURSOR;
if (yych <= 0x00) goto yy589;
- goto yy276;
+ goto yy277;
+yy561:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych == 'i') goto yy591;
+ goto yy277;
+yy562:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych == 'e') goto yy592;
+ goto yy277;
yy563:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'l') goto yy591;
- goto yy276;
+ if (yych == 't') goto yy593;
+ goto yy277;
yy564:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy592;
- goto yy276;
+ if (yych == 't') goto yy594;
+ goto yy277;
yy565:
- ++YYCURSOR;
-#line 143 "../src/conf/parse_opts.re"
- { opts.set_sFlag (true); goto opt; }
-#line 2320 "src/conf/parse_opts.cc"
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych == 'a') goto yy595;
+ goto yy277;
+yy566:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych == 't') goto yy596;
+ goto yy277;
yy567:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'f') goto yy594;
- goto yy276;
+ if (yych == 'n') goto yy597;
+ goto yy277;
yy568:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'o') goto yy595;
- goto yy276;
+ if (yych == 'w') goto yy598;
+ goto yy277;
yy569:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'd') goto yy596;
- goto yy276;
+ if (yych == 'g') goto yy599;
+ goto yy277;
yy570:
++YYCURSOR;
-#line 145 "../src/conf/parse_opts.re"
- { opts.set_version (false); goto opt; }
-#line 2337 "src/conf/parse_opts.cc"
+#line 152 "../src/conf/parse_opts.re"
+ { opts.set_eager_skip(true); goto opt; }
+#line 2344 "src/conf/parse_opts.cc"
yy572:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy597;
- goto yy276;
+ if (yych <= 0x00) goto yy600;
+ goto yy277;
yy573:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 't') goto yy599;
- goto yy276;
+ if (yych == 'l') goto yy602;
+ goto yy277;
yy574:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'a') goto yy600;
- goto yy276;
+ if (yych <= 0x00) goto yy603;
+ goto yy277;
yy575:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy601;
- goto yy276;
-yy576:
++YYCURSOR;
-#line 154 "../src/conf/parse_opts.re"
- { if (!opts.set_encoding (Enc::UCS2)) { error_encoding (); return EXIT_FAIL; } goto opt; }
-#line 2358 "src/conf/parse_opts.cc"
+#line 143 "../src/conf/parse_opts.re"
+ { opts.set_sFlag (true); goto opt; }
+#line 2361 "src/conf/parse_opts.cc"
+yy577:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych == 'f') goto yy605;
+ goto yy277;
yy578:
- ++YYCURSOR;
-#line 134 "../src/conf/parse_opts.re"
- { opts.set_bFlag (true); goto opt; }
-#line 2363 "src/conf/parse_opts.cc"
-yy580:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 't') goto yy603;
- goto yy276;
-yy581:
+ if (yych == 'o') goto yy606;
+ goto yy277;
+yy579:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'd') goto yy604;
- goto yy276;
+ if (yych == 'd') goto yy607;
+ goto yy277;
+yy580:
+ ++YYCURSOR;
+#line 145 "../src/conf/parse_opts.re"
+ { opts.set_version (false); goto opt; }
+#line 2378 "src/conf/parse_opts.cc"
yy582:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'o') goto yy605;
- goto yy276;
+ if (yych == 'r') goto yy608;
+ goto yy277;
yy583:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy606;
- goto yy276;
+ if (yych <= 0x00) goto yy609;
+ goto yy277;
yy584:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 't') goto yy608;
- goto yy276;
+ if (yych == 't') goto yy611;
+ goto yy277;
yy585:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy609;
- goto yy276;
+ if (yych == 'a') goto yy612;
+ goto yy277;
yy586:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy611;
- goto yy276;
-yy587:
yych = (YYCTYPE)*++YYCURSOR;
if (yych <= 0x00) goto yy613;
- goto yy276;
-yy588:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'o') goto yy615;
- goto yy276;
+ goto yy277;
+yy587:
+ ++YYCURSOR;
+#line 155 "../src/conf/parse_opts.re"
+ { if (!opts.set_encoding (Enc::UCS2)) { error_encoding (); return EXIT_FAIL; } goto opt; }
+#line 2403 "src/conf/parse_opts.cc"
yy589:
++YYCURSOR;
-#line 161 "../src/conf/parse_opts.re"
- { goto opt_empty_class; }
-#line 2404 "src/conf/parse_opts.cc"
+#line 134 "../src/conf/parse_opts.re"
+ { opts.set_bFlag (true); goto opt; }
+#line 2408 "src/conf/parse_opts.cc"
yy591:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'i') goto yy616;
- goto yy276;
+ if (yych == 't') goto yy615;
+ goto yy277;
yy592:
- ++YYCURSOR;
-#line 139 "../src/conf/parse_opts.re"
- { opts.set_FFlag (true); goto opt; }
-#line 2413 "src/conf/parse_opts.cc"
-yy594:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych == 'd') goto yy616;
+ goto yy277;
+yy593:
yych = (YYCTYPE)*++YYCURSOR;
if (yych == 'o') goto yy617;
- goto yy276;
+ goto yy277;
+yy594:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych <= 0x00) goto yy618;
+ goto yy277;
yy595:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'n') goto yy618;
- goto yy276;
+ if (yych == 't') goto yy620;
+ goto yy277;
yy596:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy619;
- goto yy276;
+ if (yych <= 0x00) goto yy621;
+ goto yy277;
yy597:
- ++YYCURSOR;
-#line 163 "../src/conf/parse_opts.re"
- { goto opt; }
-#line 2430 "src/conf/parse_opts.cc"
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych <= 0x00) goto yy623;
+ goto yy277;
+yy598:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych <= 0x00) goto yy625;
+ goto yy277;
yy599:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'i') goto yy621;
- goto yy276;
+ if (yych == 'o') goto yy627;
+ goto yy277;
yy600:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 't') goto yy622;
- goto yy276;
-yy601:
++YYCURSOR;
-#line 158 "../src/conf/parse_opts.re"
- { if (!next (YYCURSOR, argv)) { error_arg ("-t, --type-header"); return EXIT_FAIL; } goto opt_header; }
-#line 2443 "src/conf/parse_opts.cc"
-yy603:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'i') goto yy623;
- goto yy276;
-yy604:
+#line 162 "../src/conf/parse_opts.re"
+ { goto opt_empty_class; }
+#line 2449 "src/conf/parse_opts.cc"
+yy602:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy624;
- goto yy276;
+ if (yych == 'i') goto yy628;
+ goto yy277;
+yy603:
+ ++YYCURSOR;
+#line 139 "../src/conf/parse_opts.re"
+ { opts.set_FFlag (true); goto opt; }
+#line 2458 "src/conf/parse_opts.cc"
yy605:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 's') goto yy626;
- goto yy276;
+ if (yych == 'o') goto yy629;
+ goto yy277;
yy606:
- ++YYCURSOR;
-#line 136 "../src/conf/parse_opts.re"
- { opts.set_dFlag (true); goto opt; }
-#line 2460 "src/conf/parse_opts.cc"
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych == 'n') goto yy630;
+ goto yy277;
+yy607:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych <= 0x00) goto yy631;
+ goto yy277;
yy608:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'i') goto yy627;
- goto yy276;
+ if (yych == 'e') goto yy633;
+ goto yy277;
yy609:
++YYCURSOR;
-#line 167 "../src/conf/parse_opts.re"
- { opts.set_dump_dfa_det(true); goto opt; }
-#line 2469 "src/conf/parse_opts.cc"
+#line 164 "../src/conf/parse_opts.re"
+ { goto opt; }
+#line 2479 "src/conf/parse_opts.cc"
yy611:
- ++YYCURSOR;
-#line 169 "../src/conf/parse_opts.re"
- { opts.set_dump_dfa_min(true); goto opt; }
-#line 2474 "src/conf/parse_opts.cc"
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych == 'i') goto yy634;
+ goto yy277;
+yy612:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych == 't') goto yy635;
+ goto yy277;
yy613:
++YYCURSOR;
-#line 166 "../src/conf/parse_opts.re"
- { opts.set_dump_dfa_raw(true); goto opt; }
-#line 2479 "src/conf/parse_opts.cc"
+#line 159 "../src/conf/parse_opts.re"
+ { if (!next (YYCURSOR, argv)) { error_arg ("-t, --type-header"); return EXIT_FAIL; } goto opt_header; }
+#line 2492 "src/conf/parse_opts.cc"
yy615:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'p') goto yy628;
- goto yy276;
+ if (yych == 'i') goto yy636;
+ goto yy277;
yy616:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'c') goto yy629;
- goto yy276;
+ if (yych <= 0x00) goto yy637;
+ goto yy277;
yy617:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy630;
- goto yy276;
+ if (yych == 's') goto yy639;
+ goto yy277;
yy618:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych == '-') goto yy632;
- goto yy276;
-yy619:
++YYCURSOR;
-#line 150 "../src/conf/parse_opts.re"
- { opts.set_lookahead(false); goto opt; }
-#line 2500 "src/conf/parse_opts.cc"
-yy621:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'o') goto yy633;
- goto yy276;
-yy622:
+#line 136 "../src/conf/parse_opts.re"
+ { opts.set_dFlag (true); goto opt; }
+#line 2509 "src/conf/parse_opts.cc"
+yy620:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'e') goto yy634;
- goto yy276;
+ if (yych == 'i') goto yy640;
+ goto yy277;
+yy621:
+ ++YYCURSOR;
+#line 168 "../src/conf/parse_opts.re"
+ { opts.set_dump_dfa_det(true); goto opt; }
+#line 2518 "src/conf/parse_opts.cc"
yy623:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'v') goto yy635;
- goto yy276;
-yy624:
++YYCURSOR;
-#line 147 "../src/conf/parse_opts.re"
- { opts.set_bCaseInverted (true); goto opt; }
-#line 2517 "src/conf/parse_opts.cc"
-yy626:
- yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy636;
- goto yy276;
+#line 170 "../src/conf/parse_opts.re"
+ { opts.set_dump_dfa_min(true); goto opt; }
+#line 2523 "src/conf/parse_opts.cc"
+yy625:
+ ++YYCURSOR;
+#line 167 "../src/conf/parse_opts.re"
+ { opts.set_dump_dfa_raw(true); goto opt; }
+#line 2528 "src/conf/parse_opts.cc"
yy627:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'o') goto yy638;
- goto yy276;
+ if (yych == 'p') goto yy641;
+ goto yy277;
yy628:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 't') goto yy639;
- goto yy276;
+ if (yych == 'c') goto yy642;
+ goto yy277;
yy629:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'y') goto yy640;
- goto yy276;
+ if (yych <= 0x00) goto yy643;
+ goto yy277;
yy630:
- ++YYCURSOR;
-#line 141 "../src/conf/parse_opts.re"
- { opts.set_iFlag (true); goto opt; }
-#line 2538 "src/conf/parse_opts.cc"
-yy632:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'd') goto yy641;
- goto yy276;
+ if (yych == '-') goto yy645;
+ goto yy277;
+yy631:
+ ++YYCURSOR;
+#line 151 "../src/conf/parse_opts.re"
+ { opts.set_lookahead(false); goto opt; }
+#line 2549 "src/conf/parse_opts.cc"
yy633:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'n') goto yy642;
- goto yy276;
+ if (yych == 's') goto yy646;
+ goto yy277;
yy634:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy643;
- goto yy276;
+ if (yych == 'o') goto yy647;
+ goto yy277;
yy635:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'e') goto yy645;
- goto yy276;
+ if (yych == 'e') goto yy648;
+ goto yy277;
yy636:
- ++YYCURSOR;
-#line 140 "../src/conf/parse_opts.re"
- { opts.set_gFlag (true); goto opt; }
-#line 2559 "src/conf/parse_opts.cc"
-yy638:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'n') goto yy646;
- goto yy276;
+ if (yych == 'v') goto yy649;
+ goto yy277;
+yy637:
+ ++YYCURSOR;
+#line 147 "../src/conf/parse_opts.re"
+ { opts.set_bCaseInverted (true); goto opt; }
+#line 2570 "src/conf/parse_opts.cc"
yy639:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy647;
- goto yy276;
+ if (yych <= 0x00) goto yy650;
+ goto yy277;
yy640:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy649;
- goto yy276;
+ if (yych == 'o') goto yy652;
+ goto yy277;
yy641:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'a') goto yy651;
- goto yy276;
+ if (yych == 't') goto yy653;
+ goto yy277;
yy642:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 's') goto yy652;
- goto yy276;
+ if (yych == 'y') goto yy654;
+ goto yy277;
yy643:
++YYCURSOR;
-#line 138 "../src/conf/parse_opts.re"
- { opts.set_fFlag (true); goto opt; }
-#line 2584 "src/conf/parse_opts.cc"
+#line 141 "../src/conf/parse_opts.re"
+ { opts.set_iFlag (true); goto opt; }
+#line 2591 "src/conf/parse_opts.cc"
yy645:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy653;
- goto yy276;
+ if (yych == 'd') goto yy655;
+ goto yy277;
yy646:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy655;
- goto yy276;
+ if (yych <= 0x00) goto yy656;
+ goto yy277;
yy647:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych == 'n') goto yy658;
+ goto yy277;
+yy648:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych <= 0x00) goto yy659;
+ goto yy277;
+yy649:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych == 'e') goto yy661;
+ goto yy277;
+yy650:
++YYCURSOR;
-#line 168 "../src/conf/parse_opts.re"
+#line 140 "../src/conf/parse_opts.re"
+ { opts.set_gFlag (true); goto opt; }
+#line 2616 "src/conf/parse_opts.cc"
+yy652:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych == 'n') goto yy662;
+ goto yy277;
+yy653:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych <= 0x00) goto yy663;
+ goto yy277;
+yy654:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych <= 0x00) goto yy665;
+ goto yy277;
+yy655:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych == 'a') goto yy667;
+ goto yy277;
+yy656:
+ ++YYCURSOR;
+#line 150 "../src/conf/parse_opts.re"
+ { opts.set_posix_captures (true); goto opt; }
+#line 2637 "src/conf/parse_opts.cc"
+yy658:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych == 's') goto yy668;
+ goto yy277;
+yy659:
+ ++YYCURSOR;
+#line 138 "../src/conf/parse_opts.re"
+ { opts.set_fFlag (true); goto opt; }
+#line 2646 "src/conf/parse_opts.cc"
+yy661:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych <= 0x00) goto yy669;
+ goto yy277;
+yy662:
+ yych = (YYCTYPE)*++YYCURSOR;
+ if (yych <= 0x00) goto yy671;
+ goto yy277;
+yy663:
+ ++YYCURSOR;
+#line 169 "../src/conf/parse_opts.re"
{ opts.set_dump_dfa_tagopt(true); goto opt; }
-#line 2597 "src/conf/parse_opts.cc"
-yy649:
+#line 2659 "src/conf/parse_opts.cc"
+yy665:
++YYCURSOR;
-#line 159 "../src/conf/parse_opts.re"
+#line 160 "../src/conf/parse_opts.re"
{ goto opt_encoding_policy; }
-#line 2602 "src/conf/parse_opts.cc"
-yy651:
+#line 2664 "src/conf/parse_opts.cc"
+yy667:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 't') goto yy657;
- goto yy276;
-yy652:
+ if (yych == 't') goto yy673;
+ goto yy277;
+yy668:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy658;
- goto yy276;
-yy653:
+ if (yych <= 0x00) goto yy674;
+ goto yy277;
+yy669:
++YYCURSOR;
#line 146 "../src/conf/parse_opts.re"
{ opts.set_bCaseInsensitive (true); goto opt; }
-#line 2615 "src/conf/parse_opts.cc"
-yy655:
+#line 2677 "src/conf/parse_opts.cc"
+yy671:
++YYCURSOR;
-#line 162 "../src/conf/parse_opts.re"
+#line 163 "../src/conf/parse_opts.re"
{ goto opt_dfa_minimization; }
-#line 2620 "src/conf/parse_opts.cc"
-yy657:
+#line 2682 "src/conf/parse_opts.cc"
+yy673:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'e') goto yy660;
- goto yy276;
-yy658:
+ if (yych == 'e') goto yy676;
+ goto yy277;
+yy674:
++YYCURSOR;
#line 135 "../src/conf/parse_opts.re"
{ opts.set_cFlag (true); goto opt; }
-#line 2629 "src/conf/parse_opts.cc"
-yy660:
+#line 2691 "src/conf/parse_opts.cc"
+yy676:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych >= 0x01) goto yy276;
+ if (yych >= 0x01) goto yy277;
++YYCURSOR;
#line 144 "../src/conf/parse_opts.re"
{ opts.set_bNoGenerationDate (true); goto opt; }
-#line 2636 "src/conf/parse_opts.cc"
+#line 2698 "src/conf/parse_opts.cc"
}
-#line 171 "../src/conf/parse_opts.re"
+#line 172 "../src/conf/parse_opts.re"
opt_output:
-#line 2643 "src/conf/parse_opts.cc"
+#line 2705 "src/conf/parse_opts.cc"
{
YYCTYPE yych;
static const unsigned char yybm[] = {
128, 128, 128, 128, 128, 128, 128, 128,
};
yych = (YYCTYPE)*YYCURSOR;
- if (yych <= 0x00) goto yy665;
- if (yych != '-') goto yy667;
-yy665:
+ if (yych <= 0x00) goto yy681;
+ if (yych != '-') goto yy683;
+yy681:
++YYCURSOR;
-#line 176 "../src/conf/parse_opts.re"
+#line 177 "../src/conf/parse_opts.re"
{
error ("bad argument to option -o, --output: %s", *argv);
return EXIT_FAIL;
}
-#line 2690 "src/conf/parse_opts.cc"
-yy667:
+#line 2752 "src/conf/parse_opts.cc"
+yy683:
yych = (YYCTYPE)*++YYCURSOR;
if (yybm[0+yych] & 128) {
- goto yy667;
+ goto yy683;
}
++YYCURSOR;
-#line 180 "../src/conf/parse_opts.re"
+#line 181 "../src/conf/parse_opts.re"
{ opts.set_output_file(*argv); goto opt; }
-#line 2699 "src/conf/parse_opts.cc"
+#line 2761 "src/conf/parse_opts.cc"
}
-#line 181 "../src/conf/parse_opts.re"
+#line 182 "../src/conf/parse_opts.re"
opt_header:
-#line 2706 "src/conf/parse_opts.cc"
+#line 2768 "src/conf/parse_opts.cc"
{
YYCTYPE yych;
static const unsigned char yybm[] = {
128, 128, 128, 128, 128, 128, 128, 128,
};
yych = (YYCTYPE)*YYCURSOR;
- if (yych <= 0x00) goto yy673;
- if (yych != '-') goto yy675;
-yy673:
+ if (yych <= 0x00) goto yy689;
+ if (yych != '-') goto yy691;
+yy689:
++YYCURSOR;
-#line 186 "../src/conf/parse_opts.re"
+#line 187 "../src/conf/parse_opts.re"
{
error ("bad argument to option -t, --type-header: %s", *argv);
return EXIT_FAIL;
}
-#line 2753 "src/conf/parse_opts.cc"
-yy675:
+#line 2815 "src/conf/parse_opts.cc"
+yy691:
yych = (YYCTYPE)*++YYCURSOR;
if (yybm[0+yych] & 128) {
- goto yy675;
+ goto yy691;
}
++YYCURSOR;
-#line 190 "../src/conf/parse_opts.re"
+#line 191 "../src/conf/parse_opts.re"
{ opts.set_header_file (*argv); goto opt; }
-#line 2762 "src/conf/parse_opts.cc"
+#line 2824 "src/conf/parse_opts.cc"
}
-#line 191 "../src/conf/parse_opts.re"
+#line 192 "../src/conf/parse_opts.re"
opt_encoding_policy:
return EXIT_FAIL;
}
-#line 2774 "src/conf/parse_opts.cc"
+#line 2836 "src/conf/parse_opts.cc"
{
YYCTYPE yych;
yych = (YYCTYPE)*YYCURSOR;
if (yych <= 'h') {
- if (yych == 'f') goto yy683;
+ if (yych == 'f') goto yy699;
} else {
- if (yych <= 'i') goto yy684;
- if (yych == 's') goto yy685;
+ if (yych <= 'i') goto yy700;
+ if (yych == 's') goto yy701;
}
++YYCURSOR;
-yy682:
-#line 201 "../src/conf/parse_opts.re"
+yy698:
+#line 202 "../src/conf/parse_opts.re"
{
error ("bad argument to option --encoding-policy (expected: ignore | substitute | fail): %s", *argv);
return EXIT_FAIL;
}
-#line 2791 "src/conf/parse_opts.cc"
-yy683:
+#line 2853 "src/conf/parse_opts.cc"
+yy699:
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych == 'a') goto yy686;
- goto yy682;
-yy684:
+ if (yych == 'a') goto yy702;
+ goto yy698;
+yy700:
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych == 'g') goto yy688;
- goto yy682;
-yy685:
+ if (yych == 'g') goto yy704;
+ goto yy698;
+yy701:
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych == 'u') goto yy689;
- goto yy682;
-yy686:
+ if (yych == 'u') goto yy705;
+ goto yy698;
+yy702:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'i') goto yy690;
-yy687:
+ if (yych == 'i') goto yy706;
+yy703:
YYCURSOR = YYMARKER;
- goto yy682;
-yy688:
+ goto yy698;
+yy704:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'n') goto yy691;
- goto yy687;
-yy689:
+ if (yych == 'n') goto yy707;
+ goto yy703;
+yy705:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'b') goto yy692;
- goto yy687;
-yy690:
+ if (yych == 'b') goto yy708;
+ goto yy703;
+yy706:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'l') goto yy693;
- goto yy687;
-yy691:
+ if (yych == 'l') goto yy709;
+ goto yy703;
+yy707:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'o') goto yy694;
- goto yy687;
-yy692:
+ if (yych == 'o') goto yy710;
+ goto yy703;
+yy708:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 's') goto yy695;
- goto yy687;
-yy693:
+ if (yych == 's') goto yy711;
+ goto yy703;
+yy709:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy696;
- goto yy687;
-yy694:
+ if (yych <= 0x00) goto yy712;
+ goto yy703;
+yy710:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'r') goto yy698;
- goto yy687;
-yy695:
+ if (yych == 'r') goto yy714;
+ goto yy703;
+yy711:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 't') goto yy699;
- goto yy687;
-yy696:
+ if (yych == 't') goto yy715;
+ goto yy703;
+yy712:
++YYCURSOR;
-#line 207 "../src/conf/parse_opts.re"
+#line 208 "../src/conf/parse_opts.re"
{ opts.set_encoding_policy (Enc::POLICY_FAIL); goto opt; }
-#line 2846 "src/conf/parse_opts.cc"
-yy698:
+#line 2908 "src/conf/parse_opts.cc"
+yy714:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'e') goto yy700;
- goto yy687;
-yy699:
+ if (yych == 'e') goto yy716;
+ goto yy703;
+yy715:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'i') goto yy701;
- goto yy687;
-yy700:
+ if (yych == 'i') goto yy717;
+ goto yy703;
+yy716:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy702;
- goto yy687;
-yy701:
+ if (yych <= 0x00) goto yy718;
+ goto yy703;
+yy717:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 't') goto yy704;
- goto yy687;
-yy702:
+ if (yych == 't') goto yy720;
+ goto yy703;
+yy718:
++YYCURSOR;
-#line 205 "../src/conf/parse_opts.re"
+#line 206 "../src/conf/parse_opts.re"
{ opts.set_encoding_policy (Enc::POLICY_IGNORE); goto opt; }
-#line 2867 "src/conf/parse_opts.cc"
-yy704:
+#line 2929 "src/conf/parse_opts.cc"
+yy720:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'u') goto yy687;
+ if (yych != 'u') goto yy703;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 't') goto yy687;
+ if (yych != 't') goto yy703;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych != 'e') goto yy687;
+ if (yych != 'e') goto yy703;
yych = (YYCTYPE)*++YYCURSOR;
- if (yych >= 0x01) goto yy687;
+ if (yych >= 0x01) goto yy703;
++YYCURSOR;
-#line 206 "../src/conf/parse_opts.re"
+#line 207 "../src/conf/parse_opts.re"
{ opts.set_encoding_policy (Enc::POLICY_SUBSTITUTE); goto opt; }
-#line 2880 "src/conf/parse_opts.cc"
+#line 2942 "src/conf/parse_opts.cc"
}
-#line 208 "../src/conf/parse_opts.re"
+#line 209 "../src/conf/parse_opts.re"
opt_input:
return EXIT_FAIL;
}
-#line 2892 "src/conf/parse_opts.cc"
+#line 2954 "src/conf/parse_opts.cc"
{
YYCTYPE yych;
yych = (YYCTYPE)*YYCURSOR;
- if (yych <= 'b') goto yy712;
- if (yych <= 'c') goto yy714;
- if (yych <= 'd') goto yy715;
-yy712:
+ if (yych <= 'b') goto yy728;
+ if (yych <= 'c') goto yy730;
+ if (yych <= 'd') goto yy731;
+yy728:
++YYCURSOR;
-yy713:
-#line 218 "../src/conf/parse_opts.re"
+yy729:
+#line 219 "../src/conf/parse_opts.re"
{
error ("bad argument to option --input (expected: default | custom): %s", *argv);
return EXIT_FAIL;
}
-#line 2907 "src/conf/parse_opts.cc"
-yy714:
+#line 2969 "src/conf/parse_opts.cc"
+yy730:
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych == 'u') goto yy716;
- goto yy713;
-yy715:
+ if (yych == 'u') goto yy732;
+ goto yy729;
+yy731:
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych == 'e') goto yy718;
- goto yy713;
-yy716:
+ if (yych == 'e') goto yy734;
+ goto yy729;
+yy732:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 's') goto yy719;
-yy717:
+ if (yych == 's') goto yy735;
+yy733:
YYCURSOR = YYMARKER;
- goto yy713;
-yy718:
+ goto yy729;
+yy734:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'f') goto yy720;
- goto yy717;
-yy719:
+ if (yych == 'f') goto yy736;
+ goto yy733;
+yy735:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 't') goto yy721;
- goto yy717;
-yy720:
+ if (yych == 't') goto yy737;
+ goto yy733;
+yy736:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'a') goto yy722;
- goto yy717;
-yy721:
+ if (yych == 'a') goto yy738;
+ goto yy733;
+yy737:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'o') goto yy723;
- goto yy717;
-yy722:
+ if (yych == 'o') goto yy739;
+ goto yy733;
+yy738:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'u') goto yy724;
- goto yy717;
-yy723:
+ if (yych == 'u') goto yy740;
+ goto yy733;
+yy739:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'm') goto yy725;
- goto yy717;
-yy724:
+ if (yych == 'm') goto yy741;
+ goto yy733;
+yy740:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'l') goto yy726;
- goto yy717;
-yy725:
+ if (yych == 'l') goto yy742;
+ goto yy733;
+yy741:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy727;
- goto yy717;
-yy726:
+ if (yych <= 0x00) goto yy743;
+ goto yy733;
+yy742:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 't') goto yy729;
- goto yy717;
-yy727:
+ if (yych == 't') goto yy745;
+ goto yy733;
+yy743:
++YYCURSOR;
-#line 223 "../src/conf/parse_opts.re"
+#line 224 "../src/conf/parse_opts.re"
{ opts.set_input_api(INPUT_CUSTOM); goto opt; }
-#line 2962 "src/conf/parse_opts.cc"
-yy729:
+#line 3024 "src/conf/parse_opts.cc"
+yy745:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych >= 0x01) goto yy717;
+ if (yych >= 0x01) goto yy733;
++YYCURSOR;
-#line 222 "../src/conf/parse_opts.re"
+#line 223 "../src/conf/parse_opts.re"
{ opts.set_input_api(INPUT_DEFAULT); goto opt; }
-#line 2969 "src/conf/parse_opts.cc"
+#line 3031 "src/conf/parse_opts.cc"
}
-#line 224 "../src/conf/parse_opts.re"
+#line 225 "../src/conf/parse_opts.re"
opt_empty_class:
return EXIT_FAIL;
}
-#line 2981 "src/conf/parse_opts.cc"
+#line 3043 "src/conf/parse_opts.cc"
{
YYCTYPE yych;
yych = (YYCTYPE)*YYCURSOR;
- if (yych == 'e') goto yy736;
- if (yych == 'm') goto yy737;
+ if (yych == 'e') goto yy752;
+ if (yych == 'm') goto yy753;
++YYCURSOR;
-yy735:
-#line 234 "../src/conf/parse_opts.re"
+yy751:
+#line 235 "../src/conf/parse_opts.re"
{
error ("bad argument to option --empty-class (expected: match-empty | match-none | error): %s", *argv);
return EXIT_FAIL;
}
-#line 2994 "src/conf/parse_opts.cc"
-yy736:
+#line 3056 "src/conf/parse_opts.cc"
+yy752:
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych == 'r') goto yy738;
- goto yy735;
-yy737:
+ if (yych == 'r') goto yy754;
+ goto yy751;
+yy753:
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych == 'a') goto yy740;
- goto yy735;
-yy738:
+ if (yych == 'a') goto yy756;
+ goto yy751;
+yy754:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'r') goto yy741;
-yy739:
+ if (yych == 'r') goto yy757;
+yy755:
YYCURSOR = YYMARKER;
- goto yy735;
-yy740:
+ goto yy751;
+yy756:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 't') goto yy742;
- goto yy739;
-yy741:
+ if (yych == 't') goto yy758;
+ goto yy755;
+yy757:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'o') goto yy743;
- goto yy739;
-yy742:
+ if (yych == 'o') goto yy759;
+ goto yy755;
+yy758:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'c') goto yy744;
- goto yy739;
-yy743:
+ if (yych == 'c') goto yy760;
+ goto yy755;
+yy759:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'r') goto yy745;
- goto yy739;
-yy744:
+ if (yych == 'r') goto yy761;
+ goto yy755;
+yy760:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'h') goto yy746;
- goto yy739;
-yy745:
+ if (yych == 'h') goto yy762;
+ goto yy755;
+yy761:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy747;
- goto yy739;
-yy746:
+ if (yych <= 0x00) goto yy763;
+ goto yy755;
+yy762:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == '-') goto yy749;
- goto yy739;
-yy747:
+ if (yych == '-') goto yy765;
+ goto yy755;
+yy763:
++YYCURSOR;
-#line 240 "../src/conf/parse_opts.re"
+#line 241 "../src/conf/parse_opts.re"
{ opts.set_empty_class_policy (EMPTY_CLASS_ERROR); goto opt; }
-#line 3041 "src/conf/parse_opts.cc"
-yy749:
+#line 3103 "src/conf/parse_opts.cc"
+yy765:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'e') goto yy750;
- if (yych == 'n') goto yy751;
- goto yy739;
-yy750:
+ if (yych == 'e') goto yy766;
+ if (yych == 'n') goto yy767;
+ goto yy755;
+yy766:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'm') goto yy752;
- goto yy739;
-yy751:
+ if (yych == 'm') goto yy768;
+ goto yy755;
+yy767:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'o') goto yy753;
- goto yy739;
-yy752:
+ if (yych == 'o') goto yy769;
+ goto yy755;
+yy768:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'p') goto yy754;
- goto yy739;
-yy753:
+ if (yych == 'p') goto yy770;
+ goto yy755;
+yy769:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'n') goto yy755;
- goto yy739;
-yy754:
+ if (yych == 'n') goto yy771;
+ goto yy755;
+yy770:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 't') goto yy756;
- goto yy739;
-yy755:
+ if (yych == 't') goto yy772;
+ goto yy755;
+yy771:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'e') goto yy757;
- goto yy739;
-yy756:
+ if (yych == 'e') goto yy773;
+ goto yy755;
+yy772:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'y') goto yy758;
- goto yy739;
-yy757:
+ if (yych == 'y') goto yy774;
+ goto yy755;
+yy773:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy759;
- goto yy739;
-yy758:
+ if (yych <= 0x00) goto yy775;
+ goto yy755;
+yy774:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy761;
- goto yy739;
-yy759:
+ if (yych <= 0x00) goto yy777;
+ goto yy755;
+yy775:
++YYCURSOR;
-#line 239 "../src/conf/parse_opts.re"
+#line 240 "../src/conf/parse_opts.re"
{ opts.set_empty_class_policy (EMPTY_CLASS_MATCH_NONE); goto opt; }
-#line 3087 "src/conf/parse_opts.cc"
-yy761:
+#line 3149 "src/conf/parse_opts.cc"
+yy777:
++YYCURSOR;
-#line 238 "../src/conf/parse_opts.re"
+#line 239 "../src/conf/parse_opts.re"
{ opts.set_empty_class_policy (EMPTY_CLASS_MATCH_EMPTY); goto opt; }
-#line 3092 "src/conf/parse_opts.cc"
+#line 3154 "src/conf/parse_opts.cc"
}
-#line 241 "../src/conf/parse_opts.re"
+#line 242 "../src/conf/parse_opts.re"
opt_dfa_minimization:
return EXIT_FAIL;
}
-#line 3104 "src/conf/parse_opts.cc"
+#line 3166 "src/conf/parse_opts.cc"
{
YYCTYPE yych;
yych = (YYCTYPE)*YYCURSOR;
- if (yych == 'm') goto yy767;
- if (yych == 't') goto yy768;
+ if (yych == 'm') goto yy783;
+ if (yych == 't') goto yy784;
++YYCURSOR;
-yy766:
-#line 251 "../src/conf/parse_opts.re"
+yy782:
+#line 252 "../src/conf/parse_opts.re"
{
error ("bad argument to option --dfa-minimization (expected: table | moore): %s", *argv);
return EXIT_FAIL;
}
-#line 3117 "src/conf/parse_opts.cc"
-yy767:
+#line 3179 "src/conf/parse_opts.cc"
+yy783:
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych == 'o') goto yy769;
- goto yy766;
-yy768:
+ if (yych == 'o') goto yy785;
+ goto yy782;
+yy784:
yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
- if (yych == 'a') goto yy771;
- goto yy766;
-yy769:
+ if (yych == 'a') goto yy787;
+ goto yy782;
+yy785:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'o') goto yy772;
-yy770:
+ if (yych == 'o') goto yy788;
+yy786:
YYCURSOR = YYMARKER;
- goto yy766;
-yy771:
+ goto yy782;
+yy787:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'b') goto yy773;
- goto yy770;
-yy772:
+ if (yych == 'b') goto yy789;
+ goto yy786;
+yy788:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'r') goto yy774;
- goto yy770;
-yy773:
+ if (yych == 'r') goto yy790;
+ goto yy786;
+yy789:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'l') goto yy775;
- goto yy770;
-yy774:
+ if (yych == 'l') goto yy791;
+ goto yy786;
+yy790:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'e') goto yy776;
- goto yy770;
-yy775:
+ if (yych == 'e') goto yy792;
+ goto yy786;
+yy791:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych == 'e') goto yy777;
- goto yy770;
-yy776:
+ if (yych == 'e') goto yy793;
+ goto yy786;
+yy792:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy778;
- goto yy770;
-yy777:
+ if (yych <= 0x00) goto yy794;
+ goto yy786;
+yy793:
yych = (YYCTYPE)*++YYCURSOR;
- if (yych <= 0x00) goto yy780;
- goto yy770;
-yy778:
+ if (yych <= 0x00) goto yy796;
+ goto yy786;
+yy794:
++YYCURSOR;
-#line 256 "../src/conf/parse_opts.re"
+#line 257 "../src/conf/parse_opts.re"
{ opts.set_dfa_minimization (DFA_MINIMIZATION_MOORE); goto opt; }
-#line 3164 "src/conf/parse_opts.cc"
-yy780:
+#line 3226 "src/conf/parse_opts.cc"
+yy796:
++YYCURSOR;
-#line 255 "../src/conf/parse_opts.re"
+#line 256 "../src/conf/parse_opts.re"
{ opts.set_dfa_minimization (DFA_MINIMIZATION_TABLE); goto opt; }
-#line 3169 "src/conf/parse_opts.cc"
+#line 3231 "src/conf/parse_opts.cc"
}
-#line 257 "../src/conf/parse_opts.re"
+#line 258 "../src/conf/parse_opts.re"
end:
-/* Generated by re2c 0.16 on Sat Feb 25 16:26:09 2017 */
+/* Generated by re2c 0.16 on Fri Mar 3 02:04:11 2017 */
#line 1 "../src/parse/lex.re"
#include "src/util/c99_stdint.h"
#include <stddef.h>
-/* Generated by re2c 0.16 on Thu Feb 9 12:04:05 2017 */
+/* Generated by re2c 0.16 on Fri Mar 3 02:03:51 2017 */
#line 1 "../src/parse/lex_conf.re"
#include "src/util/c99_stdint.h"
#include <string>
goto yy116;
}
} else {
- goto yy118;
+ goto yy119;
}
} else {
if (yyaccept <= 10) {
if (yyaccept == 9) {
- goto yy120;
+ goto yy121;
} else {
- goto yy122;
+ goto yy123;
}
} else {
- goto yy124;
+ goto yy125;
}
}
}
if (yyaccept <= 14) {
if (yyaccept <= 13) {
if (yyaccept == 12) {
- goto yy126;
+ goto yy127;
} else {
- goto yy192;
+ goto yy194;
}
} else {
- goto yy286;
+ goto yy290;
}
} else {
if (yyaccept <= 16) {
if (yyaccept == 15) {
- goto yy364;
+ goto yy369;
} else {
- goto yy441;
+ goto yy447;
}
} else {
- goto yy552;
+ goto yy560;
}
}
} else {
if (yyaccept <= 20) {
if (yyaccept <= 19) {
if (yyaccept == 18) {
- goto yy612;
+ goto yy621;
} else {
- goto yy655;
+ goto yy665;
}
} else {
- goto yy662;
+ goto yy672;
}
} else {
if (yyaccept == 21) {
- goto yy747;
+ goto yy762;
} else {
- goto yy750;
+ goto yy765;
}
}
}
case 'i': goto yy112;
case 'n': goto yy114;
case 'o': goto yy115;
- case 'r': goto yy117;
- case 's': goto yy119;
- case 't': goto yy121;
- case 'u': goto yy123;
- case 'w': goto yy125;
- case 'x': goto yy127;
+ case 'p': goto yy117;
+ case 'r': goto yy118;
+ case 's': goto yy120;
+ case 't': goto yy122;
+ case 'u': goto yy124;
+ case 'w': goto yy126;
+ case 'x': goto yy128;
default: goto yy14;
}
yy71:
yych = (unsigned char)*++cur;
- if (yych == ':') goto yy129;
+ if (yych == ':') goto yy130;
goto yy14;
yy72:
yych = (unsigned char)*++cur;
- if (yych == 'y') goto yy130;
+ if (yych == 'y') goto yy131;
goto yy14;
yy73:
yych = (unsigned char)*++cur;
- if (yych == 'r') goto yy131;
+ if (yych == 'r') goto yy132;
goto yy14;
yy74:
yych = (unsigned char)*++cur;
- if (yych == 'a') goto yy132;
+ if (yych == 'a') goto yy133;
goto yy14;
yy75:
yych = (unsigned char)*++cur;
- if (yych == 'a') goto yy133;
- if (yych == 'n') goto yy134;
+ if (yych == 'a') goto yy134;
+ if (yych == 'n') goto yy135;
goto yy14;
yy76:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy135;
+ if (yych == 'e') goto yy136;
goto yy14;
yy77:
yych = (unsigned char)*++cur;
- if (yych == 'x') goto yy136;
+ if (yych == 'x') goto yy137;
goto yy14;
yy78:
yych = (unsigned char)*++cur;
- if (yych == 'r') goto yy137;
+ if (yych == 'r') goto yy138;
goto yy14;
yy79:
yych = (unsigned char)*++cur;
- if (yych == 'l') goto yy138;
+ if (yych == 'l') goto yy139;
goto yy14;
yy80:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy139;
+ if (yych == 'e') goto yy140;
goto yy14;
yy81:
yych = (unsigned char)*++cur;
- if (yych == 'o') goto yy140;
+ if (yych == 'o') goto yy141;
goto yy14;
yy82:
yych = (unsigned char)*++cur;
- if (yych == 'm') goto yy141;
+ if (yych == 'm') goto yy142;
goto yy14;
yy83:
yych = (unsigned char)*++cur;
- if (yych == ':') goto yy142;
+ if (yych == ':') goto yy143;
goto yy14;
yy84:
yych = (unsigned char)*++cur;
- if (yych == 'h') goto yy143;
+ if (yych == 'h') goto yy144;
goto yy14;
yy85:
yych = (unsigned char)*++cur;
- if (yych == 'v') goto yy144;
+ if (yych == 'v') goto yy145;
goto yy14;
yy86:
yych = (unsigned char)*++cur;
- if (yych == 't') goto yy145;
+ if (yych == 't') goto yy146;
goto yy14;
yy87:
yych = (unsigned char)*++cur;
- if (yych == 'm') goto yy146;
+ if (yych == 'm') goto yy147;
goto yy14;
yy88:
yych = (unsigned char)*++cur;
- if (yych == 'f') goto yy147;
+ if (yych == 'f') goto yy148;
goto yy14;
yy89:
yych = (unsigned char)*++cur;
- if (yych == 'Y') goto yy148;
+ if (yych == 'Y') goto yy149;
goto yy14;
yy90:
++cur;
-#line 66 "../src/parse/lex_conf.re"
+#line 67 "../src/parse/lex_conf.re"
{ lex_conf_enc(Enc::UTF8); return; }
-#line 569 "src/parse/lex_conf.cc"
+#line 570 "src/parse/lex_conf.cc"
yy92:
++cur;
#line 42 "../src/parse/lex_conf.re"
{ opts.set_target(opt_t::DOT); lex_conf_semicolon(); return; }
-#line 574 "src/parse/lex_conf.cc"
+#line 575 "src/parse/lex_conf.cc"
yy94:
++cur;
#line 49 "../src/parse/lex_conf.re"
{ opts.set_FFlag(lex_conf_bool()); return; }
-#line 579 "src/parse/lex_conf.cc"
+#line 580 "src/parse/lex_conf.cc"
yy96:
++cur;
#line 43 "../src/parse/lex_conf.re"
{ opts.set_target(opt_t::SKELETON); lex_conf_semicolon(); return; }
-#line 584 "src/parse/lex_conf.cc"
+#line 585 "src/parse/lex_conf.cc"
yy98:
++cur;
#line 54 "../src/parse/lex_conf.re"
{ opts.set_tags(lex_conf_bool()); return; }
-#line 589 "src/parse/lex_conf.cc"
+#line 590 "src/parse/lex_conf.cc"
yy100:
yyaccept = 1;
yych = (unsigned char)*(ptr = ++cur);
- if (yych == 'i') goto yy149;
+ if (yych == 'i') goto yy150;
yy101:
#line 45 "../src/parse/lex_conf.re"
{ opts.set_bFlag(lex_conf_bool()); return; }
-#line 597 "src/parse/lex_conf.cc"
+#line 598 "src/parse/lex_conf.cc"
yy102:
yyaccept = 2;
yych = (unsigned char)*(ptr = ++cur);
- if (yych == 'a') goto yy150;
- if (yych == 'o') goto yy151;
+ if (yych == 'a') goto yy151;
+ if (yych == 'o') goto yy152;
yy103:
#line 46 "../src/parse/lex_conf.re"
{ opts.set_cFlag(lex_conf_bool()); return; }
-#line 606 "src/parse/lex_conf.cc"
+#line 607 "src/parse/lex_conf.cc"
yy104:
yyaccept = 3;
yych = (unsigned char)*(ptr = ++cur);
if (yych <= 'd') goto yy105;
- if (yych <= 'e') goto yy152;
- if (yych <= 'f') goto yy153;
+ if (yych <= 'e') goto yy153;
+ if (yych <= 'f') goto yy154;
yy105:
#line 47 "../src/parse/lex_conf.re"
{ opts.set_dFlag(lex_conf_bool()); return; }
-#line 616 "src/parse/lex_conf.cc"
+#line 617 "src/parse/lex_conf.cc"
yy106:
yyaccept = 4;
yych = (unsigned char)*(ptr = ++cur);
if (yych <= 'c') {
- if (yych == 'a') goto yy154;
- if (yych >= 'c') goto yy155;
+ if (yych == 'a') goto yy155;
+ if (yych >= 'c') goto yy156;
} else {
if (yych <= 'l') goto yy107;
- if (yych <= 'm') goto yy156;
- if (yych <= 'n') goto yy157;
+ if (yych <= 'm') goto yy157;
+ if (yych <= 'n') goto yy158;
}
yy107:
-#line 62 "../src/parse/lex_conf.re"
+#line 63 "../src/parse/lex_conf.re"
{ lex_conf_enc(Enc::EBCDIC); return; }
-#line 631 "src/parse/lex_conf.cc"
+#line 632 "src/parse/lex_conf.cc"
yy108:
yyaccept = 5;
yych = (unsigned char)*(ptr = ++cur);
- if (yych == 'l') goto yy158;
+ if (yych == 'l') goto yy159;
yy109:
#line 48 "../src/parse/lex_conf.re"
{ opts.set_fFlag(lex_conf_bool()); return; }
-#line 639 "src/parse/lex_conf.cc"
+#line 640 "src/parse/lex_conf.cc"
yy110:
++cur;
#line 50 "../src/parse/lex_conf.re"
{ opts.set_gFlag(lex_conf_bool()); return; }
-#line 644 "src/parse/lex_conf.cc"
+#line 645 "src/parse/lex_conf.cc"
yy112:
yyaccept = 6;
yych = (unsigned char)*(ptr = ++cur);
- if (yych == 'n') goto yy159;
+ if (yych == 'n') goto yy160;
yy113:
#line 51 "../src/parse/lex_conf.re"
{ opts.set_iFlag(lex_conf_bool()); return; }
-#line 652 "src/parse/lex_conf.cc"
+#line 653 "src/parse/lex_conf.cc"
yy114:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy160;
- if (yych == 'o') goto yy161;
+ if (yych == 'e') goto yy161;
+ if (yych == 'o') goto yy162;
goto yy14;
yy115:
yyaccept = 7;
yych = (unsigned char)*(ptr = ++cur);
- if (yych == 'u') goto yy162;
+ if (yych == 'u') goto yy163;
yy116:
-#line 68 "../src/parse/lex_conf.re"
+#line 69 "../src/parse/lex_conf.re"
{ opts.set_output_file(lex_conf_string()); return; }
-#line 665 "src/parse/lex_conf.cc"
+#line 666 "src/parse/lex_conf.cc"
yy117:
+ yych = (unsigned char)*++cur;
+ if (yych == 'o') goto yy164;
+ goto yy14;
+yy118:
yyaccept = 8;
yych = (unsigned char)*(ptr = ++cur);
- if (yych == 'e') goto yy163;
-yy118:
+ if (yych == 'e') goto yy165;
+yy119:
#line 52 "../src/parse/lex_conf.re"
{ opts.set_rFlag(lex_conf_bool()); return; }
-#line 673 "src/parse/lex_conf.cc"
-yy119:
+#line 678 "src/parse/lex_conf.cc"
+yy120:
yyaccept = 9;
yych = (unsigned char)*(ptr = ++cur);
- if (yych == 'k') goto yy164;
- if (yych == 't') goto yy165;
-yy120:
+ if (yych == 'k') goto yy166;
+ if (yych == 't') goto yy167;
+yy121:
#line 53 "../src/parse/lex_conf.re"
{ opts.set_sFlag(lex_conf_bool()); return; }
-#line 682 "src/parse/lex_conf.cc"
-yy121:
+#line 687 "src/parse/lex_conf.cc"
+yy122:
yyaccept = 10;
yych = (unsigned char)*(ptr = ++cur);
- if (yych == 'a') goto yy166;
- if (yych == 'y') goto yy167;
-yy122:
-#line 69 "../src/parse/lex_conf.re"
- { opts.set_header_file(lex_conf_string()); return; }
-#line 691 "src/parse/lex_conf.cc"
+ if (yych == 'a') goto yy168;
+ if (yych == 'y') goto yy169;
yy123:
+#line 70 "../src/parse/lex_conf.re"
+ { opts.set_header_file(lex_conf_string()); return; }
+#line 696 "src/parse/lex_conf.cc"
+yy124:
yyaccept = 11;
yych = (unsigned char)*(ptr = ++cur);
- if (yych == 'n') goto yy168;
- if (yych == 't') goto yy169;
-yy124:
-#line 63 "../src/parse/lex_conf.re"
- { lex_conf_enc(Enc::UTF32); return; }
-#line 700 "src/parse/lex_conf.cc"
+ if (yych == 'n') goto yy170;
+ if (yych == 't') goto yy171;
yy125:
+#line 64 "../src/parse/lex_conf.re"
+ { lex_conf_enc(Enc::UTF32); return; }
+#line 705 "src/parse/lex_conf.cc"
+yy126:
yyaccept = 12;
yych = (unsigned char)*(ptr = ++cur);
- if (yych == 'i') goto yy170;
-yy126:
-#line 64 "../src/parse/lex_conf.re"
- { lex_conf_enc(Enc::UCS2); return; }
-#line 708 "src/parse/lex_conf.cc"
+ if (yych == 'i') goto yy172;
yy127:
- ++cur;
#line 65 "../src/parse/lex_conf.re"
- { lex_conf_enc(Enc::UTF16); return; }
+ { lex_conf_enc(Enc::UCS2); return; }
#line 713 "src/parse/lex_conf.cc"
-yy129:
- yych = (unsigned char)*++cur;
- if (yych <= 'r') goto yy14;
- if (yych <= 's') goto yy171;
- if (yych <= 't') goto yy172;
- goto yy14;
+yy128:
+ ++cur;
+#line 66 "../src/parse/lex_conf.re"
+ { lex_conf_enc(Enc::UTF16); return; }
+#line 718 "src/parse/lex_conf.cc"
yy130:
yych = (unsigned char)*++cur;
- if (yych == 'y') goto yy173;
+ if (yych <= 'r') goto yy14;
+ if (yych <= 's') goto yy173;
+ if (yych <= 't') goto yy174;
goto yy14;
yy131:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy174;
+ if (yych == 'y') goto yy175;
goto yy14;
yy132:
yych = (unsigned char)*++cur;
- if (yych == 'b') goto yy175;
+ if (yych == 'e') goto yy176;
goto yy14;
yy133:
yych = (unsigned char)*++cur;
- if (yych == 'b') goto yy176;
+ if (yych == 'b') goto yy177;
goto yy14;
yy134:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy177;
+ if (yych == 'b') goto yy178;
goto yy14;
yy135:
yych = (unsigned char)*++cur;
- if (yych == 'f') goto yy178;
+ if (yych == 'e') goto yy179;
goto yy14;
yy136:
yych = (unsigned char)*++cur;
- if (yych == 'p') goto yy179;
+ if (yych == 'f') goto yy180;
goto yy14;
yy137:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy180;
+ if (yych == 'p') goto yy181;
goto yy14;
yy138:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy181;
+ if (yych == 'e') goto yy182;
goto yy14;
yy139:
yych = (unsigned char)*++cur;
- if (yych == 'x') goto yy182;
+ if (yych == 'e') goto yy183;
goto yy14;
yy140:
yych = (unsigned char)*++cur;
- if (yych == 'n') goto yy184;
+ if (yych == 'x') goto yy184;
goto yy14;
yy141:
yych = (unsigned char)*++cur;
- if (yych == 'i') goto yy185;
+ if (yych == 'n') goto yy186;
goto yy14;
yy142:
+ yych = (unsigned char)*++cur;
+ if (yych == 'i') goto yy187;
+ goto yy14;
+yy143:
yych = (unsigned char)*++cur;
if (yych <= 'd') {
- if (yych == 'c') goto yy186;
+ if (yych == 'c') goto yy188;
goto yy14;
} else {
- if (yych <= 'e') goto yy187;
- if (yych == 'p') goto yy188;
+ if (yych <= 'e') goto yy189;
+ if (yych == 'p') goto yy190;
goto yy14;
}
-yy143:
- yych = (unsigned char)*++cur;
- if (yych == 'r') goto yy189;
- goto yy14;
yy144:
yych = (unsigned char)*++cur;
- if (yych == 'i') goto yy190;
+ if (yych == 'r') goto yy191;
goto yy14;
yy145:
yych = (unsigned char)*++cur;
- if (yych == 'o') goto yy191;
+ if (yych == 'i') goto yy192;
goto yy14;
yy146:
yych = (unsigned char)*++cur;
- if (yych == 'p') goto yy193;
+ if (yych == 'o') goto yy193;
goto yy14;
yy147:
yych = (unsigned char)*++cur;
- if (yych == 'i') goto yy194;
+ if (yych == 'p') goto yy195;
goto yy14;
yy148:
yych = (unsigned char)*++cur;
- if (yych == 'Y') goto yy195;
+ if (yych == 'i') goto yy196;
goto yy14;
yy149:
yych = (unsigned char)*++cur;
- if (yych == 't') goto yy196;
+ if (yych == 'Y') goto yy197;
goto yy14;
yy150:
yych = (unsigned char)*++cur;
- if (yych == 's') goto yy197;
+ if (yych == 't') goto yy198;
goto yy14;
yy151:
yych = (unsigned char)*++cur;
- if (yych == 'm') goto yy198;
+ if (yych == 's') goto yy199;
goto yy14;
yy152:
yych = (unsigned char)*++cur;
- if (yych == 'b') goto yy199;
+ if (yych == 'm') goto yy200;
goto yy14;
yy153:
yych = (unsigned char)*++cur;
- if (yych == 'a') goto yy200;
+ if (yych == 'b') goto yy201;
goto yy14;
yy154:
yych = (unsigned char)*++cur;
- if (yych == 'g') goto yy201;
+ if (yych == 'a') goto yy202;
goto yy14;
yy155:
yych = (unsigned char)*++cur;
- if (yych == 'b') goto yy202;
+ if (yych == 'g') goto yy203;
goto yy14;
yy156:
yych = (unsigned char)*++cur;
- if (yych == 'i') goto yy203;
- if (yych == 'p') goto yy204;
+ if (yych == 'b') goto yy204;
goto yy14;
yy157:
yych = (unsigned char)*++cur;
- if (yych == 'c') goto yy205;
+ if (yych == 'i') goto yy205;
+ if (yych == 'p') goto yy206;
goto yy14;
yy158:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy206;
+ if (yych == 'c') goto yy207;
goto yy14;
yy159:
yych = (unsigned char)*++cur;
- if (yych == 'p') goto yy207;
+ if (yych == 'e') goto yy208;
goto yy14;
yy160:
yych = (unsigned char)*++cur;
- if (yych == 's') goto yy208;
+ if (yych == 'p') goto yy209;
goto yy14;
yy161:
yych = (unsigned char)*++cur;
- if (yych == '-') goto yy209;
+ if (yych == 's') goto yy210;
goto yy14;
yy162:
yych = (unsigned char)*++cur;
- if (yych == 't') goto yy210;
+ if (yych == '-') goto yy211;
goto yy14;
yy163:
yych = (unsigned char)*++cur;
- if (yych == 'u') goto yy211;
+ if (yych == 't') goto yy212;
goto yy14;
yy164:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy212;
+ if (yych == 's') goto yy213;
goto yy14;
yy165:
yych = (unsigned char)*++cur;
- if (yych == 'a') goto yy213;
- if (yych == 'o') goto yy214;
+ if (yych == 'u') goto yy214;
goto yy14;
yy166:
yych = (unsigned char)*++cur;
- if (yych == 'g') goto yy215;
+ if (yych == 'e') goto yy215;
goto yy14;
yy167:
yych = (unsigned char)*++cur;
- if (yych == 'p') goto yy216;
+ if (yych == 'a') goto yy216;
+ if (yych == 'o') goto yy217;
goto yy14;
yy168:
yych = (unsigned char)*++cur;
- if (yych == 'i') goto yy217;
+ if (yych == 'g') goto yy218;
goto yy14;
yy169:
yych = (unsigned char)*++cur;
- if (yych == 'f') goto yy218;
+ if (yych == 'p') goto yy219;
goto yy14;
yy170:
yych = (unsigned char)*++cur;
- if (yych == 'd') goto yy219;
+ if (yych == 'i') goto yy220;
goto yy14;
yy171:
yych = (unsigned char)*++cur;
- if (yych == 't') goto yy220;
+ if (yych == 'f') goto yy221;
goto yy14;
yy172:
yych = (unsigned char)*++cur;
- if (yych == 'o') goto yy221;
+ if (yych == 'd') goto yy222;
goto yy14;
yy173:
yych = (unsigned char)*++cur;
- if (yych == 'F') goto yy222;
- if (yych == 'N') goto yy223;
+ if (yych == 't') goto yy223;
goto yy14;
yy174:
yych = (unsigned char)*++cur;
- if (yych == 'f') goto yy224;
+ if (yych == 'o') goto yy224;
goto yy14;
yy175:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy225;
+ if (yych == 'F') goto yy225;
+ if (yych == 'N') goto yy226;
goto yy14;
yy176:
yych = (unsigned char)*++cur;
- if (yych == 'o') goto yy226;
+ if (yych == 'f') goto yy227;
goto yy14;
yy177:
yych = (unsigned char)*++cur;
- if (yych == 'x') goto yy227;
+ if (yych == 'e') goto yy228;
goto yy14;
yy178:
yych = (unsigned char)*++cur;
- if (yych == 'a') goto yy228;
+ if (yych == 'o') goto yy229;
goto yy14;
yy179:
yych = (unsigned char)*++cur;
- if (yych == 'r') goto yy229;
+ if (yych == 'x') goto yy230;
goto yy14;
yy180:
yych = (unsigned char)*++cur;
- if (yych == 'f') goto yy230;
+ if (yych == 'a') goto yy231;
goto yy14;
yy181:
yych = (unsigned char)*++cur;
- if (yych == ':') goto yy231;
+ if (yych == 'r') goto yy232;
goto yy14;
yy182:
- ++cur;
-#line 102 "../src/parse/lex_conf.re"
- { opts.set_yybmHexTable (lex_conf_bool()); return; }
-#line 941 "src/parse/lex_conf.cc"
-yy184:
yych = (unsigned char)*++cur;
- if (yych == 'v') goto yy232;
+ if (yych == 'f') goto yy233;
goto yy14;
-yy185:
+yy183:
yych = (unsigned char)*++cur;
- if (yych == 't') goto yy233;
+ if (yych == ':') goto yy234;
goto yy14;
+yy184:
+ ++cur;
+#line 103 "../src/parse/lex_conf.re"
+ { opts.set_yybmHexTable (lex_conf_bool()); return; }
+#line 950 "src/parse/lex_conf.cc"
yy186:
yych = (unsigned char)*++cur;
- if (yych == 'h') goto yy235;
+ if (yych == 'v') goto yy235;
goto yy14;
yy187:
yych = (unsigned char)*++cur;
- if (yych == 'n') goto yy236;
+ if (yych == 't') goto yy236;
goto yy14;
yy188:
yych = (unsigned char)*++cur;
- if (yych == 'a') goto yy237;
+ if (yych == 'h') goto yy238;
goto yy14;
yy189:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy238;
+ if (yych == 'n') goto yy239;
goto yy14;
yy190:
yych = (unsigned char)*++cur;
- if (yych == 'd') goto yy239;
+ if (yych == 'a') goto yy240;
goto yy14;
yy191:
- yyaccept = 13;
- yych = (unsigned char)*(ptr = ++cur);
- if (yych == '@') goto yy240;
-yy192:
-#line 86 "../src/parse/lex_conf.re"
- { opts.set_condGoto (lex_conf_string ()); return; }
-#line 977 "src/parse/lex_conf.cc"
-yy193:
yych = (unsigned char)*++cur;
- if (yych == 'r') goto yy241;
+ if (yych == 'e') goto yy241;
goto yy14;
-yy194:
+yy192:
yych = (unsigned char)*++cur;
- if (yych == 'x') goto yy242;
+ if (yych == 'd') goto yy242;
goto yy14;
+yy193:
+ yyaccept = 13;
+ yych = (unsigned char)*(ptr = ++cur);
+ if (yych == '@') goto yy243;
+yy194:
+#line 87 "../src/parse/lex_conf.re"
+ { opts.set_condGoto (lex_conf_string ()); return; }
+#line 986 "src/parse/lex_conf.cc"
yy195:
yych = (unsigned char)*++cur;
- switch (yych) {
- case 'B': goto yy244;
- case 'C': goto yy245;
- case 'D': goto yy246;
- case 'F': goto yy247;
- case 'G': goto yy248;
- case 'L': goto yy249;
- case 'M': goto yy250;
- case 'P': goto yy251;
- case 'R': goto yy252;
- case 'S': goto yy253;
- default: goto yy14;
- }
+ if (yych == 'r') goto yy244;
+ goto yy14;
yy196:
yych = (unsigned char)*++cur;
- if (yych == '-') goto yy254;
+ if (yych == 'x') goto yy245;
goto yy14;
yy197:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy255;
- goto yy14;
+ switch (yych) {
+ case 'B': goto yy247;
+ case 'C': goto yy248;
+ case 'D': goto yy249;
+ case 'F': goto yy250;
+ case 'G': goto yy251;
+ case 'L': goto yy252;
+ case 'M': goto yy253;
+ case 'P': goto yy254;
+ case 'R': goto yy255;
+ case 'S': goto yy256;
+ default: goto yy14;
+ }
yy198:
yych = (unsigned char)*++cur;
- if (yych == 'p') goto yy256;
+ if (yych == '-') goto yy257;
goto yy14;
yy199:
yych = (unsigned char)*++cur;
- if (yych == 'u') goto yy257;
+ if (yych == 'e') goto yy258;
goto yy14;
yy200:
yych = (unsigned char)*++cur;
- if (yych == '-') goto yy258;
+ if (yych == 'p') goto yy259;
goto yy14;
yy201:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy259;
+ if (yych == 'u') goto yy260;
goto yy14;
yy202:
- ++cur;
- goto yy107;
-yy203:
yych = (unsigned char)*++cur;
- if (yych == 't') goto yy260;
+ if (yych == '-') goto yy261;
goto yy14;
-yy204:
+yy203:
yych = (unsigned char)*++cur;
- if (yych == 't') goto yy261;
+ if (yych == 'e') goto yy262;
goto yy14;
+yy204:
+ ++cur;
+ goto yy107;
yy205:
yych = (unsigned char)*++cur;
- if (yych == 'o') goto yy262;
+ if (yych == 't') goto yy263;
goto yy14;
yy206:
yych = (unsigned char)*++cur;
- if (yych == 'x') goto yy263;
+ if (yych == 't') goto yy264;
goto yy14;
yy207:
yych = (unsigned char)*++cur;
- if (yych == 'u') goto yy264;
+ if (yych == 'o') goto yy265;
goto yy14;
yy208:
yych = (unsigned char)*++cur;
- if (yych == 't') goto yy265;
+ if (yych == 'x') goto yy266;
goto yy14;
yy209:
yych = (unsigned char)*++cur;
- switch (yych) {
- case 'd': goto yy266;
- case 'g': goto yy267;
- case 'l': goto yy268;
- case 'v': goto yy269;
- default: goto yy14;
- }
+ if (yych == 'u') goto yy267;
+ goto yy14;
yy210:
yych = (unsigned char)*++cur;
- if (yych == 'p') goto yy270;
+ if (yych == 't') goto yy268;
goto yy14;
yy211:
yych = (unsigned char)*++cur;
- if (yych == 's') goto yy271;
- goto yy14;
+ switch (yych) {
+ case 'd': goto yy269;
+ case 'g': goto yy270;
+ case 'l': goto yy271;
+ case 'v': goto yy272;
+ default: goto yy14;
+ }
yy212:
yych = (unsigned char)*++cur;
- if (yych == 'l') goto yy272;
+ if (yych == 'p') goto yy273;
goto yy14;
yy213:
yych = (unsigned char)*++cur;
- if (yych == 'r') goto yy273;
+ if (yych == 'i') goto yy274;
goto yy14;
yy214:
yych = (unsigned char)*++cur;
- if (yych == 'r') goto yy274;
+ if (yych == 's') goto yy275;
goto yy14;
yy215:
yych = (unsigned char)*++cur;
- if (yych == 's') goto yy98;
+ if (yych == 'l') goto yy276;
goto yy14;
yy216:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy275;
+ if (yych == 'r') goto yy277;
goto yy14;
yy217:
yych = (unsigned char)*++cur;
- if (yych == 'c') goto yy276;
+ if (yych == 'r') goto yy278;
goto yy14;
yy218:
yych = (unsigned char)*++cur;
- if (yych == '-') goto yy277;
+ if (yych == 's') goto yy98;
goto yy14;
yy219:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy278;
+ if (yych == 'e') goto yy279;
goto yy14;
yy220:
yych = (unsigned char)*++cur;
- if (yych == 'r') goto yy279;
+ if (yych == 'c') goto yy280;
goto yy14;
yy221:
yych = (unsigned char)*++cur;
- if (yych == 'p') goto yy280;
+ if (yych == '-') goto yy281;
goto yy14;
yy222:
yych = (unsigned char)*++cur;
- if (yych == 'i') goto yy282;
+ if (yych == 'e') goto yy282;
goto yy14;
yy223:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy283;
+ if (yych == 'r') goto yy283;
goto yy14;
yy224:
yych = (unsigned char)*++cur;
- if (yych == 'i') goto yy284;
+ if (yych == 'p') goto yy284;
goto yy14;
yy225:
yych = (unsigned char)*++cur;
- if (yych == 'l') goto yy285;
+ if (yych == 'i') goto yy286;
goto yy14;
yy226:
yych = (unsigned char)*++cur;
- if (yych == 'r') goto yy287;
+ if (yych == 'e') goto yy287;
goto yy14;
yy227:
yych = (unsigned char)*++cur;
- if (yych == 't') goto yy288;
+ if (yych == 'i') goto yy288;
goto yy14;
yy228:
yych = (unsigned char)*++cur;
- if (yych == 'u') goto yy289;
+ if (yych == 'l') goto yy289;
goto yy14;
yy229:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy290;
+ if (yych == 'r') goto yy291;
goto yy14;
yy230:
yych = (unsigned char)*++cur;
- if (yych == 'i') goto yy291;
+ if (yych == 't') goto yy292;
goto yy14;
yy231:
yych = (unsigned char)*++cur;
- if (yych == 'y') goto yy292;
+ if (yych == 'u') goto yy293;
goto yy14;
yy232:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy293;
+ if (yych == 'e') goto yy294;
goto yy14;
yy233:
- ++cur;
-#line 152 "../src/parse/lex_conf.re"
- { opts.set_bEmitYYCh (lex_conf_bool()); return; }
-#line 1157 "src/parse/lex_conf.cc"
-yy235:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy294;
+ if (yych == 'i') goto yy295;
goto yy14;
-yy236:
+yy234:
yych = (unsigned char)*++cur;
- if (yych == 'a') goto yy295;
+ if (yych == 'y') goto yy296;
goto yy14;
-yy237:
+yy235:
yych = (unsigned char)*++cur;
- if (yych == 'r') goto yy296;
+ if (yych == 'e') goto yy297;
goto yy14;
+yy236:
+ ++cur;
+#line 153 "../src/parse/lex_conf.re"
+ { opts.set_bEmitYYCh (lex_conf_bool()); return; }
+#line 1170 "src/parse/lex_conf.cc"
yy238:
yych = (unsigned char)*++cur;
- if (yych == 's') goto yy297;
+ if (yych == 'e') goto yy298;
goto yy14;
yy239:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy298;
+ if (yych == 'a') goto yy299;
goto yy14;
yy240:
yych = (unsigned char)*++cur;
- if (yych == 'c') goto yy299;
+ if (yych == 'r') goto yy300;
goto yy14;
yy241:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy300;
+ if (yych == 's') goto yy301;
goto yy14;
yy242:
- ++cur;
-#line 82 "../src/parse/lex_conf.re"
- { opts.set_condPrefix (lex_conf_string ()); return; }
-#line 1190 "src/parse/lex_conf.cc"
-yy244:
yych = (unsigned char)*++cur;
- if (yych == 'A') goto yy301;
+ if (yych == 'e') goto yy302;
goto yy14;
-yy245:
+yy243:
yych = (unsigned char)*++cur;
- if (yych <= 'S') {
- if (yych == 'O') goto yy302;
- goto yy14;
- } else {
- if (yych <= 'T') goto yy303;
- if (yych <= 'U') goto yy304;
- goto yy14;
- }
-yy246:
+ if (yych == 'c') goto yy303;
+ goto yy14;
+yy244:
yych = (unsigned char)*++cur;
- if (yych == 'E') goto yy305;
+ if (yych == 'e') goto yy304;
goto yy14;
+yy245:
+ ++cur;
+#line 83 "../src/parse/lex_conf.re"
+ { opts.set_condPrefix (lex_conf_string ()); return; }
+#line 1203 "src/parse/lex_conf.cc"
yy247:
yych = (unsigned char)*++cur;
- if (yych == 'I') goto yy306;
+ if (yych == 'A') goto yy305;
goto yy14;
yy248:
yych = (unsigned char)*++cur;
- if (yych == 'E') goto yy307;
- goto yy14;
+ if (yych <= 'S') {
+ if (yych == 'O') goto yy306;
+ goto yy14;
+ } else {
+ if (yych <= 'T') goto yy307;
+ if (yych <= 'U') goto yy308;
+ goto yy14;
+ }
yy249:
yych = (unsigned char)*++cur;
- if (yych == 'E') goto yy308;
- if (yych == 'I') goto yy309;
+ if (yych == 'E') goto yy309;
goto yy14;
yy250:
yych = (unsigned char)*++cur;
- if (yych == 'A') goto yy310;
+ if (yych == 'I') goto yy310;
goto yy14;
yy251:
yych = (unsigned char)*++cur;
yy252:
yych = (unsigned char)*++cur;
if (yych == 'E') goto yy312;
+ if (yych == 'I') goto yy313;
goto yy14;
yy253:
yych = (unsigned char)*++cur;
- if (yych == 'E') goto yy313;
- if (yych == 'K') goto yy314;
+ if (yych == 'A') goto yy314;
goto yy14;
yy254:
yych = (unsigned char)*++cur;
- if (yych == 'v') goto yy315;
+ if (yych == 'E') goto yy315;
goto yy14;
yy255:
yych = (unsigned char)*++cur;
- if (yych == '-') goto yy316;
+ if (yych == 'E') goto yy316;
goto yy14;
yy256:
yych = (unsigned char)*++cur;
- if (yych == 'u') goto yy317;
+ if (yych == 'E') goto yy317;
+ if (yych == 'K') goto yy318;
goto yy14;
yy257:
yych = (unsigned char)*++cur;
- if (yych == 'g') goto yy318;
+ if (yych == 'v') goto yy319;
goto yy14;
yy258:
yych = (unsigned char)*++cur;
- if (yych == 'm') goto yy319;
+ if (yych == '-') goto yy320;
goto yy14;
yy259:
yych = (unsigned char)*++cur;
- if (yych == 'r') goto yy320;
+ if (yych == 'u') goto yy321;
goto yy14;
yy260:
yych = (unsigned char)*++cur;
- if (yych == '-') goto yy321;
+ if (yych == 'g') goto yy322;
goto yy14;
yy261:
yych = (unsigned char)*++cur;
- if (yych == 'y') goto yy322;
+ if (yych == 'm') goto yy323;
goto yy14;
yy262:
yych = (unsigned char)*++cur;
- if (yych == 'd') goto yy323;
+ if (yych == 'r') goto yy324;
goto yy14;
yy263:
yych = (unsigned char)*++cur;
- if (yych == '-') goto yy324;
+ if (yych == '-') goto yy325;
goto yy14;
yy264:
yych = (unsigned char)*++cur;
- if (yych == 't') goto yy325;
+ if (yych == 'y') goto yy326;
goto yy14;
yy265:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy327;
+ if (yych == 'd') goto yy327;
goto yy14;
yy266:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy328;
+ if (yych == '-') goto yy328;
goto yy14;
yy267:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy329;
+ if (yych == 't') goto yy329;
goto yy14;
yy268:
yych = (unsigned char)*++cur;
- if (yych == 'o') goto yy330;
+ if (yych == 'e') goto yy331;
goto yy14;
yy269:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy331;
+ if (yych == 'e') goto yy332;
goto yy14;
yy270:
yych = (unsigned char)*++cur;
- if (yych == 'u') goto yy332;
+ if (yych == 'e') goto yy333;
goto yy14;
yy271:
yych = (unsigned char)*++cur;
- if (yych == 'a') goto yy333;
+ if (yych == 'o') goto yy334;
goto yy14;
yy272:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy334;
+ if (yych == 'e') goto yy335;
goto yy14;
yy273:
yych = (unsigned char)*++cur;
- if (yych == 't') goto yy335;
+ if (yych == 'u') goto yy336;
goto yy14;
yy274:
yych = (unsigned char)*++cur;
- if (yych == 'a') goto yy336;
+ if (yych == 'x') goto yy337;
goto yy14;
yy275:
yych = (unsigned char)*++cur;
- if (yych == '-') goto yy337;
+ if (yych == 'a') goto yy338;
goto yy14;
yy276:
yych = (unsigned char)*++cur;
- if (yych == 'o') goto yy338;
+ if (yych == 'e') goto yy339;
goto yy14;
yy277:
yych = (unsigned char)*++cur;
- if (yych == '1') goto yy339;
- if (yych == '8') goto yy90;
+ if (yych == 't') goto yy340;
goto yy14;
yy278:
yych = (unsigned char)*++cur;
- if (yych == '-') goto yy340;
+ if (yych == 'a') goto yy341;
goto yy14;
yy279:
yych = (unsigned char)*++cur;
- if (yych == 'i') goto yy341;
+ if (yych == '-') goto yy342;
goto yy14;
yy280:
+ yych = (unsigned char)*++cur;
+ if (yych == 'o') goto yy343;
+ goto yy14;
+yy281:
+ yych = (unsigned char)*++cur;
+ if (yych == '1') goto yy344;
+ if (yych == '8') goto yy90;
+ goto yy14;
+yy282:
+ yych = (unsigned char)*++cur;
+ if (yych == '-') goto yy345;
+ goto yy14;
+yy283:
+ yych = (unsigned char)*++cur;
+ if (yych == 'i') goto yy346;
+ goto yy14;
+yy284:
++cur;
-#line 137 "../src/parse/lex_conf.re"
+#line 138 "../src/parse/lex_conf.re"
{
const int32_t n = lex_conf_number ();
if (n < 0)
opts.set_topIndent (static_cast<uint32_t> (n));
return;
}
-#line 1356 "src/parse/lex_conf.cc"
-yy282:
+#line 1373 "src/parse/lex_conf.cc"
+yy286:
yych = (unsigned char)*++cur;
- if (yych == 'l') goto yy342;
+ if (yych == 'l') goto yy347;
goto yy14;
-yy283:
+yy287:
yych = (unsigned char)*++cur;
- if (yych == 'x') goto yy343;
+ if (yych == 'x') goto yy348;
goto yy14;
-yy284:
+yy288:
yych = (unsigned char)*++cur;
- if (yych == 'x') goto yy344;
+ if (yych == 'x') goto yy349;
goto yy14;
-yy285:
+yy289:
yyaccept = 14;
yych = (unsigned char)*(ptr = ++cur);
if (yych <= 0x1F) {
if (yych == '\t') {
ctx = cur;
- goto yy346;
+ goto yy351;
}
} else {
if (yych <= ' ') {
ctx = cur;
- goto yy346;
+ goto yy351;
}
if (yych == '=') {
ctx = cur;
- goto yy348;
+ goto yy353;
}
}
-yy286:
-#line 165 "../src/parse/lex_conf.re"
- { opts.set_startlabel (lex_conf_string()); return; }
-#line 1390 "src/parse/lex_conf.cc"
-yy287:
- yych = (unsigned char)*++cur;
- if (yych == 't') goto yy350;
- goto yy14;
-yy288:
- yych = (unsigned char)*++cur;
- if (yych == 'l') goto yy352;
- goto yy14;
-yy289:
- yych = (unsigned char)*++cur;
- if (yych == 'l') goto yy353;
- goto yy14;
yy290:
- yych = (unsigned char)*++cur;
- if (yych == 's') goto yy354;
- goto yy14;
+#line 166 "../src/parse/lex_conf.re"
+ { opts.set_startlabel (lex_conf_string()); return; }
+#line 1407 "src/parse/lex_conf.cc"
yy291:
yych = (unsigned char)*++cur;
- if (yych == 'x') goto yy355;
+ if (yych == 't') goto yy355;
goto yy14;
yy292:
yych = (unsigned char)*++cur;
- if (yych == 'y') goto yy357;
+ if (yych == 'l') goto yy357;
goto yy14;
yy293:
yych = (unsigned char)*++cur;
- if (yych == 'r') goto yy358;
+ if (yych == 'l') goto yy358;
goto yy14;
yy294:
yych = (unsigned char)*++cur;
- if (yych == 'c') goto yy359;
+ if (yych == 's') goto yy359;
goto yy14;
yy295:
yych = (unsigned char)*++cur;
- if (yych == 'b') goto yy360;
+ if (yych == 'x') goto yy360;
goto yy14;
yy296:
yych = (unsigned char)*++cur;
- if (yych == 'a') goto yy361;
+ if (yych == 'y') goto yy362;
goto yy14;
yy297:
yych = (unsigned char)*++cur;
- if (yych == 'h') goto yy362;
+ if (yych == 'r') goto yy363;
goto yy14;
yy298:
yych = (unsigned char)*++cur;
- if (yych == 'r') goto yy363;
+ if (yych == 'c') goto yy364;
goto yy14;
yy299:
yych = (unsigned char)*++cur;
- if (yych == 'o') goto yy365;
+ if (yych == 'b') goto yy365;
goto yy14;
yy300:
yych = (unsigned char)*++cur;
- if (yych == 'f') goto yy366;
+ if (yych == 'a') goto yy366;
goto yy14;
yy301:
yych = (unsigned char)*++cur;
- if (yych == 'C') goto yy367;
+ if (yych == 'h') goto yy367;
goto yy14;
yy302:
yych = (unsigned char)*++cur;
- if (yych == 'N') goto yy368;
- if (yych == 'P') goto yy369;
+ if (yych == 'r') goto yy368;
goto yy14;
yy303:
yych = (unsigned char)*++cur;
- if (yych <= 'W') goto yy14;
- if (yych <= 'X') goto yy370;
- if (yych <= 'Y') goto yy371;
+ if (yych == 'o') goto yy370;
goto yy14;
yy304:
yych = (unsigned char)*++cur;
- if (yych == 'R') goto yy372;
+ if (yych == 'f') goto yy371;
goto yy14;
yy305:
yych = (unsigned char)*++cur;
- if (yych == 'B') goto yy373;
+ if (yych == 'C') goto yy372;
goto yy14;
yy306:
yych = (unsigned char)*++cur;
- if (yych == 'L') goto yy374;
+ if (yych == 'N') goto yy373;
+ if (yych == 'P') goto yy374;
goto yy14;
yy307:
yych = (unsigned char)*++cur;
- if (yych == 'T') goto yy375;
+ if (yych <= 'W') goto yy14;
+ if (yych <= 'X') goto yy375;
+ if (yych <= 'Y') goto yy376;
goto yy14;
yy308:
yych = (unsigned char)*++cur;
- if (yych == 'S') goto yy376;
+ if (yych == 'R') goto yy377;
goto yy14;
yy309:
yych = (unsigned char)*++cur;
- if (yych == 'M') goto yy377;
+ if (yych == 'B') goto yy378;
goto yy14;
yy310:
yych = (unsigned char)*++cur;
- if (yych == 'R') goto yy378;
+ if (yych == 'L') goto yy379;
goto yy14;
yy311:
yych = (unsigned char)*++cur;
- if (yych == 'E') goto yy379;
+ if (yych == 'T') goto yy380;
goto yy14;
yy312:
yych = (unsigned char)*++cur;
- if (yych == 'S') goto yy380;
+ if (yych == 'S') goto yy381;
goto yy14;
yy313:
yych = (unsigned char)*++cur;
- if (yych == 'T') goto yy381;
+ if (yych == 'M') goto yy382;
goto yy14;
yy314:
yych = (unsigned char)*++cur;
- if (yych == 'I') goto yy382;
+ if (yych == 'R') goto yy383;
goto yy14;
yy315:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy383;
+ if (yych == 'E') goto yy384;
goto yy14;
yy316:
yych = (unsigned char)*++cur;
- if (yych == 'i') goto yy384;
+ if (yych == 'S') goto yy385;
goto yy14;
yy317:
yych = (unsigned char)*++cur;
- if (yych == 't') goto yy385;
+ if (yych == 'T') goto yy386;
goto yy14;
yy318:
yych = (unsigned char)*++cur;
- if (yych == '-') goto yy386;
+ if (yych == 'I') goto yy387;
goto yy14;
yy319:
yych = (unsigned char)*++cur;
- if (yych == 'i') goto yy387;
+ if (yych == 'e') goto yy388;
goto yy14;
yy320:
yych = (unsigned char)*++cur;
- if (yych == '-') goto yy388;
+ if (yych == 'i') goto yy389;
goto yy14;
yy321:
yych = (unsigned char)*++cur;
- if (yych == 'd') goto yy389;
+ if (yych == 't') goto yy390;
goto yy14;
yy322:
yych = (unsigned char)*++cur;
- if (yych == '-') goto yy390;
+ if (yych == '-') goto yy391;
goto yy14;
yy323:
yych = (unsigned char)*++cur;
- if (yych == 'i') goto yy391;
+ if (yych == 'i') goto yy392;
goto yy14;
yy324:
yych = (unsigned char)*++cur;
- if (yych == 's') goto yy392;
+ if (yych == '-') goto yy393;
goto yy14;
yy325:
- ++cur;
-#line 72 "../src/parse/lex_conf.re"
- { lex_conf_input(); return; }
-#line 1550 "src/parse/lex_conf.cc"
-yy327:
yych = (unsigned char)*++cur;
- if (yych == 'd') goto yy393;
+ if (yych == 'd') goto yy394;
goto yy14;
-yy328:
+yy326:
yych = (unsigned char)*++cur;
- if (yych == 'b') goto yy394;
+ if (yych == '-') goto yy395;
goto yy14;
-yy329:
+yy327:
yych = (unsigned char)*++cur;
- if (yych == 'n') goto yy395;
+ if (yych == 'i') goto yy396;
goto yy14;
-yy330:
+yy328:
yych = (unsigned char)*++cur;
- if (yych == 'o') goto yy396;
+ if (yych == 's') goto yy397;
goto yy14;
+yy329:
+ ++cur;
+#line 73 "../src/parse/lex_conf.re"
+ { lex_conf_input(); return; }
+#line 1567 "src/parse/lex_conf.cc"
yy331:
yych = (unsigned char)*++cur;
- if (yych == 'r') goto yy397;
+ if (yych == 'd') goto yy398;
goto yy14;
yy332:
yych = (unsigned char)*++cur;
- if (yych == 't') goto yy398;
+ if (yych == 'b') goto yy399;
goto yy14;
yy333:
yych = (unsigned char)*++cur;
- if (yych == 'b') goto yy399;
+ if (yych == 'n') goto yy400;
goto yy14;
yy334:
yych = (unsigned char)*++cur;
- if (yych == 't') goto yy400;
+ if (yych == 'o') goto yy401;
goto yy14;
yy335:
yych = (unsigned char)*++cur;
- if (yych == '-') goto yy401;
+ if (yych == 'r') goto yy402;
goto yy14;
yy336:
yych = (unsigned char)*++cur;
- if (yych == 'b') goto yy402;
+ if (yych == 't') goto yy403;
goto yy14;
yy337:
yych = (unsigned char)*++cur;
- if (yych == 'h') goto yy403;
+ if (yych == '-') goto yy404;
goto yy14;
yy338:
yych = (unsigned char)*++cur;
- if (yych == 'd') goto yy404;
+ if (yych == 'b') goto yy405;
goto yy14;
yy339:
yych = (unsigned char)*++cur;
- if (yych == '6') goto yy127;
+ if (yych == 't') goto yy406;
goto yy14;
yy340:
yych = (unsigned char)*++cur;
- if (yych == 'c') goto yy405;
+ if (yych == '-') goto yy407;
goto yy14;
yy341:
yych = (unsigned char)*++cur;
- if (yych == 'n') goto yy406;
+ if (yych == 'b') goto yy408;
goto yy14;
yy342:
yych = (unsigned char)*++cur;
- if (yych == 'l') goto yy407;
+ if (yych == 'h') goto yy409;
goto yy14;
yy343:
yych = (unsigned char)*++cur;
- if (yych == 't') goto yy408;
+ if (yych == 'd') goto yy410;
goto yy14;
yy344:
+ yych = (unsigned char)*++cur;
+ if (yych == '6') goto yy128;
+ goto yy14;
+yy345:
+ yych = (unsigned char)*++cur;
+ if (yych == 'c') goto yy411;
+ goto yy14;
+yy346:
+ yych = (unsigned char)*++cur;
+ if (yych == 'n') goto yy412;
+ goto yy14;
+yy347:
+ yych = (unsigned char)*++cur;
+ if (yych == 'l') goto yy413;
+ goto yy14;
+yy348:
+ yych = (unsigned char)*++cur;
+ if (yych == 't') goto yy414;
+ goto yy14;
+yy349:
++cur;
-#line 161 "../src/parse/lex_conf.re"
+#line 162 "../src/parse/lex_conf.re"
{ opts.set_labelPrefix (lex_conf_string ()); return; }
-#line 1623 "src/parse/lex_conf.cc"
-yy346:
+#line 1644 "src/parse/lex_conf.cc"
+yy351:
++cur;
if (lim <= cur) fill(1);
yych = (unsigned char)*cur;
if (yybm[0+yych] & 64) {
- goto yy346;
+ goto yy351;
}
if (yych != '=') goto yy14;
-yy348:
+yy353:
++cur;
if ((lim - cur) < 2) fill(2);
yych = (unsigned char)*cur;
if (yych <= ',') {
if (yych <= '\t') {
if (yych <= 0x08) goto yy14;
- goto yy348;
+ goto yy353;
} else {
- if (yych == ' ') goto yy348;
+ if (yych == ' ') goto yy353;
goto yy14;
}
} else {
if (yych <= '/') {
- if (yych <= '-') goto yy410;
+ if (yych <= '-') goto yy416;
goto yy14;
} else {
- if (yych <= '0') goto yy411;
- if (yych <= '9') goto yy413;
+ if (yych <= '0') goto yy417;
+ if (yych <= '9') goto yy419;
goto yy14;
}
}
-yy350:
+yy355:
++cur;
-#line 97 "../src/parse/lex_conf.re"
+#line 98 "../src/parse/lex_conf.re"
{ opts.set_bUseStateAbort (lex_conf_bool()); return; }
-#line 1658 "src/parse/lex_conf.cc"
-yy352:
+#line 1679 "src/parse/lex_conf.cc"
+yy357:
yych = (unsigned char)*++cur;
- if (yych == 'a') goto yy415;
+ if (yych == 'a') goto yy421;
goto yy14;
-yy353:
+yy358:
yych = (unsigned char)*++cur;
- if (yych == 't') goto yy416;
+ if (yych == 't') goto yy422;
goto yy14;
-yy354:
+yy359:
yych = (unsigned char)*++cur;
- if (yych == 's') goto yy418;
+ if (yych == 's') goto yy424;
goto yy14;
-yy355:
+yy360:
++cur;
-#line 132 "../src/parse/lex_conf.re"
+#line 133 "../src/parse/lex_conf.re"
{ opts.set_tags_prefix (lex_conf_string ()); return; }
-#line 1675 "src/parse/lex_conf.cc"
-yy357:
+#line 1696 "src/parse/lex_conf.cc"
+yy362:
yych = (unsigned char)*++cur;
if (yych <= 'c') {
if (yych <= '`') goto yy14;
- if (yych <= 'a') goto yy419;
- if (yych <= 'b') goto yy420;
- goto yy421;
+ if (yych <= 'a') goto yy425;
+ if (yych <= 'b') goto yy426;
+ goto yy427;
} else {
if (yych <= 'r') goto yy14;
- if (yych <= 's') goto yy422;
- if (yych <= 't') goto yy423;
+ if (yych <= 's') goto yy428;
+ if (yych <= 't') goto yy429;
goto yy14;
}
-yy358:
- yych = (unsigned char)*++cur;
- if (yych == 's') goto yy424;
- goto yy14;
-yy359:
- yych = (unsigned char)*++cur;
- if (yych == 'k') goto yy425;
- goto yy14;
-yy360:
- yych = (unsigned char)*++cur;
- if (yych == 'l') goto yy427;
- goto yy14;
-yy361:
+yy363:
yych = (unsigned char)*++cur;
- if (yych == 'm') goto yy428;
+ if (yych == 's') goto yy430;
goto yy14;
-yy362:
+yy364:
yych = (unsigned char)*++cur;
- if (yych == 'o') goto yy429;
+ if (yych == 'k') goto yy431;
goto yy14;
-yy363:
- yyaccept = 15;
- yych = (unsigned char)*(ptr = ++cur);
- if (yych == '@') goto yy430;
-yy364:
-#line 84 "../src/parse/lex_conf.re"
- { opts.set_condDivider (lex_conf_string ()); return; }
-#line 1716 "src/parse/lex_conf.cc"
yy365:
yych = (unsigned char)*++cur;
- if (yych == 'n') goto yy431;
+ if (yych == 'l') goto yy433;
goto yy14;
yy366:
yych = (unsigned char)*++cur;
- if (yych == 'i') goto yy432;
+ if (yych == 'm') goto yy434;
goto yy14;
yy367:
yych = (unsigned char)*++cur;
- if (yych == 'K') goto yy433;
+ if (yych == 'o') goto yy435;
goto yy14;
yy368:
- yych = (unsigned char)*++cur;
- if (yych == 'D') goto yy434;
- goto yy14;
+ yyaccept = 15;
+ yych = (unsigned char)*(ptr = ++cur);
+ if (yych == '@') goto yy436;
yy369:
- yych = (unsigned char)*++cur;
- if (yych == 'Y') goto yy435;
- goto yy14;
+#line 85 "../src/parse/lex_conf.re"
+ { opts.set_condDivider (lex_conf_string ()); return; }
+#line 1737 "src/parse/lex_conf.cc"
yy370:
yych = (unsigned char)*++cur;
- if (yych == 'M') goto yy436;
+ if (yych == 'n') goto yy437;
goto yy14;
yy371:
yych = (unsigned char)*++cur;
- if (yych == 'P') goto yy437;
+ if (yych == 'i') goto yy438;
goto yy14;
yy372:
yych = (unsigned char)*++cur;
- if (yych == 'S') goto yy438;
+ if (yych == 'K') goto yy439;
goto yy14;
yy373:
yych = (unsigned char)*++cur;
- if (yych == 'U') goto yy439;
+ if (yych == 'D') goto yy440;
goto yy14;
yy374:
yych = (unsigned char)*++cur;
- if (yych == 'L') goto yy440;
+ if (yych == 'Y') goto yy441;
goto yy14;
yy375:
yych = (unsigned char)*++cur;
- if (yych == 'C') goto yy442;
- if (yych == 'S') goto yy443;
+ if (yych == 'M') goto yy442;
goto yy14;
yy376:
yych = (unsigned char)*++cur;
- if (yych == 'S') goto yy444;
+ if (yych == 'P') goto yy443;
goto yy14;
yy377:
yych = (unsigned char)*++cur;
- if (yych == 'I') goto yy445;
+ if (yych == 'S') goto yy444;
goto yy14;
yy378:
yych = (unsigned char)*++cur;
- if (yych == 'K') goto yy446;
+ if (yych == 'U') goto yy445;
goto yy14;
yy379:
yych = (unsigned char)*++cur;
- if (yych == 'K') goto yy447;
+ if (yych == 'L') goto yy446;
goto yy14;
yy380:
yych = (unsigned char)*++cur;
- if (yych == 'T') goto yy449;
+ if (yych == 'C') goto yy448;
+ if (yych == 'S') goto yy449;
goto yy14;
yy381:
yych = (unsigned char)*++cur;
- if (yych == 'C') goto yy450;
- if (yych == 'S') goto yy451;
+ if (yych == 'S') goto yy450;
goto yy14;
yy382:
yych = (unsigned char)*++cur;
- if (yych == 'P') goto yy452;
+ if (yych == 'I') goto yy451;
goto yy14;
yy383:
yych = (unsigned char)*++cur;
- if (yych == 'c') goto yy454;
+ if (yych == 'K') goto yy452;
goto yy14;
yy384:
yych = (unsigned char)*++cur;
- if (yych == 'n') goto yy455;
+ if (yych == 'K') goto yy453;
goto yy14;
yy385:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy456;
+ if (yych == 'T') goto yy455;
goto yy14;
yy386:
yych = (unsigned char)*++cur;
- if (yych == 'o') goto yy457;
+ if (yych == 'C') goto yy456;
+ if (yych == 'S') goto yy457;
goto yy14;
yy387:
yych = (unsigned char)*++cur;
- if (yych == 'n') goto yy458;
+ if (yych == 'P') goto yy458;
goto yy14;
yy388:
yych = (unsigned char)*++cur;
- if (yych == 's') goto yy459;
+ if (yych == 'c') goto yy460;
goto yy14;
yy389:
yych = (unsigned char)*++cur;
- if (yych == 'o') goto yy460;
+ if (yych == 'n') goto yy461;
goto yy14;
yy390:
yych = (unsigned char)*++cur;
- if (yych == 'c') goto yy461;
+ if (yych == 'e') goto yy462;
goto yy14;
yy391:
yych = (unsigned char)*++cur;
- if (yych == 'n') goto yy462;
+ if (yych == 'o') goto yy463;
goto yy14;
yy392:
yych = (unsigned char)*++cur;
- if (yych == 'y') goto yy463;
+ if (yych == 'n') goto yy464;
goto yy14;
yy393:
yych = (unsigned char)*++cur;
- if (yych == '-') goto yy464;
+ if (yych == 's') goto yy465;
goto yy14;
yy394:
yych = (unsigned char)*++cur;
- if (yych == 'u') goto yy465;
+ if (yych == 'o') goto yy466;
goto yy14;
yy395:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy466;
+ if (yych == 'c') goto yy467;
goto yy14;
yy396:
yych = (unsigned char)*++cur;
- if (yych == 'k') goto yy467;
+ if (yych == 'n') goto yy468;
goto yy14;
yy397:
yych = (unsigned char)*++cur;
- if (yych == 's') goto yy468;
+ if (yych == 'y') goto yy469;
goto yy14;
yy398:
- ++cur;
- goto yy116;
+ yych = (unsigned char)*++cur;
+ if (yych == '-') goto yy470;
+ goto yy14;
yy399:
yych = (unsigned char)*++cur;
- if (yych == 'l') goto yy469;
+ if (yych == 'u') goto yy471;
goto yy14;
yy400:
yych = (unsigned char)*++cur;
- if (yych == 'o') goto yy470;
+ if (yych == 'e') goto yy472;
goto yy14;
yy401:
yych = (unsigned char)*++cur;
- if (yych == 'c') goto yy471;
+ if (yych == 'k') goto yy473;
goto yy14;
yy402:
yych = (unsigned char)*++cur;
- if (yych == 'l') goto yy472;
+ if (yych == 's') goto yy474;
goto yy14;
yy403:
- yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy473;
- goto yy14;
+ ++cur;
+ goto yy116;
yy404:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy474;
+ if (yych == 'c') goto yy475;
goto yy14;
yy405:
yych = (unsigned char)*++cur;
- if (yych == 'h') goto yy475;
+ if (yych == 'l') goto yy476;
goto yy14;
yy406:
yych = (unsigned char)*++cur;
- if (yych == 'g') goto yy476;
+ if (yych == 'o') goto yy477;
goto yy14;
yy407:
yych = (unsigned char)*++cur;
- if (yych == 'L') goto yy478;
+ if (yych == 'c') goto yy478;
goto yy14;
yy408:
- ++cur;
-#line 96 "../src/parse/lex_conf.re"
- { opts.set_yynext (lex_conf_string ()); return; }
-#line 1894 "src/parse/lex_conf.cc"
-yy410:
yych = (unsigned char)*++cur;
- if (yych <= '0') goto yy14;
- if (yych <= '9') goto yy413;
+ if (yych == 'l') goto yy479;
goto yy14;
-yy411:
- ++cur;
-yy412:
- cur = ctx;
-#line 164 "../src/parse/lex_conf.re"
- { opts.set_startlabel_force (lex_conf_bool()); return; }
-#line 1906 "src/parse/lex_conf.cc"
-yy413:
- ++cur;
- if (lim <= cur) fill(1);
- yych = (unsigned char)*cur;
- if (yybm[0+yych] & 128) {
- goto yy413;
- }
- goto yy412;
-yy415:
+yy409:
yych = (unsigned char)*++cur;
- if (yych == 'b') goto yy479;
+ if (yych == 'e') goto yy480;
goto yy14;
-yy416:
- ++cur;
-#line 131 "../src/parse/lex_conf.re"
- { opts.set_tags_default (lex_conf_string ()); return; }
-#line 1923 "src/parse/lex_conf.cc"
-yy418:
+yy410:
yych = (unsigned char)*++cur;
- if (yych == 'i') goto yy480;
+ if (yych == 'e') goto yy481;
goto yy14;
-yy419:
+yy411:
yych = (unsigned char)*++cur;
- if (yych == 'c') goto yy481;
+ if (yych == 'h') goto yy482;
goto yy14;
-yy420:
+yy412:
yych = (unsigned char)*++cur;
- if (yych == 'm') goto yy482;
+ if (yych == 'g') goto yy483;
goto yy14;
-yy421:
+yy413:
yych = (unsigned char)*++cur;
- if (yych == 'h') goto yy484;
- if (yych == 't') goto yy486;
+ if (yych == 'L') goto yy485;
goto yy14;
-yy422:
+yy414:
+ ++cur;
+#line 97 "../src/parse/lex_conf.re"
+ { opts.set_yynext (lex_conf_string ()); return; }
+#line 1919 "src/parse/lex_conf.cc"
+yy416:
yych = (unsigned char)*++cur;
- if (yych == 't') goto yy487;
+ if (yych <= '0') goto yy14;
+ if (yych <= '9') goto yy419;
goto yy14;
-yy423:
+yy417:
+ ++cur;
+yy418:
+ cur = ctx;
+#line 165 "../src/parse/lex_conf.re"
+ { opts.set_startlabel_force (lex_conf_bool()); return; }
+#line 1931 "src/parse/lex_conf.cc"
+yy419:
+ ++cur;
+ if (lim <= cur) fill(1);
+ yych = (unsigned char)*cur;
+ if (yybm[0+yych] & 128) {
+ goto yy419;
+ }
+ goto yy418;
+yy421:
yych = (unsigned char)*++cur;
- if (yych == 'a') goto yy488;
+ if (yych == 'b') goto yy486;
goto yy14;
+yy422:
+ ++cur;
+#line 132 "../src/parse/lex_conf.re"
+ { opts.set_tags_default (lex_conf_string ()); return; }
+#line 1948 "src/parse/lex_conf.cc"
yy424:
yych = (unsigned char)*++cur;
- if (yych == 'i') goto yy489;
+ if (yych == 'i') goto yy487;
goto yy14;
yy425:
- ++cur;
-#line 159 "../src/parse/lex_conf.re"
- { opts.set_fill_check (lex_conf_bool()); return; }
-#line 1957 "src/parse/lex_conf.cc"
+ yych = (unsigned char)*++cur;
+ if (yych == 'c') goto yy488;
+ goto yy14;
+yy426:
+ yych = (unsigned char)*++cur;
+ if (yych == 'm') goto yy489;
+ goto yy14;
yy427:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy490;
+ if (yych == 'h') goto yy491;
+ if (yych == 't') goto yy493;
goto yy14;
yy428:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy492;
+ if (yych == 't') goto yy494;
goto yy14;
yy429:
yych = (unsigned char)*++cur;
- if (yych == 'l') goto yy493;
+ if (yych == 'a') goto yy495;
goto yy14;
yy430:
yych = (unsigned char)*++cur;
- if (yych == 'c') goto yy494;
+ if (yych == 'i') goto yy496;
goto yy14;
yy431:
- yych = (unsigned char)*++cur;
- if (yych == 'd') goto yy495;
- goto yy14;
-yy432:
- yych = (unsigned char)*++cur;
- if (yych == 'x') goto yy497;
- goto yy14;
+ ++cur;
+#line 160 "../src/parse/lex_conf.re"
+ { opts.set_fill_check (lex_conf_bool()); return; }
+#line 1982 "src/parse/lex_conf.cc"
yy433:
yych = (unsigned char)*++cur;
- if (yych == 'U') goto yy499;
+ if (yych == 'e') goto yy497;
goto yy14;
yy434:
yych = (unsigned char)*++cur;
- if (yych == 'T') goto yy500;
+ if (yych == 'e') goto yy499;
goto yy14;
yy435:
yych = (unsigned char)*++cur;
- if (yych == 'T') goto yy501;
+ if (yych == 'l') goto yy500;
goto yy14;
yy436:
yych = (unsigned char)*++cur;
- if (yych == 'A') goto yy502;
+ if (yych == 'c') goto yy501;
goto yy14;
yy437:
yych = (unsigned char)*++cur;
- if (yych == 'E') goto yy503;
+ if (yych == 'd') goto yy502;
goto yy14;
yy438:
yych = (unsigned char)*++cur;
- if (yych == 'O') goto yy505;
+ if (yych == 'x') goto yy504;
goto yy14;
yy439:
yych = (unsigned char)*++cur;
- if (yych == 'G') goto yy506;
+ if (yych == 'U') goto yy506;
goto yy14;
yy440:
- yyaccept = 16;
- yych = (unsigned char)*(ptr = ++cur);
- if (yych == ':') goto yy508;
- if (yych == '@') goto yy509;
+ yych = (unsigned char)*++cur;
+ if (yych == 'T') goto yy507;
+ goto yy14;
yy441:
-#line 154 "../src/parse/lex_conf.re"
- { opts.set_fill (lex_conf_string ()); return; }
-#line 2018 "src/parse/lex_conf.cc"
+ yych = (unsigned char)*++cur;
+ if (yych == 'T') goto yy508;
+ goto yy14;
yy442:
yych = (unsigned char)*++cur;
- if (yych == 'O') goto yy510;
+ if (yych == 'A') goto yy509;
goto yy14;
yy443:
yych = (unsigned char)*++cur;
- if (yych == 'T') goto yy511;
+ if (yych == 'E') goto yy510;
goto yy14;
yy444:
yych = (unsigned char)*++cur;
- if (yych == 'T') goto yy512;
+ if (yych == 'O') goto yy512;
goto yy14;
yy445:
yych = (unsigned char)*++cur;
- if (yych == 'T') goto yy513;
+ if (yych == 'G') goto yy513;
goto yy14;
yy446:
- yych = (unsigned char)*++cur;
- if (yych == 'E') goto yy515;
- goto yy14;
+ yyaccept = 16;
+ yych = (unsigned char)*(ptr = ++cur);
+ if (yych == ':') goto yy515;
+ if (yych == '@') goto yy516;
yy447:
- ++cur;
-#line 120 "../src/parse/lex_conf.re"
- { opts.set_yypeek (lex_conf_string ()); return; }
+#line 155 "../src/parse/lex_conf.re"
+ { opts.set_fill (lex_conf_string ()); return; }
#line 2043 "src/parse/lex_conf.cc"
+yy448:
+ yych = (unsigned char)*++cur;
+ if (yych == 'O') goto yy517;
+ goto yy14;
yy449:
yych = (unsigned char)*++cur;
- if (yych == 'O') goto yy516;
+ if (yych == 'T') goto yy518;
goto yy14;
yy450:
yych = (unsigned char)*++cur;
- if (yych == 'O') goto yy517;
+ if (yych == 'T') goto yy519;
goto yy14;
yy451:
yych = (unsigned char)*++cur;
- if (yych == 'T') goto yy518;
+ if (yych == 'T') goto yy520;
goto yy14;
yy452:
- ++cur;
-#line 121 "../src/parse/lex_conf.re"
- { opts.set_yyskip (lex_conf_string ()); return; }
-#line 2060 "src/parse/lex_conf.cc"
-yy454:
yych = (unsigned char)*++cur;
- if (yych == 't') goto yy519;
+ if (yych == 'E') goto yy522;
goto yy14;
+yy453:
+ ++cur;
+#line 121 "../src/parse/lex_conf.re"
+ { opts.set_yypeek (lex_conf_string ()); return; }
+#line 2068 "src/parse/lex_conf.cc"
yy455:
yych = (unsigned char)*++cur;
- if (yych == 's') goto yy520;
- if (yych == 'v') goto yy521;
+ if (yych == 'O') goto yy523;
goto yy14;
yy456:
yych = (unsigned char)*++cur;
- if (yych == 'd') goto yy522;
+ if (yych == 'O') goto yy524;
goto yy14;
yy457:
yych = (unsigned char)*++cur;
- if (yych == 'u') goto yy523;
+ if (yych == 'T') goto yy525;
goto yy14;
yy458:
- yych = (unsigned char)*++cur;
- if (yych == 'i') goto yy524;
- goto yy14;
-yy459:
- yych = (unsigned char)*++cur;
- if (yych == 'k') goto yy525;
- goto yy14;
+ ++cur;
+#line 122 "../src/parse/lex_conf.re"
+ { opts.set_yyskip (lex_conf_string ()); return; }
+#line 2085 "src/parse/lex_conf.cc"
yy460:
yych = (unsigned char)*++cur;
- if (yych == 't') goto yy92;
+ if (yych == 't') goto yy526;
goto yy14;
yy461:
yych = (unsigned char)*++cur;
- if (yych == 'l') goto yy526;
+ if (yych == 's') goto yy527;
+ if (yych == 'v') goto yy528;
goto yy14;
yy462:
yych = (unsigned char)*++cur;
- if (yych == 'g') goto yy527;
+ if (yych == 'd') goto yy529;
goto yy14;
yy463:
yych = (unsigned char)*++cur;
- if (yych == 'n') goto yy528;
+ if (yych == 'u') goto yy530;
goto yy14;
yy464:
yych = (unsigned char)*++cur;
- if (yych == 'i') goto yy529;
+ if (yych == 'i') goto yy531;
goto yy14;
yy465:
yych = (unsigned char)*++cur;
- if (yych == 'g') goto yy530;
+ if (yych == 'k') goto yy532;
goto yy14;
yy466:
yych = (unsigned char)*++cur;
- if (yych == 'r') goto yy531;
+ if (yych == 't') goto yy92;
goto yy14;
yy467:
yych = (unsigned char)*++cur;
- if (yych == 'a') goto yy532;
+ if (yych == 'l') goto yy533;
goto yy14;
yy468:
yych = (unsigned char)*++cur;
- if (yych == 'i') goto yy533;
+ if (yych == 'g') goto yy534;
goto yy14;
yy469:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy534;
+ if (yych == 'n') goto yy535;
goto yy14;
yy470:
yych = (unsigned char)*++cur;
- if (yych == 'n') goto yy96;
+ if (yych == 'i') goto yy536;
goto yy14;
yy471:
yych = (unsigned char)*++cur;
- if (yych == 'o') goto yy535;
+ if (yych == 'g') goto yy537;
goto yy14;
yy472:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy536;
+ if (yych == 'r') goto yy538;
goto yy14;
yy473:
yych = (unsigned char)*++cur;
- if (yych == 'a') goto yy537;
+ if (yych == 'a') goto yy539;
goto yy14;
yy474:
- ++cur;
- goto yy124;
+ yych = (unsigned char)*++cur;
+ if (yych == 'i') goto yy540;
+ goto yy14;
yy475:
yych = (unsigned char)*++cur;
- if (yych == 'a') goto yy538;
+ if (yych == 'a') goto yy541;
goto yy14;
yy476:
- ++cur;
-#line 135 "../src/parse/lex_conf.re"
- { opts.set_indString (lex_conf_string ()); return; }
-#line 2153 "src/parse/lex_conf.cc"
+ yych = (unsigned char)*++cur;
+ if (yych == 'e') goto yy542;
+ goto yy14;
+yy477:
+ yych = (unsigned char)*++cur;
+ if (yych == 'n') goto yy96;
+ goto yy14;
yy478:
yych = (unsigned char)*++cur;
- if (yych == 'a') goto yy539;
+ if (yych == 'o') goto yy543;
goto yy14;
yy479:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy540;
+ if (yych == 'e') goto yy544;
goto yy14;
yy480:
yych = (unsigned char)*++cur;
- if (yych == 'o') goto yy541;
+ if (yych == 'a') goto yy545;
goto yy14;
yy481:
+ ++cur;
+ goto yy125;
+yy482:
yych = (unsigned char)*++cur;
- if (yych == 'c') goto yy542;
+ if (yych == 'a') goto yy546;
goto yy14;
-yy482:
+yy483:
++cur;
-#line 101 "../src/parse/lex_conf.re"
- { opts.set_yybm (lex_conf_string ()); return; }
-#line 2174 "src/parse/lex_conf.cc"
-yy484:
- ++cur;
-#line 150 "../src/parse/lex_conf.re"
- { opts.set_yych (lex_conf_string ()); return; }
-#line 2179 "src/parse/lex_conf.cc"
+#line 136 "../src/parse/lex_conf.re"
+ { opts.set_indString (lex_conf_string ()); return; }
+#line 2182 "src/parse/lex_conf.cc"
+yy485:
+ yych = (unsigned char)*++cur;
+ if (yych == 'a') goto yy547;
+ goto yy14;
yy486:
yych = (unsigned char)*++cur;
- if (yych == 'a') goto yy543;
+ if (yych == 'e') goto yy548;
goto yy14;
yy487:
yych = (unsigned char)*++cur;
- if (yych == 'a') goto yy544;
+ if (yych == 'o') goto yy549;
goto yy14;
yy488:
yych = (unsigned char)*++cur;
- if (yych == 'r') goto yy545;
+ if (yych == 'c') goto yy550;
goto yy14;
yy489:
- yych = (unsigned char)*++cur;
- if (yych == 'o') goto yy546;
- goto yy14;
-yy490:
++cur;
-#line 155 "../src/parse/lex_conf.re"
- { opts.set_fill_use (lex_conf_bool()); return; }
-#line 2200 "src/parse/lex_conf.cc"
-yy492:
- yych = (unsigned char)*++cur;
- if (yych == 't') goto yy547;
- goto yy14;
+#line 102 "../src/parse/lex_conf.re"
+ { opts.set_yybm (lex_conf_string ()); return; }
+#line 2203 "src/parse/lex_conf.cc"
+yy491:
+ ++cur;
+#line 151 "../src/parse/lex_conf.re"
+ { opts.set_yych (lex_conf_string ()); return; }
+#line 2208 "src/parse/lex_conf.cc"
yy493:
yych = (unsigned char)*++cur;
- if (yych == 'd') goto yy548;
+ if (yych == 'a') goto yy551;
goto yy14;
yy494:
yych = (unsigned char)*++cur;
- if (yych == 'o') goto yy550;
+ if (yych == 'a') goto yy552;
goto yy14;
yy495:
- ++cur;
-#line 87 "../src/parse/lex_conf.re"
- { opts.set_condGotoParam (lex_conf_string ()); return; }
-#line 2217 "src/parse/lex_conf.cc"
+ yych = (unsigned char)*++cur;
+ if (yych == 'r') goto yy553;
+ goto yy14;
+yy496:
+ yych = (unsigned char)*++cur;
+ if (yych == 'o') goto yy554;
+ goto yy14;
yy497:
++cur;
-#line 83 "../src/parse/lex_conf.re"
- { opts.set_condEnumPrefix (lex_conf_string ()); return; }
-#line 2222 "src/parse/lex_conf.cc"
+#line 156 "../src/parse/lex_conf.re"
+ { opts.set_fill_use (lex_conf_bool()); return; }
+#line 2229 "src/parse/lex_conf.cc"
yy499:
yych = (unsigned char)*++cur;
- if (yych == 'P') goto yy551;
+ if (yych == 't') goto yy555;
goto yy14;
yy500:
yych = (unsigned char)*++cur;
- if (yych == 'Y') goto yy553;
+ if (yych == 'd') goto yy556;
goto yy14;
yy501:
yych = (unsigned char)*++cur;
- if (yych == 'A') goto yy554;
+ if (yych == 'o') goto yy558;
goto yy14;
yy502:
+ ++cur;
+#line 88 "../src/parse/lex_conf.re"
+ { opts.set_condGotoParam (lex_conf_string ()); return; }
+#line 2246 "src/parse/lex_conf.cc"
+yy504:
+ ++cur;
+#line 84 "../src/parse/lex_conf.re"
+ { opts.set_condEnumPrefix (lex_conf_string ()); return; }
+#line 2251 "src/parse/lex_conf.cc"
+yy506:
yych = (unsigned char)*++cur;
- if (yych == 'R') goto yy555;
+ if (yych == 'P') goto yy559;
goto yy14;
-yy503:
- ++cur;
-#line 149 "../src/parse/lex_conf.re"
- { opts.set_yyctype (lex_conf_string ()); return; }
-#line 2243 "src/parse/lex_conf.cc"
-yy505:
+yy507:
yych = (unsigned char)*++cur;
- if (yych == 'R') goto yy556;
+ if (yych == 'Y') goto yy561;
goto yy14;
-yy506:
- ++cur;
-#line 147 "../src/parse/lex_conf.re"
- { opts.set_yydebug (lex_conf_string ()); return; }
-#line 2252 "src/parse/lex_conf.cc"
yy508:
yych = (unsigned char)*++cur;
- if (yych == 'n') goto yy558;
+ if (yych == 'A') goto yy562;
goto yy14;
yy509:
yych = (unsigned char)*++cur;
- if (yych == 'l') goto yy559;
+ if (yych == 'R') goto yy563;
goto yy14;
yy510:
- yych = (unsigned char)*++cur;
- if (yych == 'N') goto yy560;
- goto yy14;
-yy511:
- yych = (unsigned char)*++cur;
- if (yych == 'A') goto yy561;
- goto yy14;
+ ++cur;
+#line 150 "../src/parse/lex_conf.re"
+ { opts.set_yyctype (lex_conf_string ()); return; }
+#line 2272 "src/parse/lex_conf.cc"
yy512:
yych = (unsigned char)*++cur;
- if (yych == 'H') goto yy562;
+ if (yych == 'R') goto yy564;
goto yy14;
yy513:
++cur;
-#line 118 "../src/parse/lex_conf.re"
- { opts.set_yylimit (lex_conf_string ()); return; }
-#line 2277 "src/parse/lex_conf.cc"
+#line 148 "../src/parse/lex_conf.re"
+ { opts.set_yydebug (lex_conf_string ()); return; }
+#line 2281 "src/parse/lex_conf.cc"
yy515:
yych = (unsigned char)*++cur;
- if (yych == 'R') goto yy563;
+ if (yych == 'n') goto yy566;
goto yy14;
yy516:
yych = (unsigned char)*++cur;
- if (yych == 'R') goto yy565;
+ if (yych == 'l') goto yy567;
goto yy14;
yy517:
yych = (unsigned char)*++cur;
- if (yych == 'N') goto yy566;
+ if (yych == 'N') goto yy568;
goto yy14;
yy518:
yych = (unsigned char)*++cur;
- if (yych == 'A') goto yy567;
+ if (yych == 'A') goto yy569;
goto yy14;
yy519:
yych = (unsigned char)*++cur;
- if (yych == 'o') goto yy568;
+ if (yych == 'H') goto yy570;
goto yy14;
yy520:
- yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy569;
- goto yy14;
-yy521:
- yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy570;
- goto yy14;
+ ++cur;
+#line 119 "../src/parse/lex_conf.re"
+ { opts.set_yylimit (lex_conf_string ()); return; }
+#line 2306 "src/parse/lex_conf.cc"
yy522:
yych = (unsigned char)*++cur;
- if (yych == '-') goto yy571;
+ if (yych == 'R') goto yy571;
goto yy14;
yy523:
yych = (unsigned char)*++cur;
- if (yych == 't') goto yy572;
+ if (yych == 'R') goto yy573;
goto yy14;
yy524:
yych = (unsigned char)*++cur;
- if (yych == 'm') goto yy573;
+ if (yych == 'N') goto yy574;
goto yy14;
yy525:
yych = (unsigned char)*++cur;
- if (yych == 'i') goto yy574;
+ if (yych == 'A') goto yy575;
goto yy14;
yy526:
yych = (unsigned char)*++cur;
- if (yych == 'a') goto yy575;
+ if (yych == 'o') goto yy576;
goto yy14;
yy527:
yych = (unsigned char)*++cur;
- if (yych == '-') goto yy576;
+ if (yych == 'e') goto yy577;
goto yy14;
yy528:
yych = (unsigned char)*++cur;
- if (yych == 't') goto yy577;
+ if (yych == 'e') goto yy578;
goto yy14;
yy529:
yych = (unsigned char)*++cur;
- if (yych == 'f') goto yy578;
+ if (yych == '-') goto yy579;
goto yy14;
yy530:
yych = (unsigned char)*++cur;
- if (yych == '-') goto yy579;
+ if (yych == 't') goto yy580;
goto yy14;
yy531:
yych = (unsigned char)*++cur;
- if (yych == 'a') goto yy580;
+ if (yych == 'm') goto yy581;
goto yy14;
yy532:
yych = (unsigned char)*++cur;
- if (yych == 'h') goto yy581;
+ if (yych == 'i') goto yy582;
goto yy14;
yy533:
yych = (unsigned char)*++cur;
- if (yych == 'o') goto yy582;
+ if (yych == 'a') goto yy583;
goto yy14;
yy534:
- ++cur;
- goto yy118;
+ yych = (unsigned char)*++cur;
+ if (yych == '-') goto yy584;
+ goto yy14;
yy535:
yych = (unsigned char)*++cur;
- if (yych == 'n') goto yy583;
+ if (yych == 't') goto yy585;
goto yy14;
yy536:
yych = (unsigned char)*++cur;
- if (yych == '-') goto yy584;
+ if (yych == 'f') goto yy586;
goto yy14;
yy537:
yych = (unsigned char)*++cur;
- if (yych == 'd') goto yy585;
+ if (yych == '-') goto yy587;
goto yy14;
yy538:
yych = (unsigned char)*++cur;
- if (yych == 'r') goto yy586;
+ if (yych == 'a') goto yy588;
goto yy14;
yy539:
yych = (unsigned char)*++cur;
- if (yych == 'b') goto yy587;
+ if (yych == 'h') goto yy589;
goto yy14;
yy540:
yych = (unsigned char)*++cur;
- if (yych == 'l') goto yy588;
+ if (yych == 'o') goto yy590;
goto yy14;
yy541:
yych = (unsigned char)*++cur;
- if (yych == 'n') goto yy590;
+ if (yych == 'p') goto yy591;
goto yy14;
yy542:
- yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy592;
- goto yy14;
+ ++cur;
+ goto yy119;
yy543:
yych = (unsigned char)*++cur;
- if (yych == 'b') goto yy593;
+ if (yych == 'n') goto yy592;
goto yy14;
yy544:
yych = (unsigned char)*++cur;
- if (yych == 'b') goto yy594;
+ if (yych == '-') goto yy593;
goto yy14;
yy545:
yych = (unsigned char)*++cur;
- if (yych == 'g') goto yy595;
+ if (yych == 'd') goto yy594;
goto yy14;
yy546:
yych = (unsigned char)*++cur;
- if (yych == 'n') goto yy596;
+ if (yych == 'r') goto yy595;
goto yy14;
yy547:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy598;
+ if (yych == 'b') goto yy596;
goto yy14;
yy548:
- ++cur;
-#line 104 "../src/parse/lex_conf.re"
- {
- const int32_t n = lex_conf_number ();
- if (n < 0)
- {
- fatal ("configuration 'cgoto:threshold' must be nonnegative");
- }
- opts.set_cGotoThreshold (static_cast<uint32_t> (n));
- return;
- }
-#line 2421 "src/parse/lex_conf.cc"
-yy550:
+ yych = (unsigned char)*++cur;
+ if (yych == 'l') goto yy597;
+ goto yy14;
+yy549:
yych = (unsigned char)*++cur;
if (yych == 'n') goto yy599;
goto yy14;
+yy550:
+ yych = (unsigned char)*++cur;
+ if (yych == 'e') goto yy601;
+ goto yy14;
yy551:
- yyaccept = 17;
- yych = (unsigned char)*(ptr = ++cur);
- if (yych == 'C') goto yy600;
- if (yych == 'T') goto yy601;
+ yych = (unsigned char)*++cur;
+ if (yych == 'b') goto yy602;
+ goto yy14;
yy552:
-#line 122 "../src/parse/lex_conf.re"
- { opts.set_yybackup (lex_conf_string ()); return; }
-#line 2434 "src/parse/lex_conf.cc"
+ yych = (unsigned char)*++cur;
+ if (yych == 'b') goto yy603;
+ goto yy14;
yy553:
yych = (unsigned char)*++cur;
- if (yych == 'P') goto yy602;
+ if (yych == 'g') goto yy604;
goto yy14;
yy554:
yych = (unsigned char)*++cur;
- if (yych == 'G') goto yy603;
+ if (yych == 'n') goto yy605;
goto yy14;
yy555:
yych = (unsigned char)*++cur;
- if (yych == 'K') goto yy605;
+ if (yych == 'e') goto yy607;
goto yy14;
yy556:
++cur;
-#line 115 "../src/parse/lex_conf.re"
- { opts.set_yycursor (lex_conf_string ()); return; }
-#line 2451 "src/parse/lex_conf.cc"
+#line 105 "../src/parse/lex_conf.re"
+ {
+ const int32_t n = lex_conf_number ();
+ if (n < 0)
+ {
+ fatal ("configuration 'cgoto:threshold' must be nonnegative");
+ }
+ opts.set_cGotoThreshold (static_cast<uint32_t> (n));
+ return;
+ }
+#line 2454 "src/parse/lex_conf.cc"
yy558:
yych = (unsigned char)*++cur;
- if (yych == 'a') goto yy606;
+ if (yych == 'n') goto yy608;
goto yy14;
yy559:
- yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy607;
- goto yy14;
+ yyaccept = 17;
+ yych = (unsigned char)*(ptr = ++cur);
+ if (yych == 'C') goto yy609;
+ if (yych == 'T') goto yy610;
yy560:
- yych = (unsigned char)*++cur;
- if (yych == 'D') goto yy608;
- goto yy14;
+#line 123 "../src/parse/lex_conf.re"
+ { opts.set_yybackup (lex_conf_string ()); return; }
+#line 2467 "src/parse/lex_conf.cc"
yy561:
yych = (unsigned char)*++cur;
- if (yych == 'T') goto yy609;
+ if (yych == 'P') goto yy611;
goto yy14;
yy562:
yych = (unsigned char)*++cur;
- if (yych == 'A') goto yy610;
+ if (yych == 'G') goto yy612;
goto yy14;
yy563:
- ++cur;
-#line 116 "../src/parse/lex_conf.re"
- { opts.set_yymarker (lex_conf_string ()); return; }
-#line 2476 "src/parse/lex_conf.cc"
-yy565:
yych = (unsigned char)*++cur;
- if (yych == 'E') goto yy611;
+ if (yych == 'K') goto yy614;
goto yy14;
+yy564:
+ ++cur;
+#line 116 "../src/parse/lex_conf.re"
+ { opts.set_yycursor (lex_conf_string ()); return; }
+#line 2484 "src/parse/lex_conf.cc"
yy566:
yych = (unsigned char)*++cur;
- if (yych == 'D') goto yy613;
+ if (yych == 'a') goto yy615;
goto yy14;
yy567:
yych = (unsigned char)*++cur;
- if (yych == 'T') goto yy614;
+ if (yych == 'e') goto yy616;
goto yy14;
yy568:
yych = (unsigned char)*++cur;
- if (yych == 'r') goto yy615;
+ if (yych == 'D') goto yy617;
goto yy14;
yy569:
yych = (unsigned char)*++cur;
- if (yych == 'n') goto yy616;
+ if (yych == 'T') goto yy618;
goto yy14;
yy570:
yych = (unsigned char)*++cur;
- if (yych == 'r') goto yy617;
+ if (yych == 'A') goto yy619;
goto yy14;
yy571:
- yych = (unsigned char)*++cur;
- if (yych == 'g') goto yy618;
- goto yy14;
-yy572:
- yych = (unsigned char)*++cur;
- if (yych == 'p') goto yy619;
- goto yy14;
+ ++cur;
+#line 117 "../src/parse/lex_conf.re"
+ { opts.set_yymarker (lex_conf_string ()); return; }
+#line 2509 "src/parse/lex_conf.cc"
yy573:
yych = (unsigned char)*++cur;
- if (yych == 'i') goto yy620;
+ if (yych == 'E') goto yy620;
goto yy14;
yy574:
yych = (unsigned char)*++cur;
- if (yych == 'p') goto yy621;
+ if (yych == 'D') goto yy622;
goto yy14;
yy575:
yych = (unsigned char)*++cur;
- if (yych == 's') goto yy623;
+ if (yych == 'T') goto yy623;
goto yy14;
yy576:
yych = (unsigned char)*++cur;
- if (yych == 'p') goto yy624;
+ if (yych == 'r') goto yy624;
goto yy14;
yy577:
yych = (unsigned char)*++cur;
- if (yych == 'a') goto yy625;
+ if (yych == 'n') goto yy625;
goto yy14;
yy578:
yych = (unsigned char)*++cur;
- if (yych == 's') goto yy626;
+ if (yych == 'r') goto yy626;
goto yy14;
yy579:
yych = (unsigned char)*++cur;
- if (yych == 'i') goto yy627;
+ if (yych == 'g') goto yy627;
goto yy14;
yy580:
yych = (unsigned char)*++cur;
- if (yych == 't') goto yy628;
+ if (yych == 'p') goto yy628;
goto yy14;
yy581:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy629;
+ if (yych == 'i') goto yy629;
goto yy14;
yy582:
yych = (unsigned char)*++cur;
- if (yych == 'n') goto yy630;
+ if (yych == 'p') goto yy630;
goto yy14;
yy583:
yych = (unsigned char)*++cur;
- if (yych == 'd') goto yy632;
+ if (yych == 's') goto yy632;
goto yy14;
yy584:
yych = (unsigned char)*++cur;
- if (yych == 's') goto yy633;
+ if (yych == 'p') goto yy633;
goto yy14;
yy585:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy634;
+ if (yych == 'a') goto yy634;
goto yy14;
yy586:
yych = (unsigned char)*++cur;
goto yy14;
yy587:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy636;
+ if (yych == 'i') goto yy636;
goto yy14;
yy588:
- ++cur;
-#line 98 "../src/parse/lex_conf.re"
- { opts.set_bUseStateNext (lex_conf_bool()); return; }
-#line 2573 "src/parse/lex_conf.cc"
+ yych = (unsigned char)*++cur;
+ if (yych == 't') goto yy637;
+ goto yy14;
+yy589:
+ yych = (unsigned char)*++cur;
+ if (yych == 'e') goto yy638;
+ goto yy14;
yy590:
- ++cur;
-#line 133 "../src/parse/lex_conf.re"
- { opts.set_tags_expression(lex_conf_string ()); return; }
-#line 2578 "src/parse/lex_conf.cc"
+ yych = (unsigned char)*++cur;
+ if (yych == 'n') goto yy639;
+ goto yy14;
+yy591:
+ yych = (unsigned char)*++cur;
+ if (yych == 't') goto yy641;
+ goto yy14;
yy592:
yych = (unsigned char)*++cur;
- if (yych == 'p') goto yy637;
+ if (yych == 'd') goto yy642;
goto yy14;
yy593:
yych = (unsigned char)*++cur;
- if (yych == 'l') goto yy638;
+ if (yych == 's') goto yy643;
goto yy14;
yy594:
yych = (unsigned char)*++cur;
- if (yych == 'l') goto yy639;
+ if (yych == 'e') goto yy644;
goto yy14;
yy595:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy640;
+ if (yych == 's') goto yy645;
goto yy14;
yy596:
- ++cur;
-#line 151 "../src/parse/lex_conf.re"
- { opts.set_yychConversion (lex_conf_bool()); return; }
-#line 2599 "src/parse/lex_conf.cc"
-yy598:
yych = (unsigned char)*++cur;
- if (yych == 'r') goto yy641;
+ if (yych == 'e') goto yy646;
goto yy14;
+yy597:
+ ++cur;
+#line 99 "../src/parse/lex_conf.re"
+ { opts.set_bUseStateNext (lex_conf_bool()); return; }
+#line 2610 "src/parse/lex_conf.cc"
yy599:
- yych = (unsigned char)*++cur;
- if (yych == 'd') goto yy643;
- goto yy14;
-yy600:
- yych = (unsigned char)*++cur;
- if (yych == 'T') goto yy645;
- goto yy14;
+ ++cur;
+#line 134 "../src/parse/lex_conf.re"
+ { opts.set_tags_expression(lex_conf_string ()); return; }
+#line 2615 "src/parse/lex_conf.cc"
yy601:
yych = (unsigned char)*++cur;
- if (yych == 'A') goto yy646;
+ if (yych == 'p') goto yy647;
goto yy14;
yy602:
yych = (unsigned char)*++cur;
- if (yych == 'E') goto yy647;
+ if (yych == 'l') goto yy648;
goto yy14;
yy603:
- ++cur;
-#line 128 "../src/parse/lex_conf.re"
- { opts.set_yycopytag (lex_conf_string ()); return; }
-#line 2624 "src/parse/lex_conf.cc"
-yy605:
yych = (unsigned char)*++cur;
- if (yych == 'E') goto yy649;
+ if (yych == 'l') goto yy649;
goto yy14;
-yy606:
+yy604:
yych = (unsigned char)*++cur;
- if (yych == 'k') goto yy650;
+ if (yych == 'e') goto yy650;
goto yy14;
+yy605:
+ ++cur;
+#line 152 "../src/parse/lex_conf.re"
+ { opts.set_yychConversion (lex_conf_bool()); return; }
+#line 2636 "src/parse/lex_conf.cc"
yy607:
yych = (unsigned char)*++cur;
- if (yych == 'n') goto yy651;
+ if (yych == 'r') goto yy651;
goto yy14;
yy608:
yych = (unsigned char)*++cur;
- if (yych == 'I') goto yy653;
+ if (yych == 'd') goto yy653;
goto yy14;
yy609:
yych = (unsigned char)*++cur;
- if (yych == 'E') goto yy654;
+ if (yych == 'T') goto yy655;
goto yy14;
yy610:
yych = (unsigned char)*++cur;
- if (yych == 'N') goto yy656;
+ if (yych == 'A') goto yy656;
goto yy14;
yy611:
- yyaccept = 18;
- yych = (unsigned char)*(ptr = ++cur);
- if (yych == 'C') goto yy658;
- if (yych == 'T') goto yy659;
-yy612:
-#line 125 "../src/parse/lex_conf.re"
- { opts.set_yyrestore (lex_conf_string ()); return; }
-#line 2657 "src/parse/lex_conf.cc"
-yy613:
yych = (unsigned char)*++cur;
- if (yych == 'I') goto yy660;
+ if (yych == 'E') goto yy657;
goto yy14;
+yy612:
+ ++cur;
+#line 129 "../src/parse/lex_conf.re"
+ { opts.set_yycopytag (lex_conf_string ()); return; }
+#line 2661 "src/parse/lex_conf.cc"
yy614:
yych = (unsigned char)*++cur;
- if (yych == 'E') goto yy661;
+ if (yych == 'E') goto yy659;
goto yy14;
yy615:
yych = (unsigned char)*++cur;
- if (yych == 's') goto yy663;
+ if (yych == 'k') goto yy660;
goto yy14;
yy616:
yych = (unsigned char)*++cur;
- if (yych == 's') goto yy664;
+ if (yych == 'n') goto yy661;
goto yy14;
yy617:
yych = (unsigned char)*++cur;
- if (yych == 't') goto yy665;
+ if (yych == 'I') goto yy663;
goto yy14;
yy618:
yych = (unsigned char)*++cur;
- if (yych == 'o') goto yy666;
+ if (yych == 'E') goto yy664;
goto yy14;
yy619:
yych = (unsigned char)*++cur;
- if (yych == 'u') goto yy667;
+ if (yych == 'N') goto yy666;
goto yy14;
yy620:
- yych = (unsigned char)*++cur;
- if (yych == 'z') goto yy668;
- goto yy14;
+ yyaccept = 18;
+ yych = (unsigned char)*(ptr = ++cur);
+ if (yych == 'C') goto yy668;
+ if (yych == 'T') goto yy669;
yy621:
- ++cur;
-#line 60 "../src/parse/lex_conf.re"
- { opts.set_eager_skip(lex_conf_bool()); return; }
+#line 126 "../src/parse/lex_conf.re"
+ { opts.set_yyrestore (lex_conf_string ()); return; }
#line 2694 "src/parse/lex_conf.cc"
+yy622:
+ yych = (unsigned char)*++cur;
+ if (yych == 'I') goto yy670;
+ goto yy14;
yy623:
yych = (unsigned char)*++cur;
- if (yych == 's') goto yy669;
+ if (yych == 'E') goto yy671;
goto yy14;
yy624:
yych = (unsigned char)*++cur;
- if (yych == 'o') goto yy671;
+ if (yych == 's') goto yy673;
goto yy14;
yy625:
yych = (unsigned char)*++cur;
- if (yych == 'x') goto yy94;
+ if (yych == 's') goto yy674;
goto yy14;
yy626:
- ++cur;
- goto yy120;
+ yych = (unsigned char)*++cur;
+ if (yych == 't') goto yy675;
+ goto yy14;
yy627:
yych = (unsigned char)*++cur;
- if (yych == 'n') goto yy672;
+ if (yych == 'o') goto yy676;
goto yy14;
yy628:
yych = (unsigned char)*++cur;
- if (yych == 'i') goto yy673;
+ if (yych == 'u') goto yy677;
goto yy14;
yy629:
yych = (unsigned char)*++cur;
- if (yych == 'a') goto yy674;
+ if (yych == 'z') goto yy678;
goto yy14;
yy630:
++cur;
-#line 56 "../src/parse/lex_conf.re"
- { opts.set_version(!lex_conf_bool()); return; }
-#line 2726 "src/parse/lex_conf.cc"
+#line 61 "../src/parse/lex_conf.re"
+ { opts.set_eager_skip(lex_conf_bool()); return; }
+#line 2731 "src/parse/lex_conf.cc"
yy632:
yych = (unsigned char)*++cur;
- if (yych == 'i') goto yy675;
+ if (yych == 's') goto yy679;
goto yy14;
yy633:
yych = (unsigned char)*++cur;
- if (yych == 't') goto yy676;
+ if (yych == 'o') goto yy681;
goto yy14;
yy634:
yych = (unsigned char)*++cur;
- if (yych == 'r') goto yy677;
+ if (yych == 'x') goto yy94;
goto yy14;
yy635:
++cur;
- goto yy126;
+ goto yy121;
yy636:
yych = (unsigned char)*++cur;
- if (yych == 'l') goto yy678;
+ if (yych == 'n') goto yy682;
goto yy14;
yy637:
yych = (unsigned char)*++cur;
- if (yych == 't') goto yy680;
+ if (yych == 'i') goto yy683;
goto yy14;
yy638:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy682;
+ if (yych == 'a') goto yy684;
goto yy14;
yy639:
+ ++cur;
+#line 57 "../src/parse/lex_conf.re"
+ { opts.set_version(!lex_conf_bool()); return; }
+#line 2763 "src/parse/lex_conf.cc"
+yy641:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy684;
+ if (yych == 'u') goto yy685;
goto yy14;
-yy640:
+yy642:
yych = (unsigned char)*++cur;
- if (yych == 't') goto yy686;
+ if (yych == 'i') goto yy686;
goto yy14;
-yy641:
- ++cur;
-#line 157 "../src/parse/lex_conf.re"
- { opts.set_fill_arg_use (lex_conf_bool()); return; }
-#line 2766 "src/parse/lex_conf.cc"
yy643:
- ++cur;
-#line 85 "../src/parse/lex_conf.re"
- { opts.set_condDividerParam (lex_conf_string ()); return; }
-#line 2771 "src/parse/lex_conf.cc"
-yy645:
yych = (unsigned char)*++cur;
- if (yych == 'X') goto yy688;
+ if (yych == 't') goto yy687;
goto yy14;
+yy644:
+ yych = (unsigned char)*++cur;
+ if (yych == 'r') goto yy688;
+ goto yy14;
+yy645:
+ ++cur;
+ goto yy127;
yy646:
yych = (unsigned char)*++cur;
- if (yych == 'G') goto yy690;
+ if (yych == 'l') goto yy689;
goto yy14;
yy647:
- ++cur;
-#line 76 "../src/parse/lex_conf.re"
- { opts.set_yycondtype (lex_conf_string ()); return; }
-#line 2784 "src/parse/lex_conf.cc"
+ yych = (unsigned char)*++cur;
+ if (yych == 't') goto yy691;
+ goto yy14;
+yy648:
+ yych = (unsigned char)*++cur;
+ if (yych == 'e') goto yy693;
+ goto yy14;
yy649:
yych = (unsigned char)*++cur;
- if (yych == 'R') goto yy692;
+ if (yych == 'e') goto yy695;
goto yy14;
yy650:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy694;
+ if (yych == 't') goto yy697;
goto yy14;
yy651:
++cur;
-#line 156 "../src/parse/lex_conf.re"
- { opts.set_fill_arg (lex_conf_string ()); return; }
-#line 2797 "src/parse/lex_conf.cc"
+#line 158 "../src/parse/lex_conf.re"
+ { opts.set_fill_arg_use (lex_conf_bool()); return; }
+#line 2807 "src/parse/lex_conf.cc"
yy653:
+ ++cur;
+#line 86 "../src/parse/lex_conf.re"
+ { opts.set_condDividerParam (lex_conf_string ()); return; }
+#line 2812 "src/parse/lex_conf.cc"
+yy655:
+ yych = (unsigned char)*++cur;
+ if (yych == 'X') goto yy699;
+ goto yy14;
+yy656:
+ yych = (unsigned char)*++cur;
+ if (yych == 'G') goto yy701;
+ goto yy14;
+yy657:
+ ++cur;
+#line 77 "../src/parse/lex_conf.re"
+ { opts.set_yycondtype (lex_conf_string ()); return; }
+#line 2825 "src/parse/lex_conf.cc"
+yy659:
+ yych = (unsigned char)*++cur;
+ if (yych == 'R') goto yy703;
+ goto yy14;
+yy660:
yych = (unsigned char)*++cur;
- if (yych == 'T') goto yy695;
+ if (yych == 'e') goto yy705;
goto yy14;
-yy654:
+yy661:
+ ++cur;
+#line 157 "../src/parse/lex_conf.re"
+ { opts.set_fill_arg (lex_conf_string ()); return; }
+#line 2838 "src/parse/lex_conf.cc"
+yy663:
+ yych = (unsigned char)*++cur;
+ if (yych == 'T') goto yy706;
+ goto yy14;
+yy664:
yyaccept = 19;
yych = (unsigned char)*(ptr = ++cur);
- if (yych == ':') goto yy696;
-yy655:
-#line 90 "../src/parse/lex_conf.re"
+ if (yych == ':') goto yy707;
+yy665:
+#line 91 "../src/parse/lex_conf.re"
{ opts.set_state_get (lex_conf_string ()); return; }
-#line 2809 "src/parse/lex_conf.cc"
-yy656:
+#line 2850 "src/parse/lex_conf.cc"
+yy666:
++cur;
-#line 129 "../src/parse/lex_conf.re"
+#line 130 "../src/parse/lex_conf.re"
{ opts.set_yylessthan (lex_conf_string ()); return; }
-#line 2814 "src/parse/lex_conf.cc"
-yy658:
+#line 2855 "src/parse/lex_conf.cc"
+yy668:
yych = (unsigned char)*++cur;
- if (yych == 'T') goto yy697;
+ if (yych == 'T') goto yy708;
goto yy14;
-yy659:
+yy669:
yych = (unsigned char)*++cur;
- if (yych == 'A') goto yy698;
+ if (yych == 'A') goto yy709;
goto yy14;
-yy660:
+yy670:
yych = (unsigned char)*++cur;
- if (yych == 'T') goto yy699;
+ if (yych == 'T') goto yy710;
goto yy14;
-yy661:
+yy671:
yyaccept = 20;
yych = (unsigned char)*(ptr = ++cur);
- if (yych == ':') goto yy700;
- if (yych == '@') goto yy701;
-yy662:
-#line 92 "../src/parse/lex_conf.re"
+ if (yych == ':') goto yy711;
+ if (yych == '@') goto yy712;
+yy672:
+#line 93 "../src/parse/lex_conf.re"
{ opts.set_state_set (lex_conf_string ()); return; }
-#line 2835 "src/parse/lex_conf.cc"
-yy663:
+#line 2876 "src/parse/lex_conf.cc"
+yy673:
++cur;
goto yy101;
-yy664:
+yy674:
yych = (unsigned char)*++cur;
- if (yych == 'i') goto yy702;
+ if (yych == 'i') goto yy713;
goto yy14;
-yy665:
+yy675:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy703;
+ if (yych == 'e') goto yy714;
goto yy14;
-yy666:
+yy676:
yych = (unsigned char)*++cur;
- if (yych == 't') goto yy704;
+ if (yych == 't') goto yy715;
goto yy14;
-yy667:
+yy677:
yych = (unsigned char)*++cur;
- if (yych == 't') goto yy705;
+ if (yych == 't') goto yy716;
goto yy14;
-yy668:
+yy678:
yych = (unsigned char)*++cur;
- if (yych == 'a') goto yy706;
+ if (yych == 'a') goto yy717;
goto yy14;
-yy669:
+yy679:
++cur;
-#line 73 "../src/parse/lex_conf.re"
+#line 74 "../src/parse/lex_conf.re"
{ lex_conf_empty_class(); return; }
-#line 2863 "src/parse/lex_conf.cc"
-yy671:
+#line 2904 "src/parse/lex_conf.cc"
+yy681:
yych = (unsigned char)*++cur;
- if (yych == 'l') goto yy707;
+ if (yych == 'l') goto yy718;
goto yy14;
-yy672:
+yy682:
yych = (unsigned char)*++cur;
- if (yych == 'f') goto yy708;
+ if (yych == 'f') goto yy719;
goto yy14;
-yy673:
+yy683:
yych = (unsigned char)*++cur;
- if (yych == 'o') goto yy709;
+ if (yych == 'o') goto yy720;
goto yy14;
-yy674:
+yy684:
yych = (unsigned char)*++cur;
- if (yych == 'd') goto yy710;
+ if (yych == 'd') goto yy721;
goto yy14;
-yy675:
+yy685:
yych = (unsigned char)*++cur;
- if (yych == 't') goto yy712;
+ if (yych == 'r') goto yy723;
goto yy14;
-yy676:
+yy686:
yych = (unsigned char)*++cur;
- if (yych == 'a') goto yy713;
+ if (yych == 't') goto yy724;
goto yy14;
-yy677:
+yy687:
+ yych = (unsigned char)*++cur;
+ if (yych == 'a') goto yy725;
+ goto yy14;
+yy688:
++cur;
- goto yy122;
-yy678:
+ goto yy123;
+yy689:
++cur;
-#line 95 "../src/parse/lex_conf.re"
+#line 96 "../src/parse/lex_conf.re"
{ opts.set_yyfilllabel (lex_conf_string ()); return; }
-#line 2895 "src/parse/lex_conf.cc"
-yy680:
+#line 2940 "src/parse/lex_conf.cc"
+yy691:
++cur;
-#line 99 "../src/parse/lex_conf.re"
+#line 100 "../src/parse/lex_conf.re"
{ opts.set_yyaccept (lex_conf_string ()); return; }
-#line 2900 "src/parse/lex_conf.cc"
-yy682:
+#line 2945 "src/parse/lex_conf.cc"
+yy693:
++cur;
-#line 88 "../src/parse/lex_conf.re"
+#line 89 "../src/parse/lex_conf.re"
{ opts.set_yyctable (lex_conf_string ()); return; }
-#line 2905 "src/parse/lex_conf.cc"
-yy684:
+#line 2950 "src/parse/lex_conf.cc"
+yy695:
++cur;
-#line 168 "../src/parse/lex_conf.re"
+#line 169 "../src/parse/lex_conf.re"
{ lex_conf_string (); return; }
-#line 2910 "src/parse/lex_conf.cc"
-yy686:
+#line 2955 "src/parse/lex_conf.cc"
+yy697:
++cur;
-#line 113 "../src/parse/lex_conf.re"
+#line 114 "../src/parse/lex_conf.re"
{ opts.set_yytarget (lex_conf_string ()); return; }
-#line 2915 "src/parse/lex_conf.cc"
-yy688:
+#line 2960 "src/parse/lex_conf.cc"
+yy699:
++cur;
-#line 123 "../src/parse/lex_conf.re"
+#line 124 "../src/parse/lex_conf.re"
{ opts.set_yybackupctx (lex_conf_string ()); return; }
-#line 2920 "src/parse/lex_conf.cc"
-yy690:
+#line 2965 "src/parse/lex_conf.cc"
+yy701:
++cur;
-#line 124 "../src/parse/lex_conf.re"
+#line 125 "../src/parse/lex_conf.re"
{ opts.set_yybackuptag (lex_conf_string ()); return; }
-#line 2925 "src/parse/lex_conf.cc"
-yy692:
+#line 2970 "src/parse/lex_conf.cc"
+yy703:
++cur;
-#line 117 "../src/parse/lex_conf.re"
+#line 118 "../src/parse/lex_conf.re"
{ opts.set_yyctxmarker (lex_conf_string ()); return; }
-#line 2930 "src/parse/lex_conf.cc"
-yy694:
+#line 2975 "src/parse/lex_conf.cc"
+yy705:
yych = (unsigned char)*++cur;
- if (yych == 'd') goto yy714;
+ if (yych == 'd') goto yy726;
goto yy14;
-yy695:
+yy706:
yych = (unsigned char)*++cur;
- if (yych == 'I') goto yy716;
+ if (yych == 'I') goto yy728;
goto yy14;
-yy696:
+yy707:
yych = (unsigned char)*++cur;
- if (yych == 'n') goto yy717;
+ if (yych == 'n') goto yy729;
goto yy14;
-yy697:
+yy708:
yych = (unsigned char)*++cur;
- if (yych == 'X') goto yy718;
+ if (yych == 'X') goto yy730;
goto yy14;
-yy698:
+yy709:
yych = (unsigned char)*++cur;
- if (yych == 'G') goto yy720;
+ if (yych == 'G') goto yy732;
goto yy14;
-yy699:
+yy710:
yych = (unsigned char)*++cur;
- if (yych == 'I') goto yy722;
+ if (yych == 'I') goto yy734;
goto yy14;
-yy700:
+yy711:
yych = (unsigned char)*++cur;
- if (yych == 'n') goto yy723;
+ if (yych == 'n') goto yy735;
goto yy14;
-yy701:
+yy712:
yych = (unsigned char)*++cur;
- if (yych == 's') goto yy724;
+ if (yych == 's') goto yy736;
goto yy14;
-yy702:
+yy713:
yych = (unsigned char)*++cur;
- if (yych == 't') goto yy725;
+ if (yych == 't') goto yy737;
goto yy14;
-yy703:
+yy714:
yych = (unsigned char)*++cur;
- if (yych == 'd') goto yy726;
+ if (yych == 'd') goto yy738;
goto yy14;
-yy704:
+yy715:
yych = (unsigned char)*++cur;
- if (yych == 'o') goto yy728;
+ if (yych == 'o') goto yy740;
goto yy14;
-yy705:
+yy716:
++cur;
goto yy105;
-yy706:
+yy717:
yych = (unsigned char)*++cur;
- if (yych == 't') goto yy729;
+ if (yych == 't') goto yy741;
goto yy14;
-yy707:
+yy718:
yych = (unsigned char)*++cur;
- if (yych == 'i') goto yy730;
+ if (yych == 'i') goto yy742;
goto yy14;
-yy708:
+yy719:
yych = (unsigned char)*++cur;
- if (yych == 'o') goto yy731;
+ if (yych == 'o') goto yy743;
goto yy14;
-yy709:
+yy720:
yych = (unsigned char)*++cur;
- if (yych == 'n') goto yy732;
+ if (yych == 'n') goto yy744;
goto yy14;
-yy710:
+yy721:
++cur;
-#line 59 "../src/parse/lex_conf.re"
+#line 60 "../src/parse/lex_conf.re"
{ opts.set_lookahead(!lex_conf_bool()); return; }
-#line 2998 "src/parse/lex_conf.cc"
-yy712:
+#line 3043 "src/parse/lex_conf.cc"
+yy723:
yych = (unsigned char)*++cur;
- if (yych == 'i') goto yy733;
+ if (yych == 'e') goto yy745;
goto yy14;
-yy713:
+yy724:
yych = (unsigned char)*++cur;
- if (yych == 't') goto yy734;
+ if (yych == 'i') goto yy746;
goto yy14;
-yy714:
+yy725:
+ yych = (unsigned char)*++cur;
+ if (yych == 't') goto yy747;
+ goto yy14;
+yy726:
++cur;
-#line 158 "../src/parse/lex_conf.re"
+#line 159 "../src/parse/lex_conf.re"
{ opts.set_fill_naked (lex_conf_bool()); return; }
-#line 3011 "src/parse/lex_conf.cc"
-yy716:
+#line 3060 "src/parse/lex_conf.cc"
+yy728:
yych = (unsigned char)*++cur;
- if (yych == 'O') goto yy735;
+ if (yych == 'O') goto yy748;
goto yy14;
-yy717:
+yy729:
yych = (unsigned char)*++cur;
- if (yych == 'a') goto yy736;
+ if (yych == 'a') goto yy749;
goto yy14;
-yy718:
+yy730:
++cur;
-#line 126 "../src/parse/lex_conf.re"
+#line 127 "../src/parse/lex_conf.re"
{ opts.set_yyrestorectx (lex_conf_string ()); return; }
-#line 3024 "src/parse/lex_conf.cc"
-yy720:
+#line 3073 "src/parse/lex_conf.cc"
+yy732:
++cur;
-#line 127 "../src/parse/lex_conf.re"
+#line 128 "../src/parse/lex_conf.re"
{ opts.set_yyrestoretag (lex_conf_string ()); return; }
-#line 3029 "src/parse/lex_conf.cc"
-yy722:
+#line 3078 "src/parse/lex_conf.cc"
+yy734:
yych = (unsigned char)*++cur;
- if (yych == 'O') goto yy737;
+ if (yych == 'O') goto yy750;
goto yy14;
-yy723:
+yy735:
yych = (unsigned char)*++cur;
- if (yych == 'a') goto yy738;
+ if (yych == 'a') goto yy751;
goto yy14;
-yy724:
+yy736:
yych = (unsigned char)*++cur;
- if (yych == 't') goto yy739;
+ if (yych == 't') goto yy752;
goto yy14;
-yy725:
+yy737:
yych = (unsigned char)*++cur;
- if (yych == 'i') goto yy740;
+ if (yych == 'i') goto yy753;
goto yy14;
-yy726:
+yy738:
++cur;
-#line 58 "../src/parse/lex_conf.re"
+#line 59 "../src/parse/lex_conf.re"
{ opts.set_bCaseInverted(lex_conf_bool()); return; }
-#line 3050 "src/parse/lex_conf.cc"
-yy728:
+#line 3099 "src/parse/lex_conf.cc"
+yy740:
yych = (unsigned char)*++cur;
if (yych == 's') goto yy110;
goto yy14;
-yy729:
+yy741:
yych = (unsigned char)*++cur;
- if (yych == 'i') goto yy741;
+ if (yych == 'i') goto yy754;
goto yy14;
-yy730:
+yy742:
yych = (unsigned char)*++cur;
- if (yych == 'c') goto yy742;
+ if (yych == 'c') goto yy755;
goto yy14;
-yy731:
+yy743:
++cur;
goto yy113;
-yy732:
+yy744:
+ yych = (unsigned char)*++cur;
+ if (yych == '-') goto yy756;
+ goto yy14;
+yy745:
yych = (unsigned char)*++cur;
- if (yych == '-') goto yy743;
+ if (yych == 's') goto yy757;
goto yy14;
-yy733:
+yy746:
yych = (unsigned char)*++cur;
- if (yych == 'o') goto yy744;
+ if (yych == 'o') goto yy759;
goto yy14;
-yy734:
+yy747:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy745;
+ if (yych == 'e') goto yy760;
goto yy14;
-yy735:
+yy748:
yych = (unsigned char)*++cur;
- if (yych == 'N') goto yy746;
+ if (yych == 'N') goto yy761;
goto yy14;
-yy736:
+yy749:
yych = (unsigned char)*++cur;
- if (yych == 'k') goto yy748;
+ if (yych == 'k') goto yy763;
goto yy14;
-yy737:
+yy750:
yych = (unsigned char)*++cur;
- if (yych == 'N') goto yy749;
+ if (yych == 'N') goto yy764;
goto yy14;
-yy738:
+yy751:
yych = (unsigned char)*++cur;
- if (yych == 'k') goto yy751;
+ if (yych == 'k') goto yy766;
goto yy14;
-yy739:
+yy752:
yych = (unsigned char)*++cur;
- if (yych == 'a') goto yy752;
+ if (yych == 'a') goto yy767;
goto yy14;
-yy740:
+yy753:
yych = (unsigned char)*++cur;
- if (yych == 'v') goto yy753;
+ if (yych == 'v') goto yy768;
goto yy14;
-yy741:
+yy754:
yych = (unsigned char)*++cur;
- if (yych == 'o') goto yy754;
+ if (yych == 'o') goto yy769;
goto yy14;
-yy742:
+yy755:
yych = (unsigned char)*++cur;
- if (yych == 'y') goto yy755;
+ if (yych == 'y') goto yy770;
goto yy14;
-yy743:
+yy756:
yych = (unsigned char)*++cur;
- if (yych == 'd') goto yy757;
+ if (yych == 'd') goto yy772;
goto yy14;
-yy744:
+yy757:
+ ++cur;
+#line 55 "../src/parse/lex_conf.re"
+ { opts.set_posix_captures(lex_conf_bool()); return; }
+#line 3171 "src/parse/lex_conf.cc"
+yy759:
yych = (unsigned char)*++cur;
- if (yych == 'n') goto yy758;
+ if (yych == 'n') goto yy773;
goto yy14;
-yy745:
+yy760:
++cur;
goto yy109;
-yy746:
+yy761:
yyaccept = 21;
yych = (unsigned char)*(ptr = ++cur);
- if (yych == ':') goto yy759;
-yy747:
-#line 77 "../src/parse/lex_conf.re"
+ if (yych == ':') goto yy774;
+yy762:
+#line 78 "../src/parse/lex_conf.re"
{ opts.set_cond_get (lex_conf_string ()); return; }
-#line 3128 "src/parse/lex_conf.cc"
-yy748:
+#line 3186 "src/parse/lex_conf.cc"
+yy763:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy760;
+ if (yych == 'e') goto yy775;
goto yy14;
-yy749:
+yy764:
yyaccept = 22;
yych = (unsigned char)*(ptr = ++cur);
- if (yych == ':') goto yy761;
- if (yych == '@') goto yy762;
-yy750:
-#line 79 "../src/parse/lex_conf.re"
+ if (yych == ':') goto yy776;
+ if (yych == '@') goto yy777;
+yy765:
+#line 80 "../src/parse/lex_conf.re"
{ opts.set_cond_set (lex_conf_string ()); return; }
-#line 3141 "src/parse/lex_conf.cc"
-yy751:
+#line 3199 "src/parse/lex_conf.cc"
+yy766:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy763;
+ if (yych == 'e') goto yy778;
goto yy14;
-yy752:
+yy767:
yych = (unsigned char)*++cur;
- if (yych == 't') goto yy764;
+ if (yych == 't') goto yy779;
goto yy14;
-yy753:
+yy768:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy765;
+ if (yych == 'e') goto yy780;
goto yy14;
-yy754:
+yy769:
yych = (unsigned char)*++cur;
- if (yych == 'n') goto yy767;
+ if (yych == 'n') goto yy782;
goto yy14;
-yy755:
+yy770:
++cur;
-#line 71 "../src/parse/lex_conf.re"
+#line 72 "../src/parse/lex_conf.re"
{ lex_conf_encoding_policy(); return; }
-#line 3162 "src/parse/lex_conf.cc"
-yy757:
+#line 3220 "src/parse/lex_conf.cc"
+yy772:
yych = (unsigned char)*++cur;
- if (yych == 'a') goto yy769;
+ if (yych == 'a') goto yy784;
goto yy14;
-yy758:
+yy773:
yych = (unsigned char)*++cur;
- if (yych == 's') goto yy770;
+ if (yych == 's') goto yy785;
goto yy14;
-yy759:
+yy774:
yych = (unsigned char)*++cur;
- if (yych == 'n') goto yy771;
+ if (yych == 'n') goto yy786;
goto yy14;
-yy760:
+yy775:
yych = (unsigned char)*++cur;
- if (yych == 'd') goto yy772;
+ if (yych == 'd') goto yy787;
goto yy14;
-yy761:
+yy776:
yych = (unsigned char)*++cur;
- if (yych == 'n') goto yy774;
+ if (yych == 'n') goto yy789;
goto yy14;
-yy762:
+yy777:
yych = (unsigned char)*++cur;
- if (yych == 'c') goto yy775;
+ if (yych == 'c') goto yy790;
goto yy14;
-yy763:
+yy778:
yych = (unsigned char)*++cur;
- if (yych == 'd') goto yy776;
+ if (yych == 'd') goto yy791;
goto yy14;
-yy764:
+yy779:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy778;
+ if (yych == 'e') goto yy793;
goto yy14;
-yy765:
+yy780:
++cur;
-#line 57 "../src/parse/lex_conf.re"
+#line 58 "../src/parse/lex_conf.re"
{ opts.set_bCaseInsensitive(lex_conf_bool()); return; }
-#line 3199 "src/parse/lex_conf.cc"
-yy767:
+#line 3257 "src/parse/lex_conf.cc"
+yy782:
++cur;
-#line 74 "../src/parse/lex_conf.re"
+#line 75 "../src/parse/lex_conf.re"
{ lex_conf_dfa_minimization(); return; }
-#line 3204 "src/parse/lex_conf.cc"
-yy769:
+#line 3262 "src/parse/lex_conf.cc"
+yy784:
yych = (unsigned char)*++cur;
- if (yych == 't') goto yy780;
+ if (yych == 't') goto yy795;
goto yy14;
-yy770:
+yy785:
++cur;
goto yy103;
-yy771:
+yy786:
yych = (unsigned char)*++cur;
- if (yych == 'a') goto yy781;
+ if (yych == 'a') goto yy796;
goto yy14;
-yy772:
+yy787:
++cur;
-#line 91 "../src/parse/lex_conf.re"
+#line 92 "../src/parse/lex_conf.re"
{ opts.set_state_get_naked (lex_conf_bool()); return; }
-#line 3220 "src/parse/lex_conf.cc"
-yy774:
+#line 3278 "src/parse/lex_conf.cc"
+yy789:
yych = (unsigned char)*++cur;
- if (yych == 'a') goto yy782;
+ if (yych == 'a') goto yy797;
goto yy14;
-yy775:
+yy790:
yych = (unsigned char)*++cur;
- if (yych == 'o') goto yy783;
+ if (yych == 'o') goto yy798;
goto yy14;
-yy776:
+yy791:
++cur;
-#line 93 "../src/parse/lex_conf.re"
+#line 94 "../src/parse/lex_conf.re"
{ opts.set_state_set_naked (lex_conf_bool()); return; }
-#line 3233 "src/parse/lex_conf.cc"
-yy778:
+#line 3291 "src/parse/lex_conf.cc"
+yy793:
++cur;
-#line 94 "../src/parse/lex_conf.re"
+#line 95 "../src/parse/lex_conf.re"
{ opts.set_state_set_arg (lex_conf_string ()); return; }
-#line 3238 "src/parse/lex_conf.cc"
-yy780:
+#line 3296 "src/parse/lex_conf.cc"
+yy795:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy784;
+ if (yych == 'e') goto yy799;
goto yy14;
-yy781:
+yy796:
yych = (unsigned char)*++cur;
- if (yych == 'k') goto yy786;
+ if (yych == 'k') goto yy801;
goto yy14;
-yy782:
+yy797:
yych = (unsigned char)*++cur;
- if (yych == 'k') goto yy787;
+ if (yych == 'k') goto yy802;
goto yy14;
-yy783:
+yy798:
yych = (unsigned char)*++cur;
- if (yych == 'n') goto yy788;
+ if (yych == 'n') goto yy803;
goto yy14;
-yy784:
+yy799:
++cur;
-#line 55 "../src/parse/lex_conf.re"
+#line 56 "../src/parse/lex_conf.re"
{ opts.set_bNoGenerationDate(lex_conf_bool()); return; }
-#line 3259 "src/parse/lex_conf.cc"
-yy786:
+#line 3317 "src/parse/lex_conf.cc"
+yy801:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy789;
+ if (yych == 'e') goto yy804;
goto yy14;
-yy787:
+yy802:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy790;
+ if (yych == 'e') goto yy805;
goto yy14;
-yy788:
+yy803:
yych = (unsigned char)*++cur;
- if (yych == 'd') goto yy791;
+ if (yych == 'd') goto yy806;
goto yy14;
-yy789:
+yy804:
yych = (unsigned char)*++cur;
- if (yych == 'd') goto yy793;
+ if (yych == 'd') goto yy808;
goto yy14;
-yy790:
+yy805:
yych = (unsigned char)*++cur;
- if (yych == 'd') goto yy795;
+ if (yych == 'd') goto yy810;
goto yy14;
-yy791:
+yy806:
++cur;
-#line 80 "../src/parse/lex_conf.re"
+#line 81 "../src/parse/lex_conf.re"
{ opts.set_cond_set_arg (lex_conf_string ()); return; }
-#line 3284 "src/parse/lex_conf.cc"
-yy793:
+#line 3342 "src/parse/lex_conf.cc"
+yy808:
++cur;
-#line 78 "../src/parse/lex_conf.re"
+#line 79 "../src/parse/lex_conf.re"
{ opts.set_cond_get_naked (lex_conf_bool()); return; }
-#line 3289 "src/parse/lex_conf.cc"
-yy795:
+#line 3347 "src/parse/lex_conf.cc"
+yy810:
++cur;
-#line 81 "../src/parse/lex_conf.re"
+#line 82 "../src/parse/lex_conf.re"
{ opts.set_cond_set_naked (lex_conf_bool()); return; }
-#line 3294 "src/parse/lex_conf.cc"
+#line 3352 "src/parse/lex_conf.cc"
}
-#line 169 "../src/parse/lex_conf.re"
+#line 170 "../src/parse/lex_conf.re"
}
{
lex_conf_assign ();
-#line 3304 "src/parse/lex_conf.cc"
+#line 3362 "src/parse/lex_conf.cc"
{
unsigned char yych;
if ((lim - cur) < 10) fill(10);
yych = (unsigned char)*cur;
if (yych <= 'h') {
- if (yych == 'f') goto yy801;
+ if (yych == 'f') goto yy816;
} else {
- if (yych <= 'i') goto yy802;
- if (yych == 's') goto yy803;
+ if (yych <= 'i') goto yy817;
+ if (yych == 's') goto yy818;
}
++cur;
-yy800:
-#line 176 "../src/parse/lex_conf.re"
+yy815:
+#line 177 "../src/parse/lex_conf.re"
{ fatal("bad configuration value"
" (expected: 'ignore', 'substitute', 'fail')"); }
-#line 3320 "src/parse/lex_conf.cc"
-yy801:
+#line 3378 "src/parse/lex_conf.cc"
+yy816:
yych = (unsigned char)*(ptr = ++cur);
- if (yych == 'a') goto yy804;
- goto yy800;
-yy802:
+ if (yych == 'a') goto yy819;
+ goto yy815;
+yy817:
yych = (unsigned char)*(ptr = ++cur);
- if (yych == 'g') goto yy806;
- goto yy800;
-yy803:
+ if (yych == 'g') goto yy821;
+ goto yy815;
+yy818:
yych = (unsigned char)*(ptr = ++cur);
- if (yych == 'u') goto yy807;
- goto yy800;
-yy804:
+ if (yych == 'u') goto yy822;
+ goto yy815;
+yy819:
yych = (unsigned char)*++cur;
- if (yych == 'i') goto yy808;
-yy805:
+ if (yych == 'i') goto yy823;
+yy820:
cur = ptr;
- goto yy800;
-yy806:
+ goto yy815;
+yy821:
yych = (unsigned char)*++cur;
- if (yych == 'n') goto yy809;
- goto yy805;
-yy807:
+ if (yych == 'n') goto yy824;
+ goto yy820;
+yy822:
yych = (unsigned char)*++cur;
- if (yych == 'b') goto yy810;
- goto yy805;
-yy808:
+ if (yych == 'b') goto yy825;
+ goto yy820;
+yy823:
yych = (unsigned char)*++cur;
- if (yych == 'l') goto yy811;
- goto yy805;
-yy809:
+ if (yych == 'l') goto yy826;
+ goto yy820;
+yy824:
yych = (unsigned char)*++cur;
- if (yych == 'o') goto yy813;
- goto yy805;
-yy810:
+ if (yych == 'o') goto yy828;
+ goto yy820;
+yy825:
yych = (unsigned char)*++cur;
- if (yych == 's') goto yy814;
- goto yy805;
-yy811:
+ if (yych == 's') goto yy829;
+ goto yy820;
+yy826:
++cur;
-#line 180 "../src/parse/lex_conf.re"
+#line 181 "../src/parse/lex_conf.re"
{ opts.set_encoding_policy(Enc::POLICY_FAIL); goto end; }
-#line 3363 "src/parse/lex_conf.cc"
-yy813:
+#line 3421 "src/parse/lex_conf.cc"
+yy828:
yych = (unsigned char)*++cur;
- if (yych == 'r') goto yy815;
- goto yy805;
-yy814:
+ if (yych == 'r') goto yy830;
+ goto yy820;
+yy829:
yych = (unsigned char)*++cur;
- if (yych == 't') goto yy816;
- goto yy805;
-yy815:
+ if (yych == 't') goto yy831;
+ goto yy820;
+yy830:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy817;
- goto yy805;
-yy816:
+ if (yych == 'e') goto yy832;
+ goto yy820;
+yy831:
yych = (unsigned char)*++cur;
- if (yych == 'i') goto yy819;
- goto yy805;
-yy817:
+ if (yych == 'i') goto yy834;
+ goto yy820;
+yy832:
++cur;
-#line 178 "../src/parse/lex_conf.re"
+#line 179 "../src/parse/lex_conf.re"
{ opts.set_encoding_policy(Enc::POLICY_IGNORE); goto end; }
-#line 3384 "src/parse/lex_conf.cc"
-yy819:
+#line 3442 "src/parse/lex_conf.cc"
+yy834:
yych = (unsigned char)*++cur;
- if (yych != 't') goto yy805;
+ if (yych != 't') goto yy820;
yych = (unsigned char)*++cur;
- if (yych != 'u') goto yy805;
+ if (yych != 'u') goto yy820;
yych = (unsigned char)*++cur;
- if (yych != 't') goto yy805;
+ if (yych != 't') goto yy820;
yych = (unsigned char)*++cur;
- if (yych != 'e') goto yy805;
+ if (yych != 'e') goto yy820;
++cur;
-#line 179 "../src/parse/lex_conf.re"
+#line 180 "../src/parse/lex_conf.re"
{ opts.set_encoding_policy(Enc::POLICY_SUBSTITUTE); goto end; }
-#line 3397 "src/parse/lex_conf.cc"
+#line 3455 "src/parse/lex_conf.cc"
}
-#line 181 "../src/parse/lex_conf.re"
+#line 182 "../src/parse/lex_conf.re"
end:
lex_conf_semicolon();
{
lex_conf_assign ();
-#line 3409 "src/parse/lex_conf.cc"
+#line 3467 "src/parse/lex_conf.cc"
{
unsigned char yych;
if ((lim - cur) < 7) fill(7);
yych = (unsigned char)*cur;
- if (yych <= 'b') goto yy827;
- if (yych <= 'c') goto yy829;
- if (yych <= 'd') goto yy830;
-yy827:
+ if (yych <= 'b') goto yy842;
+ if (yych <= 'c') goto yy844;
+ if (yych <= 'd') goto yy845;
+yy842:
++cur;
-yy828:
-#line 190 "../src/parse/lex_conf.re"
+yy843:
+#line 191 "../src/parse/lex_conf.re"
{ fatal("bad configuration value"
" (expected: 'default', 'custom')"); }
-#line 3423 "src/parse/lex_conf.cc"
-yy829:
+#line 3481 "src/parse/lex_conf.cc"
+yy844:
yych = (unsigned char)*(ptr = ++cur);
- if (yych == 'u') goto yy831;
- goto yy828;
-yy830:
+ if (yych == 'u') goto yy846;
+ goto yy843;
+yy845:
yych = (unsigned char)*(ptr = ++cur);
- if (yych == 'e') goto yy833;
- goto yy828;
-yy831:
+ if (yych == 'e') goto yy848;
+ goto yy843;
+yy846:
yych = (unsigned char)*++cur;
- if (yych == 's') goto yy834;
-yy832:
+ if (yych == 's') goto yy849;
+yy847:
cur = ptr;
- goto yy828;
-yy833:
+ goto yy843;
+yy848:
yych = (unsigned char)*++cur;
- if (yych == 'f') goto yy835;
- goto yy832;
-yy834:
+ if (yych == 'f') goto yy850;
+ goto yy847;
+yy849:
yych = (unsigned char)*++cur;
- if (yych == 't') goto yy836;
- goto yy832;
-yy835:
+ if (yych == 't') goto yy851;
+ goto yy847;
+yy850:
yych = (unsigned char)*++cur;
- if (yych == 'a') goto yy837;
- goto yy832;
-yy836:
+ if (yych == 'a') goto yy852;
+ goto yy847;
+yy851:
yych = (unsigned char)*++cur;
- if (yych == 'o') goto yy838;
- goto yy832;
-yy837:
+ if (yych == 'o') goto yy853;
+ goto yy847;
+yy852:
yych = (unsigned char)*++cur;
- if (yych == 'u') goto yy839;
- goto yy832;
-yy838:
+ if (yych == 'u') goto yy854;
+ goto yy847;
+yy853:
yych = (unsigned char)*++cur;
- if (yych == 'm') goto yy840;
- goto yy832;
-yy839:
+ if (yych == 'm') goto yy855;
+ goto yy847;
+yy854:
yych = (unsigned char)*++cur;
- if (yych == 'l') goto yy842;
- goto yy832;
-yy840:
+ if (yych == 'l') goto yy857;
+ goto yy847;
+yy855:
++cur;
-#line 193 "../src/parse/lex_conf.re"
+#line 194 "../src/parse/lex_conf.re"
{ opts.set_input_api(INPUT_CUSTOM); goto end; }
-#line 3470 "src/parse/lex_conf.cc"
-yy842:
+#line 3528 "src/parse/lex_conf.cc"
+yy857:
yych = (unsigned char)*++cur;
- if (yych != 't') goto yy832;
+ if (yych != 't') goto yy847;
++cur;
-#line 192 "../src/parse/lex_conf.re"
+#line 193 "../src/parse/lex_conf.re"
{ opts.set_input_api(INPUT_DEFAULT); goto end; }
-#line 3477 "src/parse/lex_conf.cc"
+#line 3535 "src/parse/lex_conf.cc"
}
-#line 194 "../src/parse/lex_conf.re"
+#line 195 "../src/parse/lex_conf.re"
end:
lex_conf_semicolon();
{
lex_conf_assign ();
-#line 3489 "src/parse/lex_conf.cc"
+#line 3547 "src/parse/lex_conf.cc"
{
unsigned char yych;
if ((lim - cur) < 11) fill(11);
yych = (unsigned char)*cur;
- if (yych == 'e') goto yy849;
- if (yych == 'm') goto yy850;
+ if (yych == 'e') goto yy864;
+ if (yych == 'm') goto yy865;
++cur;
-yy848:
-#line 203 "../src/parse/lex_conf.re"
+yy863:
+#line 204 "../src/parse/lex_conf.re"
{ fatal("bad configuration value"
" (expected: 'match-empty', 'match-none', 'error')"); }
-#line 3501 "src/parse/lex_conf.cc"
-yy849:
+#line 3559 "src/parse/lex_conf.cc"
+yy864:
yych = (unsigned char)*(ptr = ++cur);
- if (yych == 'r') goto yy851;
- goto yy848;
-yy850:
+ if (yych == 'r') goto yy866;
+ goto yy863;
+yy865:
yych = (unsigned char)*(ptr = ++cur);
- if (yych == 'a') goto yy853;
- goto yy848;
-yy851:
+ if (yych == 'a') goto yy868;
+ goto yy863;
+yy866:
yych = (unsigned char)*++cur;
- if (yych == 'r') goto yy854;
-yy852:
+ if (yych == 'r') goto yy869;
+yy867:
cur = ptr;
- goto yy848;
-yy853:
+ goto yy863;
+yy868:
yych = (unsigned char)*++cur;
- if (yych == 't') goto yy855;
- goto yy852;
-yy854:
+ if (yych == 't') goto yy870;
+ goto yy867;
+yy869:
yych = (unsigned char)*++cur;
- if (yych == 'o') goto yy856;
- goto yy852;
-yy855:
+ if (yych == 'o') goto yy871;
+ goto yy867;
+yy870:
yych = (unsigned char)*++cur;
- if (yych == 'c') goto yy857;
- goto yy852;
-yy856:
+ if (yych == 'c') goto yy872;
+ goto yy867;
+yy871:
yych = (unsigned char)*++cur;
- if (yych == 'r') goto yy858;
- goto yy852;
-yy857:
+ if (yych == 'r') goto yy873;
+ goto yy867;
+yy872:
yych = (unsigned char)*++cur;
- if (yych == 'h') goto yy860;
- goto yy852;
-yy858:
+ if (yych == 'h') goto yy875;
+ goto yy867;
+yy873:
++cur;
-#line 207 "../src/parse/lex_conf.re"
+#line 208 "../src/parse/lex_conf.re"
{ opts.set_empty_class_policy(EMPTY_CLASS_ERROR); goto end; }
-#line 3540 "src/parse/lex_conf.cc"
-yy860:
+#line 3598 "src/parse/lex_conf.cc"
+yy875:
yych = (unsigned char)*++cur;
- if (yych != '-') goto yy852;
+ if (yych != '-') goto yy867;
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy862;
- if (yych == 'n') goto yy863;
- goto yy852;
-yy862:
+ if (yych == 'e') goto yy877;
+ if (yych == 'n') goto yy878;
+ goto yy867;
+yy877:
yych = (unsigned char)*++cur;
- if (yych == 'm') goto yy864;
- goto yy852;
-yy863:
+ if (yych == 'm') goto yy879;
+ goto yy867;
+yy878:
yych = (unsigned char)*++cur;
- if (yych == 'o') goto yy865;
- goto yy852;
-yy864:
+ if (yych == 'o') goto yy880;
+ goto yy867;
+yy879:
yych = (unsigned char)*++cur;
- if (yych == 'p') goto yy866;
- goto yy852;
-yy865:
+ if (yych == 'p') goto yy881;
+ goto yy867;
+yy880:
yych = (unsigned char)*++cur;
- if (yych == 'n') goto yy867;
- goto yy852;
-yy866:
+ if (yych == 'n') goto yy882;
+ goto yy867;
+yy881:
yych = (unsigned char)*++cur;
- if (yych == 't') goto yy868;
- goto yy852;
-yy867:
+ if (yych == 't') goto yy883;
+ goto yy867;
+yy882:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy869;
- goto yy852;
-yy868:
+ if (yych == 'e') goto yy884;
+ goto yy867;
+yy883:
yych = (unsigned char)*++cur;
- if (yych == 'y') goto yy871;
- goto yy852;
-yy869:
+ if (yych == 'y') goto yy886;
+ goto yy867;
+yy884:
++cur;
-#line 206 "../src/parse/lex_conf.re"
+#line 207 "../src/parse/lex_conf.re"
{ opts.set_empty_class_policy(EMPTY_CLASS_MATCH_NONE); goto end; }
-#line 3580 "src/parse/lex_conf.cc"
-yy871:
+#line 3638 "src/parse/lex_conf.cc"
+yy886:
++cur;
-#line 205 "../src/parse/lex_conf.re"
+#line 206 "../src/parse/lex_conf.re"
{ opts.set_empty_class_policy(EMPTY_CLASS_MATCH_EMPTY); goto end; }
-#line 3585 "src/parse/lex_conf.cc"
+#line 3643 "src/parse/lex_conf.cc"
}
-#line 208 "../src/parse/lex_conf.re"
+#line 209 "../src/parse/lex_conf.re"
end:
lex_conf_semicolon();
{
lex_conf_assign ();
-#line 3597 "src/parse/lex_conf.cc"
+#line 3655 "src/parse/lex_conf.cc"
{
unsigned char yych;
if ((lim - cur) < 5) fill(5);
yych = (unsigned char)*cur;
- if (yych == 'm') goto yy877;
- if (yych == 't') goto yy878;
+ if (yych == 'm') goto yy892;
+ if (yych == 't') goto yy893;
++cur;
-yy876:
-#line 217 "../src/parse/lex_conf.re"
+yy891:
+#line 218 "../src/parse/lex_conf.re"
{ fatal("bad configuration value"
" (expected: 'table', 'moore')"); }
-#line 3609 "src/parse/lex_conf.cc"
-yy877:
+#line 3667 "src/parse/lex_conf.cc"
+yy892:
yych = (unsigned char)*(ptr = ++cur);
- if (yych == 'o') goto yy879;
- goto yy876;
-yy878:
+ if (yych == 'o') goto yy894;
+ goto yy891;
+yy893:
yych = (unsigned char)*(ptr = ++cur);
- if (yych == 'a') goto yy881;
- goto yy876;
-yy879:
+ if (yych == 'a') goto yy896;
+ goto yy891;
+yy894:
yych = (unsigned char)*++cur;
- if (yych == 'o') goto yy882;
-yy880:
+ if (yych == 'o') goto yy897;
+yy895:
cur = ptr;
- goto yy876;
-yy881:
+ goto yy891;
+yy896:
yych = (unsigned char)*++cur;
- if (yych == 'b') goto yy883;
- goto yy880;
-yy882:
+ if (yych == 'b') goto yy898;
+ goto yy895;
+yy897:
yych = (unsigned char)*++cur;
- if (yych == 'r') goto yy884;
- goto yy880;
-yy883:
+ if (yych == 'r') goto yy899;
+ goto yy895;
+yy898:
yych = (unsigned char)*++cur;
- if (yych == 'l') goto yy885;
- goto yy880;
-yy884:
+ if (yych == 'l') goto yy900;
+ goto yy895;
+yy899:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy886;
- goto yy880;
-yy885:
+ if (yych == 'e') goto yy901;
+ goto yy895;
+yy900:
yych = (unsigned char)*++cur;
- if (yych == 'e') goto yy888;
- goto yy880;
-yy886:
+ if (yych == 'e') goto yy903;
+ goto yy895;
+yy901:
++cur;
-#line 220 "../src/parse/lex_conf.re"
+#line 221 "../src/parse/lex_conf.re"
{ opts.set_dfa_minimization(DFA_MINIMIZATION_MOORE); goto end; }
-#line 3648 "src/parse/lex_conf.cc"
-yy888:
+#line 3706 "src/parse/lex_conf.cc"
+yy903:
++cur;
-#line 219 "../src/parse/lex_conf.re"
+#line 220 "../src/parse/lex_conf.re"
{ opts.set_dfa_minimization(DFA_MINIMIZATION_TABLE); goto end; }
-#line 3653 "src/parse/lex_conf.cc"
+#line 3711 "src/parse/lex_conf.cc"
}
-#line 221 "../src/parse/lex_conf.re"
+#line 222 "../src/parse/lex_conf.re"
end:
lex_conf_semicolon();
void Scanner::lex_conf_assign ()
{
-#line 3676 "src/parse/lex_conf.cc"
+#line 3734 "src/parse/lex_conf.cc"
{
unsigned char yych;
static const unsigned char yybm[] = {
if ((lim - cur) < 2) fill(2);
yych = (unsigned char)*cur;
if (yych <= 0x1F) {
- if (yych == '\t') goto yy894;
+ if (yych == '\t') goto yy909;
} else {
- if (yych <= ' ') goto yy894;
- if (yych == '=') goto yy895;
+ if (yych <= ' ') goto yy909;
+ if (yych == '=') goto yy910;
}
++cur;
-yy893:
-#line 241 "../src/parse/lex_conf.re"
+yy908:
+#line 242 "../src/parse/lex_conf.re"
{ fatal ("missing '=' in configuration"); }
-#line 3725 "src/parse/lex_conf.cc"
-yy894:
+#line 3783 "src/parse/lex_conf.cc"
+yy909:
yych = (unsigned char)*(ptr = ++cur);
if (yych <= 0x1F) {
- if (yych == '\t') goto yy898;
- goto yy893;
+ if (yych == '\t') goto yy913;
+ goto yy908;
} else {
- if (yych <= ' ') goto yy898;
- if (yych != '=') goto yy893;
+ if (yych <= ' ') goto yy913;
+ if (yych != '=') goto yy908;
}
-yy895:
+yy910:
++cur;
if (lim <= cur) fill(1);
yych = (unsigned char)*cur;
if (yybm[0+yych] & 128) {
- goto yy895;
+ goto yy910;
}
-#line 242 "../src/parse/lex_conf.re"
+#line 243 "../src/parse/lex_conf.re"
{ return; }
-#line 3744 "src/parse/lex_conf.cc"
-yy898:
+#line 3802 "src/parse/lex_conf.cc"
+yy913:
++cur;
if (lim <= cur) fill(1);
yych = (unsigned char)*cur;
if (yych <= 0x1F) {
- if (yych == '\t') goto yy898;
+ if (yych == '\t') goto yy913;
} else {
- if (yych <= ' ') goto yy898;
- if (yych == '=') goto yy895;
+ if (yych <= ' ') goto yy913;
+ if (yych == '=') goto yy910;
}
cur = ptr;
- goto yy893;
+ goto yy908;
}
-#line 243 "../src/parse/lex_conf.re"
+#line 244 "../src/parse/lex_conf.re"
}
void Scanner::lex_conf_semicolon ()
{
-#line 3765 "src/parse/lex_conf.cc"
+#line 3823 "src/parse/lex_conf.cc"
{
unsigned char yych;
static const unsigned char yybm[] = {
if ((lim - cur) < 2) fill(2);
yych = (unsigned char)*cur;
if (yych <= 0x1F) {
- if (yych == '\t') goto yy905;
+ if (yych == '\t') goto yy920;
} else {
- if (yych <= ' ') goto yy905;
- if (yych == ';') goto yy906;
+ if (yych <= ' ') goto yy920;
+ if (yych == ';') goto yy921;
}
++cur;
-yy904:
-#line 249 "../src/parse/lex_conf.re"
+yy919:
+#line 250 "../src/parse/lex_conf.re"
{ fatal ("missing ending ';' in configuration"); }
-#line 3814 "src/parse/lex_conf.cc"
-yy905:
+#line 3872 "src/parse/lex_conf.cc"
+yy920:
yych = (unsigned char)*(ptr = ++cur);
if (yybm[0+yych] & 128) {
- goto yy908;
+ goto yy923;
}
- if (yych != ';') goto yy904;
-yy906:
+ if (yych != ';') goto yy919;
+yy921:
++cur;
-#line 250 "../src/parse/lex_conf.re"
+#line 251 "../src/parse/lex_conf.re"
{ return; }
-#line 3825 "src/parse/lex_conf.cc"
-yy908:
+#line 3883 "src/parse/lex_conf.cc"
+yy923:
++cur;
if (lim <= cur) fill(1);
yych = (unsigned char)*cur;
if (yybm[0+yych] & 128) {
- goto yy908;
+ goto yy923;
}
- if (yych == ';') goto yy906;
+ if (yych == ';') goto yy921;
cur = ptr;
- goto yy904;
+ goto yy919;
}
-#line 251 "../src/parse/lex_conf.re"
+#line 252 "../src/parse/lex_conf.re"
}
lex_conf_assign ();
tok = cur;
-#line 3851 "src/parse/lex_conf.cc"
+#line 3909 "src/parse/lex_conf.cc"
{
unsigned char yych;
static const unsigned char yybm[] = {
if ((lim - cur) < 2) fill(2);
yych = (unsigned char)*cur;
if (yych <= '/') {
- if (yych == '-') goto yy914;
+ if (yych == '-') goto yy929;
} else {
- if (yych <= '0') goto yy915;
- if (yych <= '9') goto yy917;
+ if (yych <= '0') goto yy930;
+ if (yych <= '9') goto yy932;
}
-yy913:
-yy914:
+yy928:
+yy929:
yych = (unsigned char)*++cur;
- if (yych <= '0') goto yy913;
- if (yych <= '9') goto yy917;
- goto yy913;
-yy915:
+ if (yych <= '0') goto yy928;
+ if (yych <= '9') goto yy932;
+ goto yy928;
+yy930:
++cur;
-yy916:
-#line 265 "../src/parse/lex_conf.re"
+yy931:
+#line 266 "../src/parse/lex_conf.re"
{
int32_t n = 0;
if (!s_to_i32_unsafe (tok, cur, n))
lex_conf_semicolon ();
return n;
}
-#line 3915 "src/parse/lex_conf.cc"
-yy917:
+#line 3973 "src/parse/lex_conf.cc"
+yy932:
++cur;
if (lim <= cur) fill(1);
yych = (unsigned char)*cur;
if (yybm[0+yych] & 128) {
- goto yy917;
+ goto yy932;
}
- goto yy916;
+ goto yy931;
}
-#line 274 "../src/parse/lex_conf.re"
+#line 275 "../src/parse/lex_conf.re"
}
std::string s;
tok = cur;
-#line 3935 "src/parse/lex_conf.cc"
+#line 3993 "src/parse/lex_conf.cc"
{
unsigned char yych;
static const unsigned char yybm[] = {
yych = (unsigned char)*cur;
if (yych <= '!') {
if (yych <= '\n') {
- if (yych <= 0x08) goto yy922;
+ if (yych <= 0x08) goto yy937;
} else {
- if (yych != ' ') goto yy922;
+ if (yych != ' ') goto yy937;
}
} else {
if (yych <= '\'') {
- if (yych <= '"') goto yy925;
- if (yych <= '&') goto yy922;
- goto yy925;
+ if (yych <= '"') goto yy940;
+ if (yych <= '&') goto yy937;
+ goto yy940;
} else {
- if (yych != ';') goto yy922;
+ if (yych != ';') goto yy937;
}
}
-#line 301 "../src/parse/lex_conf.re"
+#line 302 "../src/parse/lex_conf.re"
{ goto end; }
-#line 3991 "src/parse/lex_conf.cc"
-yy922:
+#line 4049 "src/parse/lex_conf.cc"
+yy937:
++cur;
if (lim <= cur) fill(1);
yych = (unsigned char)*cur;
if (yybm[0+yych] & 128) {
- goto yy922;
+ goto yy937;
}
-#line 297 "../src/parse/lex_conf.re"
+#line 298 "../src/parse/lex_conf.re"
{
s = std::string(tok, tok_len());
goto end;
}
-#line 4004 "src/parse/lex_conf.cc"
-yy925:
+#line 4062 "src/parse/lex_conf.cc"
+yy940:
++cur;
-#line 283 "../src/parse/lex_conf.re"
+#line 284 "../src/parse/lex_conf.re"
{
const char quote = tok[0];
for (bool end;;) {
}
}
}
-#line 4022 "src/parse/lex_conf.cc"
+#line 4080 "src/parse/lex_conf.cc"
}
-#line 302 "../src/parse/lex_conf.re"
+#line 303 "../src/parse/lex_conf.re"
end:
lex_conf_semicolon ();
/* YYFINAL -- State number of the termination state. */
#define YYFINAL 2
/* YYLAST -- Last index in YYTABLE. */
-#define YYLAST 66
+#define YYLAST 67
/* YYNTOKENS -- Number of terminals. */
#define YYNTOKENS 25
/* YYNNTS -- Number of nonterminals. */
-#define YYNNTS 17
+#define YYNNTS 18
/* YYNRULES -- Number of rules. */
-#define YYNRULES 43
+#define YYNRULES 44
/* YYNSTATES -- Number of states. */
-#define YYNSTATES 70
+#define YYNSTATES 71
/* YYTRANSLATE[YYX] -- Symbol number corresponding to YYX as returned
by yylex, with out-of-bounds checking. */
{
0, 199, 199, 201, 202, 203, 207, 214, 219, 222,
226, 226, 229, 233, 237, 244, 251, 258, 263, 265,
- 271, 278, 279, 285, 291, 298, 299, 304, 308, 315,
- 319, 326, 330, 337, 338, 344, 349, 350, 354, 355,
- 356, 360, 369, 373
+ 271, 278, 279, 285, 291, 298, 299, 304, 312, 316,
+ 323, 327, 334, 338, 345, 346, 352, 357, 358, 362,
+ 363, 364, 368, 369, 379
};
#endif
"TOKEN_CONF", "TOKEN_ID", "TOKEN_FID", "TOKEN_FID_END", "TOKEN_REGEXP",
"'/'", "'='", "';'", "'*'", "'<'", "'>'", "'!'", "':'", "','", "'|'",
"'\\\\'", "'+'", "'?'", "'('", "')'", "$accept", "spec", "def", "name",
- "enddef", "rule", "ccode", "clist", "conds", "trailexpr", "expr", "diff",
- "term", "factor", "closes", "close", "primary", YY_NULLPTR
+ "enddef", "rule", "ccode", "clist", "conds", "trailexpr", "capexpr",
+ "expr", "diff", "term", "factor", "closes", "close", "primary", YY_NULLPTR
};
#endif
};
# endif
-#define YYPACT_NINF -17
+#define YYPACT_NINF -20
#define yypact_value_is_default(Yystate) \
- (!!((Yystate) == (-17)))
+ (!!((Yystate) == (-20)))
#define YYTABLE_NINF -1
STATE-NUM. */
static const yytype_int8 yypact[] =
{
- -17, 1, -17, -17, -2, -17, -17, 14, 29, 20,
- -17, 20, -17, 23, 3, 30, 20, -17, -1, -17,
- -17, -17, -17, 0, 25, 34, 35, -17, 27, 22,
- -17, 20, 20, 20, -17, -17, -17, -17, -17, 15,
- -17, -17, 37, 43, -17, 40, 10, 50, -17, -17,
- -17, -17, -17, 21, 30, 20, -17, 51, 44, 54,
- 0, 0, -17, 56, 55, -17, -17, -17, -17, -17
+ -20, 1, -20, -20, -6, -20, -20, 15, 22, 11,
+ -20, 11, -20, 40, 35, 27, 31, 11, -20, 0,
+ -20, -20, -20, -20, 19, 5, 32, 30, -20, 8,
+ 21, -20, 11, 11, 11, -20, -20, -20, -20, -20,
+ 28, -20, -20, 37, 42, -20, 39, 3, 49, -20,
+ -20, -20, -20, -20, 27, 31, 11, -20, 50, 43,
+ 53, 19, 19, -20, 55, 54, -20, -20, -20, -20,
+ -20
};
/* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
means the default is an error. */
static const yytype_uint8 yydefact[] =
{
- 2, 0, 1, 3, 41, 9, 42, 0, 0, 0,
- 4, 0, 5, 0, 25, 27, 29, 31, 33, 8,
- 13, 23, 22, 0, 0, 0, 21, 41, 0, 0,
- 12, 0, 0, 0, 32, 35, 38, 39, 40, 34,
- 36, 18, 0, 0, 17, 0, 0, 0, 43, 11,
- 7, 10, 6, 26, 28, 30, 37, 0, 0, 0,
- 0, 0, 24, 0, 0, 16, 15, 14, 19, 20
+ 2, 0, 1, 3, 43, 9, 42, 0, 0, 0,
+ 4, 0, 5, 0, 25, 27, 28, 30, 32, 34,
+ 8, 13, 23, 22, 0, 0, 0, 21, 43, 0,
+ 0, 12, 0, 0, 0, 33, 36, 39, 40, 41,
+ 35, 37, 18, 0, 0, 17, 0, 0, 0, 44,
+ 11, 7, 10, 6, 26, 29, 31, 38, 0, 0,
+ 0, 0, 0, 24, 0, 0, 16, 15, 14, 19,
+ 20
};
/* YYPGOTO[NTERM-NUM]. */
static const yytype_int8 yypgoto[] =
{
- -17, -17, -17, -17, -17, -17, -13, 38, -17, 17,
- -6, 32, 33, -16, -17, 26, -17
+ -20, -20, -20, -20, -20, -20, -19, 36, -20, 16,
+ -20, -7, 29, 33, -17, -20, 24, -20
};
/* YYDEFGOTO[NTERM-NUM]. */
static const yytype_int8 yydefgoto[] =
{
- -1, 1, 10, 11, 52, 12, 44, 25, 26, 13,
- 14, 15, 16, 17, 39, 40, 18
+ -1, 1, 10, 11, 53, 12, 45, 26, 27, 13,
+ 14, 15, 16, 17, 18, 40, 41, 19
};
/* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If
number is the opposite. If YYTABLE_NINF, syntax error. */
static const yytype_uint8 yytable[] =
{
- 34, 2, 35, 28, 41, 29, 3, 4, 5, 19,
- 6, 42, 36, 31, 7, 8, 27, 43, 20, 6,
- 37, 38, 32, 60, 9, 53, 27, 30, 36, 6,
- 49, 21, 50, 9, 51, 21, 37, 38, 22, 34,
- 32, 32, 22, 9, 23, 24, 32, 66, 67, 46,
- 33, 48, 57, 47, 58, 59, 62, 63, 65, 64,
- 68, 69, 45, 61, 54, 56, 55
+ 35, 2, 29, 36, 30, 20, 3, 4, 5, 28,
+ 6, 22, 6, 37, 7, 8, 61, 28, 23, 21,
+ 6, 38, 39, 42, 9, 54, 9, 33, 22, 50,
+ 43, 51, 49, 52, 9, 23, 44, 24, 25, 35,
+ 33, 37, 67, 68, 31, 32, 33, 47, 48, 38,
+ 39, 34, 58, 59, 60, 63, 64, 66, 65, 69,
+ 70, 46, 55, 62, 57, 0, 0, 56
};
-static const yytype_uint8 yycheck[] =
+static const yytype_int8 yycheck[] =
{
- 16, 0, 3, 9, 4, 11, 5, 6, 7, 11,
- 9, 11, 13, 10, 13, 14, 6, 17, 4, 9,
- 21, 22, 19, 13, 23, 31, 6, 4, 13, 9,
- 8, 6, 10, 23, 12, 6, 21, 22, 13, 55,
- 19, 19, 13, 23, 15, 16, 19, 60, 61, 15,
- 20, 24, 15, 18, 11, 15, 6, 6, 4, 15,
- 4, 6, 24, 46, 32, 39, 33
+ 17, 0, 9, 3, 11, 11, 5, 6, 7, 6,
+ 9, 6, 9, 13, 13, 14, 13, 6, 13, 4,
+ 9, 21, 22, 4, 23, 32, 23, 19, 6, 8,
+ 11, 10, 24, 12, 23, 13, 17, 15, 16, 56,
+ 19, 13, 61, 62, 4, 10, 19, 15, 18, 21,
+ 22, 20, 15, 11, 15, 6, 6, 4, 15, 4,
+ 6, 25, 33, 47, 40, -1, -1, 34
};
/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
static const yytype_uint8 yystos[] =
{
0, 26, 0, 5, 6, 7, 9, 13, 14, 23,
- 27, 28, 30, 34, 35, 36, 37, 38, 41, 11,
- 4, 6, 13, 15, 16, 32, 33, 6, 35, 35,
- 4, 10, 19, 20, 38, 3, 13, 21, 22, 39,
- 40, 4, 11, 17, 31, 32, 15, 18, 24, 8,
- 10, 12, 29, 35, 36, 37, 40, 15, 11, 15,
- 13, 34, 6, 6, 15, 4, 31, 31, 4, 6
+ 27, 28, 30, 34, 35, 36, 37, 38, 39, 42,
+ 11, 4, 6, 13, 15, 16, 32, 33, 6, 36,
+ 36, 4, 10, 19, 20, 39, 3, 13, 21, 22,
+ 40, 41, 4, 11, 17, 31, 32, 15, 18, 24,
+ 8, 10, 12, 29, 36, 37, 38, 41, 15, 11,
+ 15, 13, 34, 6, 6, 15, 4, 31, 31, 4,
+ 6
};
/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
{
0, 25, 26, 26, 26, 26, 27, 27, 28, 28,
29, 29, 30, 30, 30, 30, 30, 30, 31, 31,
- 31, 32, 32, 33, 33, 34, 34, 35, 35, 36,
- 36, 37, 37, 38, 38, 38, 39, 39, 40, 40,
- 40, 41, 41, 41
+ 31, 32, 32, 33, 33, 34, 34, 35, 36, 36,
+ 37, 37, 38, 38, 39, 39, 39, 40, 40, 41,
+ 41, 41, 42, 42, 42
};
/* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN. */
{
0, 2, 0, 2, 2, 2, 3, 3, 2, 1,
1, 1, 2, 2, 5, 5, 5, 3, 1, 4,
- 4, 1, 1, 1, 3, 1, 3, 1, 3, 1,
- 3, 1, 2, 1, 2, 2, 1, 2, 1, 1,
- 1, 1, 1, 3
+ 4, 1, 1, 1, 3, 1, 3, 1, 1, 3,
+ 1, 3, 1, 2, 1, 2, 2, 1, 2, 1,
+ 1, 1, 1, 1, 3
};
case 27:
{
- (yyval.regexp) = (yyvsp[0].regexp);
+ if (context.input.opts->posix_captures) {
+ (yyvsp[0].regexp) = RegExp::make_cap((yyvsp[0].regexp));
}
+ (yyval.regexp) = (yyvsp[0].regexp);
+ }
break;
case 28:
{
- (yyval.regexp) = mkAlt((yyvsp[-2].regexp), (yyvsp[0].regexp));
+ (yyval.regexp) = (yyvsp[0].regexp);
}
break;
case 29:
{
- (yyval.regexp) = (yyvsp[0].regexp);
+ (yyval.regexp) = mkAlt((yyvsp[-2].regexp), (yyvsp[0].regexp));
}
break;
case 30:
{
- (yyval.regexp) = context.input.mkDiff((yyvsp[-2].regexp), (yyvsp[0].regexp));
+ (yyval.regexp) = (yyvsp[0].regexp);
}
break;
case 31:
{
- (yyval.regexp) = (yyvsp[0].regexp);
+ (yyval.regexp) = context.input.mkDiff((yyvsp[-2].regexp), (yyvsp[0].regexp));
}
break;
case 32:
+ {
+ (yyval.regexp) = (yyvsp[0].regexp);
+ }
+
+ break;
+
+ case 33:
+
{
(yyval.regexp) = RegExp::make_cat((yyvsp[-1].regexp), (yyvsp[0].regexp));
}
break;
- case 34:
+ case 35:
{
switch((yyvsp[0].op)) {
break;
- case 35:
+ case 36:
{
(yyval.regexp) = RegExp::make_iter((yyvsp[-1].regexp), (yyvsp[0].extop).min, (yyvsp[0].extop).max);
break;
- case 37:
+ case 38:
{ (yyval.op) = ((yyvsp[-1].op) == (yyvsp[0].op)) ? (yyvsp[-1].op) : '*'; }
break;
- case 38:
+ case 39:
{ (yyval.op) = '*'; }
break;
- case 39:
+ case 40:
{ (yyval.op) = '+'; }
break;
- case 40:
+ case 41:
{ (yyval.op) = '?'; }
break;
- case 41:
+ case 43:
{
- symtab_t::iterator i = context.symtab.find(*(yyvsp[0].str));
- delete (yyvsp[0].str);
- if (i == context.symtab.end()) {
- context.input.fatal("can't find symbol");
- }
- (yyval.regexp) = i->second;
+ symtab_t::iterator i = context.symtab.find(*(yyvsp[0].str));
+ if (i == context.symtab.end()) {
+ context.input.fatal("can't find symbol");
}
-
- break;
-
- case 42:
-
- {
- (yyval.regexp) = (yyvsp[0].regexp);
+ (yyval.regexp) = i->second;
+ if (context.input.opts->posix_captures && need_wrap((yyval.regexp))) {
+ (yyval.regexp) = RegExp::make_ref((yyval.regexp), *(yyvsp[0].str));
}
+ delete (yyvsp[0].str);
+ }
break;
- case 43:
+ case 44:
{
- (yyval.regexp) = (yyvsp[-1].regexp);
+ (yyval.regexp) = (yyvsp[-1].regexp);
+ if (context.input.opts->posix_captures) {
+ (yyval.regexp) = RegExp::make_cap((yyval.regexp));
}
+ }
break;
static void emit_rule (OutputFile &o, uint32_t ind, const DFA &dfa, size_t rule_idx);
static void gen_fintags (OutputFile &o, uint32_t ind, const DFA &dfa, const Rule &rule);
static void gen_goto (code_lines_t &code, const State *to, const DFA &dfa, tcid_t tcid, const opt_t *opts, bool skip);
+static std::string tagname (const Tag &tag);
static bool endstate (const State *s);
void emit_action(OutputFile &o, uint32_t ind, const DFA &dfa,
const Rule &rule = dfa.rules[rule_idx];
const Code *code = rule.code;
const std::string &cond = code->cond;
+ const bool wrap = rule.ncap > 0;
std::string s;
+ if (wrap) o.wind(ind++).ws("{\n");
+
gen_fintags(o, ind, dfa, rule);
if (opts->target == opt_t::SKELETON) {
strrreplace(s = opts->condGoto, opts->condGotoParam, opts->condPrefix + cond);
o.wind(ind).wstring(s).ws("\n");
}
+
+ if (wrap) o.wind(--ind).ws("}\n");
}
void need(OutputFile &o, uint32_t ind, size_t some)
const std::vector<Tag> &tags = dfa.tags;
const tagver_t *fins = dfa.finvers;
+ if (rule.ncap > 0) {
+ o.wind(ind).ws("const size_t yynmatch = ").wu64(rule.ncap).ws(";\n");
+ o.wind(ind).ws("const ").wstring(opts->yyctype).ws(" *yypmatch[yynmatch * 2];\n");
+ }
+
// variable tags
for (size_t t = rule.ltag; t < rule.htag; ++t) {
const Tag &tag = tags[t];
- if (fixed(tag)) continue;
+
+ // see note [fixed and variable tags]
+ if (orbit(tag) || fixed(tag)) continue;
expr = vartag_expr(fins[t], prefix, expression);
o.wind(ind);
if (generic) {
if (!trailing(tag)) {
- o.wstring(opts->yycopytag).ws(" (").wstring(*tag.name)
+ o.wstring(opts->yycopytag).ws(" (").wstring(tagname(tag))
.ws(", ").wstring(expr).ws(")");
} else if (dfa.oldstyle_ctxmarker) {
o.wstring(opts->yyrestorectx).ws(" ()");
}
} else {
if (!trailing(tag)) {
- o.wstring(*tag.name).ws(" = ").wstring(expr);
+ o.wstring(tagname(tag)).ws(" = ").wstring(expr);
} else if (dfa.oldstyle_ctxmarker) {
o.wstring(opts->yycursor).ws(" = ").wstring(opts->yyctxmarker);
} else {
// fixed tags
for (size_t t = rule.ltag; t < rule.htag; ++t) {
const Tag &tag = tags[t];
- if (!fixed(tag)) continue;
+
+ // see note [fixed and variable tags]
+ if (orbit(tag) || !fixed(tag)) continue;
const size_t dist = tag.dist;
const bool fixed_on_cursor = tag.base == Tag::RIGHTMOST;
if (generic) {
assert(dist == 0);
if (!trailing(tag)) {
- o.wstring(opts->yycopytag).ws(" (").wstring(*tag.name)
+ o.wstring(opts->yycopytag).ws(" (").wstring(tagname(tag))
.ws(", ").wstring(expr).ws(")");
} else if (!fixed_on_cursor) {
assert(!dfa.oldstyle_ctxmarker);
}
} else {
if (!trailing(tag)) {
- o.wstring(*tag.name).ws(" = ").wstring(expr);
+ o.wstring(tagname(tag)).ws(" = ").wstring(expr);
if (dist > 0) o.ws(" - ").wu64(dist);
} else if (!fixed_on_cursor) {
o.wstring(opts->yycursor).ws(" = ").wstring(expr);
}
}
+std::string tagname(const Tag &tag)
+{
+ assert(!trailing(tag));
+ return capture(tag)
+ ? "yypmatch[" + to_string(2 * (tag.ncap / 3) + (tag.ncap % 3)) + "]"
+ : *tag.name;
+}
+
bool endstate(const State *s)
{
// 'end' state is a state which has no outgoing transitions on symbols
bUseStateAbort = Opt::baseopt.bUseStateAbort;
bUseStateNext = Opt::baseopt.bUseStateNext;
}
+ if (posix_captures) {
+ tags = true;
+ }
if (!tags)
{
tags_default = Opt::baseopt.tags_default;
OPT (std::string, tags_default, "NULL") \
OPT (std::string, tags_prefix, "yyt") \
OPT (std::string, tags_expression, "@@") \
+ OPT (bool, posix_captures, false) \
/* reuse */ \
OPT (bool, rFlag, false) \
/* partial flex syntax support */ \
"case-inverted" end { opts.set_bCaseInverted (true); goto opt; }
"skeleton" end { opts.set_target (opt_t::SKELETON); goto opt; }
"tags" end { opts.set_tags (true); goto opt; }
+ "posix-captures" end { opts.set_posix_captures (true); goto opt; }
"no-lookahead" end { opts.set_lookahead(false); goto opt; }
"eager-skip" end { opts.set_eager_skip(true); goto opt; }
"ecb" end { if (!opts.set_encoding (Enc::EBCDIC)) { error_encoding (); return EXIT_FAIL; } goto opt; }
-#include <algorithm>
+#include <string.h>
#include "src/ir/dfa/closure.h"
#include "src/ir/nfa/nfa.h"
{
static void closure_one(closure_t &clos, Tagpool &tagpool, tagtree_t &tagtree,
- clos_t &c0, nfa_state_t *n, closure_t *shadow, std::valarray<Rule> &rules);
+ clos_t &c0, nfa_state_t *n, const std::vector<Tag> &tags, closure_t *shadow, std::valarray<Rule> &rules);
+static bool better(const clos_t &c1, const clos_t &c2, Tagpool &tagpool, tagtree_t &tagtree, const std::vector<Tag> &tags);
static void assert_items_are_grouped_by_rule(const closure_t &clos);
static void lower_lookahead_to_transition(closure_t &clos, Tagpool &tagpool, tagtree_t &tagtree);
static void update_versions(closure_t &clos, Tagpool &tagpool, tagtree_t &tagtree, tagver_t &maxver, tagver_t *newvers);
+static void orbit_order(closure_t &clos, Tagpool &tagpool, tagtree_t &tagtree, const std::vector<Tag> &tags);
static void find_nondet(const closure_t &clos, size_t *nondet, const Tagpool &tagpool, const std::valarray<Rule> &rules);
void closure(closure_t &clos1, closure_t &clos2, Tagpool &tagpool, tagtree_t &tagtree,
std::valarray<Rule> &rules, tagver_t &maxver, tagver_t *newvers,
- size_t *nondet, bool lookahead, closure_t *shadow)
+ size_t *nondet, bool lookahead, closure_t *shadow, const std::vector<Tag> &tags)
{
// build tagged epsilon-closure of the given set of NFA states
clos2.clear();
if (shadow) shadow->clear();
tagtree.init();
for (clositer_t c = clos1.begin(); c != clos1.end(); ++c) {
- closure_one(clos2, tagpool, tagtree, *c, c->state, shadow, rules);
+ closure_one(clos2, tagpool, tagtree, *c, c->state, tags, shadow, rules);
}
assert_items_are_grouped_by_rule(clos2);
+ // see note [orbit order of closure items]
+ orbit_order(clos2, tagpool, tagtree, tags);
+ if (shadow) orbit_order(*shadow, tagpool, tagtree, tags);
+
// see note [the difference between TDFA(0) and TDFA(1)]
if (!lookahead) {
lower_lookahead_to_transition(clos2, tagpool, tagtree);
*
* Each closure state might be reachable by multiple epsilon-paths with
* different tags: this means that the regular expression is ambiguous
- * and can be parsed in different ways. We resolve ambiguity by always
- * choosing the leftmost epsilon-path through the NFA.
- *
- * Compilation of regular expression into NFA takes into account semantics
- * of individual subexpressions: e.g., greedy iteration is compiled so that
- * the leftmost path re-iterates rather than leaves the subexpression..
+ * and can be parsed in different ways. Disambiguation strategy depends
+ * on the type of the first (most prioritized) ambiguous tag: for simple
+ * tags we always choose the leftmost epsilon-path through the NFA, for
+ * POSIX captures the rules are more complex (opening and closing tags
+ * are maximized unless one of them is bottom, in which case we fallback
+ * to leftmost strategy; orbit tags are compared by order and by tagged
+ * epsilon-paths so that earlier iterations are maximized).
*/
void closure_one(closure_t &clos, Tagpool &tagpool, tagtree_t &tagtree, clos_t &c0,
- nfa_state_t *n, closure_t *shadow,
+ nfa_state_t *n, const std::vector<Tag> &tags, closure_t *shadow,
std::valarray<Rule> &rules)
{
if (n->loop) return;
clositer_t c = clos.begin(), e = clos.end();
switch (n->type) {
case nfa_state_t::NIL:
- closure_one(clos, tagpool, tagtree, c0, n->nil.out, shadow, rules);
+ closure_one(clos, tagpool, tagtree, c0, n->nil.out, tags, shadow, rules);
return;
case nfa_state_t::ALT:
- closure_one(clos, tagpool, tagtree, c0, n->alt.out1, shadow, rules);
- closure_one(clos, tagpool, tagtree, c0, n->alt.out2, shadow, rules);
+ closure_one(clos, tagpool, tagtree, c0, n->alt.out1, tags, shadow, rules);
+ closure_one(clos, tagpool, tagtree, c0, n->alt.out2, tags, shadow, rules);
return;
case nfa_state_t::TAG:
tagtree.push(n->tag.info, n->tag.bottom ? TAGVER_BOTTOM : TAGVER_CURSOR);
- closure_one(clos, tagpool, tagtree, c0, n->tag.out, shadow, rules);
+ closure_one(clos, tagpool, tagtree, c0, n->tag.out, tags, shadow, rules);
tagtree.pop(n->tag.info);
return;
case nfa_state_t::RAN:
break;
}
- clos_t c2 = {c0.origin, n, c0.tvers, tagpool.insert(tagtree.leaves())};
+ clos_t c2 = {c0.origin, n, c0.tvers, tagpool.insert(tagtree.leaves()), c0.order};
if (c == e) {
clos.push_back(c2);
} else {
clos_t &c1 = *c;
+ if (better(c1, c2, tagpool, tagtree, tags)) std::swap(c1, c2);
if (shadow) shadow->push_back(c2);
const size_t
r1 = c1.state->rule,
* with the highest priority (see note [closure items are sorted by rule]).
*/
+bool better(const clos_t &c1, const clos_t &c2,
+ Tagpool &tagpool, tagtree_t &tagtree, const std::vector<Tag> &tags)
+{
+ if (c1.ttran == c2.ttran
+ && c1.tvers == c2.tvers
+ && c1.order == c2.order) return false;
+
+ const tagver_t
+ *l1 = tagpool[c1.ttran], *l2 = tagpool[c2.ttran],
+ *v1 = tagpool[c1.tvers], *v2 = tagpool[c2.tvers],
+ *o1 = tagpool[c1.order], *o2 = tagpool[c2.order];
+ tagver_t x, y;
+
+ for (size_t t = 0; t < tagpool.ntags; ++t) {
+
+ // simple tag: always prefer leftmost
+ if (!capture(tags[t])) {
+ return false;
+
+ // orbit capture tag: compare by order and tagged epsilon-paths
+ } else if (orbit(tags[t])) {
+ x = o1[t]; y = o2[t];
+ if (x < y) return false;
+ if (x > y) return true;
+
+ const int cmp = tagtree.compare_paths(l1[t], l2[t]);
+ if (cmp < 0) return false;
+ if (cmp > 0) return true;
+
+ assert(v1[t] == v2[t]);
+
+ // open/close capture tag: if either one is bottom,
+ // prefer leftmost; otherwise, maximize
+ } else {
+ assert(o1[t] == o2[t]);
+
+ x = tagtree.elem(l1[t]);
+ y = tagtree.elem(l2[t]);
+ if (x < 0 || y < 0 || x > y) return false;
+ if (x < y) return true;
+
+ x = v1[t]; y = v2[t];
+ if (x < 0 || y < 0 || x > y) return false;
+ if (x < y) return true;
+ }
+ }
+
+ return false;
+}
+
/* note [the difference between TDFA(0) and TDFA(1)]
*
* TDFA(0) performs epsilon-closure after transition on symbol,
}
}
+/* note [orbit order of closure items]
+ *
+ * POSIX disambiguation rules demand that earlier subexpressions match
+ * the longest possible prefix of the input string (without violating the
+ * whole match). To accommodate these rules, we resolve conflicts on orbit
+ * tags by lexicographic comparison of tag offsets on the way to conflicting
+ * NFA states.
+ *
+ * By lexicographic comparison we mean that if one history is a proper prefix
+ * of another history, it is lexicographically less; otherwise for the first
+ * pair of different offsets, if one offset is greater than the other, then
+ * the corresponding history is lexicographically less.
+ *
+ * For the given input string, it is possible to define lexicographical order
+ * on tag histories corresponding to all matching paths through NFA, because
+ * the length of histories is bounded by the length of input (epsilon-cycles
+ * are forbidden) and the set of all possible offsets is finite (also bounded
+ * by input length).
+ *
+ * Moreover, for a given prefix of the input string, lexicographic order on
+ * histories of the whole string is an extension of order on prefix histories:
+ * once comparison of two prefix histories X and Y establishes that X < Y,
+ * all further comarisons of X's descendants to Y's descendants will yield
+ * the same result. This is obvious unless X is a proper prefix of Y;
+ * otherwise, this is true because any offset appended to X will be greater
+ * than any offset in Y (it corresponds to further position in the input
+ * string) and therefore all descendants of X will be less than Y.
+ *
+ * Therefore, at any point of ambiguity we can choose lexicographically least
+ * history and claim that it corresponds to lexicographically least history
+ * for the whole input.
+ *
+ * For the same reason, keeping the whole history of offsets is not necessary:
+ * it is sufficient to remember only the relative order of any pair of
+ * histories and use it as the first component in lexicographic comparison.
+ *
+ * This part of the algorithm was invented by Christopher Kuklewicz.
+ */
+
+typedef std::pair<tagver_t, tagver_t> key_t;
+struct cmp_t
+{
+ tagtree_t &tree;
+ bool operator()(const key_t &x, const key_t &y)
+ {
+ if (x.first < y.first) return true;
+ if (x.first > y.first) return false;
+ return tree.compare_paths(x.second, y.second) < 0;
+ }
+};
+
+void orbit_order(closure_t &clos, Tagpool &tagpool,
+ tagtree_t &tagtree, const std::vector<Tag> &tags)
+{
+ const size_t
+ ntag = tagpool.ntags,
+ nclos = clos.size();
+
+ const cmp_t cmp = {tagtree};
+ std::set<key_t, cmp_t> keys(cmp);
+
+ size_t &maxclos = tagpool.maxclos;
+ tagver_t *&orders = tagpool.orders;
+ if (maxclos < nclos) {
+ maxclos = nclos * 2; // in advance
+ delete[] orders;
+ orders = new tagver_t[ntag * maxclos];
+ }
+
+ memset(orders, TAGVER_ZERO, ntag * nclos * sizeof(tagver_t));
+ for (size_t t = 0; t < ntag; ++t) {
+ if (!orbit(tags[t])) continue;
+
+ keys.clear();
+ for (size_t i = 0; i < nclos; ++i) {
+ const key_t key(tagpool[clos[i].order][t], tagpool[clos[i].ttran][t]);
+ keys.insert(key);
+ }
+
+ for (size_t i = 0; i < nclos; ++i) {
+ const key_t key(tagpool[clos[i].order][t], tagpool[clos[i].ttran][t]);
+ const ptrdiff_t d = std::distance(keys.begin(), keys.find(key));
+ orders[ntag * i + t] = static_cast<tagver_t>(d);
+ }
+ }
+ for (size_t i = 0; i < nclos; ++i) {
+ clos[i].order = tagpool.insert(orders + ntag * i);
+ }
+}
+
/*
* For each tag, find the number of parallel versions of this tag
* used in this closure (degree of non-determinism).
nfa_state_t *state;
size_t tvers; // tag versions (including lookahead tags)
size_t ttran; // transition tags
+ size_t order; // see note [orbit order of closure items]
static inline bool fin(const clos_t &c) { return c.state->type == nfa_state_t::FIN; }
};
void closure(closure_t &clos1, closure_t &clos2, Tagpool &tagpool, tagtree_t &tagtree,
std::valarray<Rule> &rules, tagver_t &maxver, tagver_t *newvers,
- size_t *nondet, bool lookahead, closure_t *shadow);
+ size_t *nondet, bool lookahead, closure_t *shadow, const std::vector<Tag> &tags);
} // namespace re2c
nfa_state_t *s1 = kernel->state[i],
*s2 = transition(s1, symbol);
if (s2) {
- clos_t c = {s1, s2, kernel->tvers[i], ZERO_TAGS};
+ clos_t c = {s1, s2, kernel->tvers[i], ZERO_TAGS, kernel->order[i]};
clos.push_back(c);
}
}
const size_t ntag = tags.size();
Tagpool tagpool(ntag);
tagtree_t tagtree(ntag);
- kernels_t kernels(tagpool, tcpool);
+ kernels_t kernels(tagpool, tcpool, tags);
closure_t clos1, clos2;
tagver_t *newvers = new tagver_t[ntag * 2];
size_t *nondet = new size_t[ntag]();
// build tagged epsilon-closure of all reachable NFA states,
// then find identical or mappable DFA state or add a new one
- clos_t c0 = {NULL, nfa.root, INITIAL_TAGS, ZERO_TAGS};
+ clos_t c0 = {NULL, nfa.root, INITIAL_TAGS, ZERO_TAGS, ZERO_TAGS};
clos1.push_back(c0);
std::fill(newvers, newvers + ntag * 2, TAGVER_ZERO);
- closure(clos1, clos2, tagpool, tagtree, rules, maxtagver, newvers, nondet, lookahead, dump.shadow);
+ closure(clos1, clos2, tagpool, tagtree, rules, maxtagver, newvers, nondet, lookahead, dump.shadow, tags);
find_state(*this, dfa_t::NIL, 0/* any */, kernels, clos2, dump);
for (size_t i = 0; i < kernels.size(); ++i) {
std::fill(newvers, newvers + ntag * 2, TAGVER_ZERO);
for (size_t c = 0; c < nchars; ++c) {
reach(kernels[i], clos1, charset[c]);
- closure(clos1, clos2, tagpool, tagtree, rules, maxtagver, newvers, nondet, lookahead, dump.shadow);
+ closure(clos1, clos2, tagpool, tagtree, rules, maxtagver, newvers, nondet, lookahead, dump.shadow, tags);
find_state(*this, i, c, kernels, clos2, dump);
}
}
const tagver_t *vers = tagpool[c->tvers];
const size_t ntag = tagpool.ntags;
for (size_t t = 0; t < ntag; ++t) {
- fprintf(stderr, " %s", tagname(dfa.tags[t]));
+ const Tag &tag = dfa.tags[t];
+
+ fprintf(stderr, " %s", tagname(tag));
const tagver_t v = vers[t];
if (v == TAGVER_BOTTOM) {
} else {
fprintf(stderr, "%d", abs(v));
}
+
+ if (orbit(tag)) {
+ fprintf(stderr, "[%d]", tagpool[c->order][t]);
+ }
}
}
: size(n)
, state(new nfa_state_t*[size])
, tvers(new size_t[size])
+ , order(new size_t[size])
{}
kernel_t *kernel_t::copy(const kernel_t &k)
kernel_t *kcopy = new kernel_t(n);
memcpy(kcopy->state, k.state, n * sizeof(void*));
memcpy(kcopy->tvers, k.tvers, n * sizeof(size_t));
+ memcpy(kcopy->order, k.order, n * sizeof(size_t));
return kcopy;
}
{
delete[] state;
delete[] tvers;
+ delete[] order;
}
struct kernel_eq_t
return x->size == y->size
&& memcmp(x->state, y->state, x->size * sizeof(void*)) == 0
&& memcmp(x->tvers, y->tvers, x->size * sizeof(size_t)) == 0;
+ // no need to compare orders: if versions coincide, so do orders
}
};
bool kernels_t::operator()(const kernel_t *k1, const kernel_t *k2)
{
- // check that kernel sizes and NFA states coincide
+ // check that kernel sizes, NFA states and orders coincide
const bool compatible = k1->size == k2->size
- && memcmp(k1->state, k2->state, k1->size * sizeof(void*)) == 0;
+ && memcmp(k1->state, k2->state, k1->size * sizeof(void*)) == 0
+ && memcmp(k1->order, k2->order, k1->size * sizeof(size_t)) == 0;
if (!compatible) return false;
// map tag versions of one kernel to that of another
return true;
}
-kernels_t::kernels_t(Tagpool &tagp, tcpool_t &tcp)
+kernels_t::kernels_t(Tagpool &tagp, tcpool_t &tcp, const std::vector<Tag> &ts)
: lookup()
, tagpool(tagp)
, tcpool(tcp)
+ , tags(ts)
, maxsize(0) // usually ranges from one to some twenty
, buffer(new kernel_t(maxsize))
const clos_t &c = clos[i];
buffer->state[i] = c.state;
buffer->tvers[i] = c.tvers;
+ buffer->order[i] = c.order;
}
// get kernel hash
uint32_t hash = static_cast<uint32_t>(nkern); // seed
hash = hash32(hash, buffer->state, nkern * sizeof(void*));
+ hash = hash32(hash, buffer->order, nkern * sizeof(size_t));
// try to find identical kernel
kernel_eq_t eq;
// at most one new cursor and one new bottom version per tag
// no mapping => only save commands, no copy commands
for (size_t t = 0; t < tagpool.ntags; ++t) {
+ if (fixed(tags[t])) continue;
+
for (c = c1; c != c2 && (v = tagpool[c->ttran][t]) <= TAGVER_ZERO; ++c);
if (c != c2) save = tcpool.make_save(save, v, false);
// at most one new cursor and one new bottom version per tag
const size_t t = x2t[x];
+ if (fixed(tags[t])) continue;
+
const tagver_t ax = abs(x), ay = abs(y);
for (c = c1; c != c2 && tagpool[c->ttran][t] != y; ++c);
if (c != c2) {
size_t size;
nfa_state_t **state;
size_t *tvers; // tag versions
+ size_t *order; // see note [orbit order of closure items]
explicit kernel_t(size_t n);
~kernel_t();
public:
Tagpool &tagpool;
tcpool_t &tcpool;
+ const std::vector<Tag> &tags;
private:
size_t maxsize;
uint32_t *indeg;
public:
- kernels_t(Tagpool &tagpool, tcpool_t &tcpool);
+ kernels_t(Tagpool &tagpool, tcpool_t &tcpool, const std::vector<Tag> &tags);
~kernels_t();
void init(tagver_t v, size_t k);
size_t size() const;
, buffer2(&buffer[n * 2])
, buffer3(&buffer[n * 3])
, buffer4(&buffer[n * 4])
+ , maxclos(0)
+ , orders(NULL)
{}
Tagpool::~Tagpool()
for (size_t i = 0; i < n; ++i) {
free(const_cast<tagver_t*>(lookup[i]));
}
+ delete[] orders;
}
size_t Tagpool::insert_const(tagver_t ver)
tagver_t *buffer3;
tagver_t *buffer4;
+ size_t maxclos;
+ tagver_t *orders;
+
explicit Tagpool(size_t n);
~Tagpool();
size_t insert_const(tagver_t ver);
tagtree_t::tagtree_t(size_t n)
: nodes()
+ , path1()
+ , path2()
, ntag(n)
, tags(new tagver_t[ntag])
{
tags[t] = pred(tags[t]);
}
+int32_t tagtree_t::compare_paths(tagver_t x, tagver_t y)
+{
+ path1.clear();
+ for (; x != -1; x = pred(x)) path1.push_back(elem(x));
+
+ path2.clear();
+ for (; y != -1; y = pred(y)) path2.push_back(elem(y));
+
+ std::vector<tagver_t>::const_reverse_iterator
+ i1 = path1.rbegin(), e1 = path1.rend(),
+ i2 = path2.rbegin(), e2 = path2.rend();
+
+ for (;;) {
+ if (i1 == e1 && i2 == e2) break;
+ if (i1 == e1) return -1;
+ if (i2 == e2) return 1;
+ if (*i1 > *i2) return -1;
+ if (*i1 < *i2) return 1;
+ ++i1; ++i2;
+ }
+
+ return 0;
+}
+
} // namespace re2c
};
std::vector<node_t> nodes;
+ // reconstruct paths for comparison
+ std::vector<tagver_t> path1;
+ std::vector<tagver_t> path2;
+
// set of leaves (one leaf per tag) corresponding to
// current deep-first search path in the epsilon-closure
size_t ntag;
const tagver_t *leaves() const;
void push(size_t t, tagver_t v);
void pop(size_t t);
+ int32_t compare_paths(tagver_t x, tagver_t y);
FORBID_COPY(tagtree_t);
};
case nfa_state_t::TAG: {
const Tag &tag = nfa.tags[n->tag.info];
fprintf(stderr, " n%u -> n%u [label=\"/", i, index(nfa, n->tag.out));
- if (trailing(tag)) {
+ if (capture(tag)) {
+ fprintf(stderr, "%u_", (uint32_t)tag.ncap);
+ } else if (trailing(tag)) {
fprintf(stderr, "%u", (uint32_t)n->rule);
} else {
fprintf(stderr, "%s", tag.name->c_str());
}
break;
}
- case RE::TAG:
- if (fixed(nfa.tags[re->tag.idx])) {
+ case RE::TAG: {
+ const Tag &tag = nfa.tags[re->tag.idx];
+ if (fixed(tag) && !capture(tag)) {
s = t;
} else {
s = &nfa.states[nfa.size++];
s->make_tag(nrule, t, re->tag.idx, re->tag.bottom);
}
break;
+ }
}
return s;
}
namespace re2c {
-static RE *ast_to_re(RESpec &spec, const RegExp *ast)
+static RE *ast_to_re(RESpec &spec, const RegExp *ast, size_t &ncap)
{
RE::alc_t &alc = spec.alc;
+ std::vector<Tag> &tags = spec.tags;
+
switch (ast->type) {
default: assert(false);
case RegExp::NIL:
case RegExp::SYM:
return re_sym(alc, ast->sym);
case RegExp::ALT: {
- RE *x = ast_to_re(spec, ast->alt.re1);
- RE *y = ast_to_re(spec, ast->alt.re2);
+ RE *x = ast_to_re(spec, ast->alt.re1, ncap);
+ RE *y = ast_to_re(spec, ast->alt.re2, ncap);
return re_alt(alc, x, y);
}
case RegExp::CAT: {
- RE *x = ast_to_re(spec, ast->cat.re1);
- RE *y = ast_to_re(spec, ast->cat.re2);
+ RE *x = ast_to_re(spec, ast->cat.re1, ncap);
+ RE *y = ast_to_re(spec, ast->cat.re2, ncap);
return re_cat(alc, x, y);
}
case RegExp::TAG: {
- const size_t ntag = spec.tags.size();
- Tag tag = {ast->tag, ntag, Tag::VARDIST};
- spec.tags.push_back(tag);
- return re_tag(alc, ntag, false);
+ RE *t = re_tag(alc, tags.size(), false);
+ tags.push_back(Tag(ast->tag));
+ return t;
+ }
+ case RegExp::CAP: {
+ const RegExp *x = ast->cap;
+ if (x->type == RegExp::REF) x = x->ref.re;
+
+ RE *t1 = re_tag(alc, tags.size(), false);
+ tags.push_back(Tag(3 * ncap));
+
+ RE *t2 = re_tag(alc, tags.size(), false);
+ tags.push_back(Tag(3 * ncap + 1));
+
+ ++ncap;
+ return re_cat(alc, t1, re_cat(alc, ast_to_re(spec, x, ncap), t2));
}
+ case RegExp::REF:
+ error("implicit grouping is forbidden with '--posix-captures'"
+ " option, please wrap '%s' in capturing parenthesis",
+ ast->ref.name->c_str());
+ exit(1);
case RegExp::ITER: {
const uint32_t
n = ast->iter.min,
m = std::max(n, ast->iter.max);
const RegExp *x = ast->iter.re;
+ RE *t1 = NULL, *t2 = NULL, *t3 = NULL;
+ if (x->type == RegExp::CAP) {
+ x = x->cap;
+ if (x->type == RegExp::REF) x = x->ref.re;
+
+ t1 = re_tag(alc, tags.size(), false);
+ tags.push_back(Tag(3 * ncap));
+
+ t2 = re_tag(alc, tags.size(), false);
+ tags.push_back(Tag(3 * ncap + 1));
+
+ if (m > 1) {
+ t3 = re_tag(alc, tags.size(), false);
+ tags.push_back(Tag(3 * ncap + 2));
+ }
+
+ ++ncap;
+ }
+
RE *y = NULL;
if (m > 0) {
- y = ast_to_re(spec, x);
+ y = ast_to_re(spec, x, ncap);
+ y = re_cat(alc, t3, y);
y = re_iter(alc, y, n1, m);
}
+ y = re_cat(alc, t1, re_cat(alc, y, t2));
if (n == 0) {
y = re_alt(alc, y, re_nil(alc));
}
}
}
-static void init_rule(Rule &rule, const Code *code, const std::vector<Tag> &tags, size_t ltag)
+static void init_rule(Rule &rule, const Code *code, const std::vector<Tag> &tags,
+ size_t ltag, size_t ncap)
{
rule.code = code;
rule.ltag = ltag;
rule.htag = tags.size();
- for (rule.ttag = ltag; rule.ttag < rule.htag && tags[rule.ttag].name; ++rule.ttag);
+ for (rule.ttag = ltag; rule.ttag < rule.htag && !trailing(tags[rule.ttag]); ++rule.ttag);
+ rule.ncap = ncap;
assert_tags_used_once(rule, tags);
}
, tags(*new std::vector<Tag>)
, rules(*new std::valarray<Rule>(ast.size()))
{
- for (size_t i = 0, t; i < ast.size(); ++i) {
- t = tags.size();
- res.push_back(ast_to_re(*this, ast[i].re));
- init_rule(rules[i], ast[i].code, tags, t);
+ for (size_t i = 0; i < ast.size(); ++i) {
+ size_t ltag = tags.size(), ncap = 0;
+ res.push_back(ast_to_re(*this, ast[i].re, ncap));
+ init_rule(rules[i], ast[i].code, tags, ltag, ncap);
}
}
*
* Furthermore, fixed tags are fobidden with generic API because it cannot
* express fixed offsets.
+ *
+ * One special case is pre-orbit tags: tags that correspond to the opening
+ * of capturing group under iteration. We don't need to know the value of
+ * such tags: we only need the last iteration which is captured by the
+ * orbit tag. Pre-orbit tags are used for disambiguation only (they have
+ * higher priority than orbit and closing tags). So we make pre-orbit tags
+ * fixed on orbit tags with zero offset: this has no affect on disambiguation,
+ * but this way pre-orbit tags will always have the same value as their orbit
+ * tags (even if uninitialized, because of the zero offset) and we'll reduce
+ * the amount of tag variables.
*/
static void find_fixed_tags(RE *re, std::vector<Tag> &tags,
dist = Tag::VARDIST;
break;
case RE::TAG: {
+ // see note [fixed and variable tags]
Tag &tag = tags[re->tag.idx];
if (toplevel && dist != Tag::VARDIST) {
tag.base = base;
tag.dist = dist;
- } else {
- if (toplevel) {
- base = re->tag.idx;
- dist = 0;
- }
+ } else if (preorbit(tags, re->tag.idx)) {
+ tag.base = re->tag.idx + 2;
+ tag.dist = 0;
+ } else if (toplevel) {
+ base = re->tag.idx;
+ dist = 0;
}
if (trailing(tag)) dist = 0;
break;
opts->encoding.nCodeUnits()));
}
+bool need_wrap(const RegExp *re)
+{
+ switch (re->type) {
+ case RegExp::ITER:
+ case RegExp::NIL:
+ case RegExp::SYM:
+ case RegExp::TAG:
+ case RegExp::CAP:
+ return false;
+ case RegExp::ALT:
+ case RegExp::CAT:
+ case RegExp::REF:
+ default:
+ return true;
+ }
+}
+
} // namespace re2c
static free_list<RegExp*> flist;
static const uint32_t MANY;
- enum type_t {NIL, SYM, ALT, CAT, ITER, TAG} type;
+ enum type_t {NIL, SYM, ALT, CAT, ITER, TAG, CAP, REF} type;
union
{
const Range *sym;
uint32_t max;
} iter;
const std::string *tag;
+ const RegExp *cap;
+ struct
+ {
+ const RegExp *re;
+ const std::string *name;
+ } ref;
};
static const RegExp *make_nil()
re->tag = t;
return re;
}
+ static const RegExp *make_cap(const RegExp *r)
+ {
+ RegExp *re = new RegExp(CAP);
+ re->cap = r;
+ return re;
+ }
+ static const RegExp *make_ref(const RegExp *r, const std::string &n)
+ {
+ RegExp *re = new RegExp(REF);
+ re->ref.re = r;
+ re->ref.name = new std::string(n);
+ return re;
+ }
inline ~RegExp()
{
flist.erase(this);
if (type == TAG) {
delete tag;
+ } else if (type == REF) {
+ delete ref.name;
}
}
const RegExp *mkAlt(const RegExp *re1, const RegExp *re2);
const RegExp *doAlt(const RegExp *re1, const RegExp *re2);
const RegExp *doCat(const RegExp *re1, const RegExp *re2);
+bool need_wrap(const RegExp *re);
} // end namespace re2c
size_t htag; // next to last
size_t ttag; // trailing context
+ size_t ncap; // number of POSIX captures
+
Rule(): code(NULL), shadow(),
- ltag(0), htag(0), ttag(0) {}
+ ltag(0), htag(0), ttag(0), ncap(0) {}
FORBID_COPY(Rule);
};
#include <limits>
#include <string>
+#include <vector>
#include "src/util/c99_stdint.h"
static const size_t VARDIST;
const std::string *name;
+ size_t ncap;
size_t base;
size_t dist;
+
+ explicit Tag(const std::string *n)
+ : name(n)
+ , ncap(Tag::RIGHTMOST)
+ , base(Tag::RIGHTMOST)
+ , dist(Tag::VARDIST)
+ {}
+ explicit Tag(size_t c)
+ : name(NULL)
+ , ncap(c)
+ , base(Tag::RIGHTMOST)
+ , dist(Tag::VARDIST)
+ {}
};
inline bool fixed(const Tag &tag)
return tag.dist != Tag::VARDIST;
}
+inline bool capture(const Tag &tag)
+{
+ return tag.ncap != Tag::RIGHTMOST;
+}
+
+inline bool orbit(const Tag &tag)
+{
+ return capture(tag) && tag.ncap % 3 == 2;
+}
+
inline bool trailing(const Tag &tag)
{
- return tag.name == NULL;
+ return !capture(tag) && tag.name == NULL;
+}
+
+inline bool preorbit(const std::vector<Tag> &tags, size_t idx)
+{
+ const size_t ncap = tags[idx].ncap;
+ return ncap % 3 == 0
+ && idx + 2 < tags.size()
+ && tags[idx + 2].ncap == ncap + 2;
}
} // namespace re2c
"flags:" ("r" | "reusable") { opts.set_rFlag(lex_conf_bool()); return; }
"flags:" ("s" | "nested-ifs") { opts.set_sFlag(lex_conf_bool()); return; }
"flags:" ("T" | "tags") { opts.set_tags(lex_conf_bool()); return; }
+ "flags:" ("posix-captures") { opts.set_posix_captures(lex_conf_bool()); return; }
"flags:no-generation-date" { opts.set_bNoGenerationDate(lex_conf_bool()); return; }
"flags:no-version" { opts.set_version(!lex_conf_bool()); return; }
"flags:case-insensitive" { opts.set_bCaseInsensitive(lex_conf_bool()); return; }
%type <op> close closes
%type <extop> TOKEN_CLOSESIZE
%type <code> TOKEN_CODE ccode
-%type <regexp> TOKEN_REGEXP trailexpr rule expr diff term factor primary
+%type <regexp> TOKEN_REGEXP trailexpr capexpr rule expr diff term factor primary
%type <str> TOKEN_ID TOKEN_FID name
%type <clist> conds clist
};
trailexpr
- : expr
- | expr '/' expr {
+ : capexpr
+ | capexpr '/' expr {
$$ = RegExp::make_cat($1, RegExp::make_cat(RegExp::make_tag(NULL), $3));
};
+capexpr
+ : expr {
+ if (context.input.opts->posix_captures) {
+ $1 = RegExp::make_cap($1);
+ }
+ $$ = $1;
+ };
+
expr:
diff
{
| '?' { $$ = '?'; }
;
-primary:
- TOKEN_ID
- {
- symtab_t::iterator i = context.symtab.find(*$1);
- delete $1;
- if (i == context.symtab.end()) {
- context.input.fatal("can't find symbol");
- }
- $$ = i->second;
+primary
+ : TOKEN_REGEXP
+ | TOKEN_ID {
+ symtab_t::iterator i = context.symtab.find(*$1);
+ if (i == context.symtab.end()) {
+ context.input.fatal("can't find symbol");
}
- | TOKEN_REGEXP
- {
- $$ = $1;
+ $$ = i->second;
+ if (context.input.opts->posix_captures && need_wrap($$)) {
+ $$ = RegExp::make_ref($$, *$1);
}
- | '(' expr ')'
- {
- $$ = $2;
+ delete $1;
+ } | '(' expr ')' {
+ $$ = $2;
+ if (context.input.opts->posix_captures) {
+ $$ = RegExp::make_cap($$);
}
-;
+ };
%%