]> granicus.if.org Git - re2c/commitdiff
Added option --verbose that prints a message to stderr in case of success.
authorUlya Trofimovich <skvadrik@gmail.com>
Wed, 13 Feb 2019 15:27:55 +0000 (15:27 +0000)
committerUlya Trofimovich <skvadrik@gmail.com>
Wed, 13 Feb 2019 15:27:55 +0000 (15:27 +0000)
re2c/bootstrap/src/options/parse_opts.cc
re2c/src/main.cc
re2c/src/options/opt.h
re2c/src/options/parse_opts.re
re2c/test/messages/msg_12.i--verbose.c [new file with mode: 0644]
re2c/test/messages/msg_12.i--verbose.re [new file with mode: 0644]

index 04b8a1434413b4fc56b53cd2e244d01aa273d3da..081e68a81539f55a7e3cbe280015f5863e811165 100644 (file)
@@ -1,4 +1,4 @@
-/* Generated by re2c 1.1.1 on Wed Feb 13 14:27:39 2019 */
+/* Generated by re2c 1.1.1 on Wed Feb 13 15:25:28 2019 */
 #line 1 "../src/options/parse_opts.re"
 #include "src/codegen/input_api.h"
 #include "src/options/opt.h"
@@ -1463,1537 +1463,1563 @@ yy340:
        goto yy284;
 yy341:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'n') goto yy377;
-       if (yych == 's') goto yy378;
-       goto yy284;
+       if (yych <= 'm') {
+               if (yych == 'b') goto yy377;
+               goto yy284;
+       } else {
+               if (yych <= 'n') goto yy378;
+               if (yych == 's') goto yy379;
+               goto yy284;
+       }
 yy342:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'e') goto yy379;
+       if (yych == 'e') goto yy380;
        goto yy284;
 yy343:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'v') goto yy380;
+       if (yych == 'v') goto yy381;
        goto yy284;
 yy344:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == '-') goto yy381;
+       if (yych == '-') goto yy382;
        goto yy284;
 yy345:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'u') goto yy382;
+       if (yych == 'u') goto yy383;
        goto yy284;
 yy346:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'i') goto yy383;
+       if (yych == 'i') goto yy384;
        goto yy284;
 yy347:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'g') goto yy384;
+       if (yych == 'g') goto yy385;
        goto yy284;
 yy348:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'm') goto yy385;
+       if (yych == 'm') goto yy386;
        goto yy284;
 yy349:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == '-') goto yy386;
+       if (yych == '-') goto yy387;
        goto yy284;
 yy350:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'r') goto yy387;
+       if (yych == 'r') goto yy388;
        goto yy284;
 yy351:
        ++YYCURSOR;
-#line 159 "../src/options/parse_opts.re"
+#line 160 "../src/options/parse_opts.re"
        { opts.set_encoding(Enc::EBCDIC);    goto opt; }
-#line 1510 "src/options/parse_opts.cc"
+#line 1515 "src/options/parse_opts.cc"
 yy353:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == '-') goto yy388;
+       if (yych == '-') goto yy389;
        goto yy284;
 yy354:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'y') goto yy389;
+       if (yych == 'y') goto yy390;
        goto yy284;
 yy355:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'd') goto yy390;
+       if (yych == 'd') goto yy391;
        goto yy284;
 yy356:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == '-') goto yy391;
+       if (yych == '-') goto yy392;
        goto yy284;
 yy357:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy392;
+       if (yych <= 0x00) goto yy393;
        goto yy284;
 yy358:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 't') goto yy394;
+       if (yych == 't') goto yy395;
        goto yy284;
 yy359:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 't') goto yy395;
+       if (yych == 't') goto yy396;
        goto yy284;
 yy360:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'e') goto yy396;
+       if (yych == 'e') goto yy397;
        goto yy284;
 yy361:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'e') goto yy397;
+       if (yych == 'e') goto yy398;
        goto yy284;
 yy362:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'e') goto yy398;
+       if (yych == 'e') goto yy399;
        goto yy284;
 yy363:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'o') goto yy399;
+       if (yych == 'o') goto yy400;
        goto yy284;
 yy364:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'p') goto yy400;
+       if (yych == 'p') goto yy401;
        goto yy284;
 yy365:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'e') goto yy401;
+       if (yych == 'e') goto yy402;
        goto yy284;
 yy366:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'u') goto yy402;
+       if (yych == 'u') goto yy403;
        goto yy284;
 yy367:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'x') goto yy403;
+       if (yych == 'x') goto yy404;
        goto yy284;
 yy368:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'a') goto yy404;
+       if (yych == 'a') goto yy405;
        goto yy284;
 yy369:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'l') goto yy405;
+       if (yych == 'l') goto yy406;
        goto yy284;
 yy370:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'e') goto yy406;
+       if (yych == 'e') goto yy407;
        goto yy284;
 yy371:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 't') goto yy407;
+       if (yych == 't') goto yy408;
        goto yy284;
 yy372:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'a') goto yy408;
+       if (yych == 'a') goto yy409;
        goto yy284;
 yy373:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy409;
+       if (yych <= 0x00) goto yy410;
        goto yy284;
 yy374:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == '-') goto yy411;
+       if (yych == '-') goto yy412;
        goto yy284;
 yy375:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'o') goto yy412;
+       if (yych == 'o') goto yy413;
        goto yy284;
 yy376:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == '1') goto yy413;
-       if (yych == '8') goto yy414;
+       if (yych == '1') goto yy414;
+       if (yych == '8') goto yy415;
        goto yy284;
 yy377:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'u') goto yy415;
+       if (yych == 'o') goto yy416;
        goto yy284;
 yy378:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'i') goto yy416;
+       if (yych == 'u') goto yy417;
        goto yy284;
 yy379:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == '-') goto yy417;
+       if (yych == 'i') goto yy418;
        goto yy284;
 yy380:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'e') goto yy418;
+       if (yych == '-') goto yy419;
        goto yy284;
 yy381:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'i') goto yy419;
+       if (yych == 'e') goto yy420;
        goto yy284;
 yy382:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 't') goto yy420;
+       if (yych == 'i') goto yy421;
        goto yy284;
 yy383:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 't') goto yy421;
+       if (yych == 't') goto yy422;
        goto yy284;
 yy384:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == '-') goto yy422;
+       if (yych == 't') goto yy423;
        goto yy284;
 yy385:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'i') goto yy423;
+       if (yych == '-') goto yy424;
        goto yy284;
 yy386:
+       yych = (YYCTYPE)*++YYCURSOR;
+       if (yych == 'i') goto yy425;
+       goto yy284;
+yy387:
        yych = (YYCTYPE)*++YYCURSOR;
        switch (yych) {
-       case 'a':       goto yy424;
-       case 'c':       goto yy425;
-       case 'd':       goto yy426;
-       case 'i':       goto yy427;
-       case 'n':       goto yy428;
+       case 'a':       goto yy426;
+       case 'c':       goto yy427;
+       case 'd':       goto yy428;
+       case 'i':       goto yy429;
+       case 'n':       goto yy430;
        default:        goto yy284;
        }
-yy387:
-       yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == '-') goto yy429;
-       goto yy284;
 yy388:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'd') goto yy430;
+       if (yych == '-') goto yy431;
        goto yy284;
 yy389:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == '-') goto yy431;
+       if (yych == 'd') goto yy432;
        goto yy284;
 yy390:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'i') goto yy432;
+       if (yych == '-') goto yy433;
        goto yy284;
 yy391:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 's') goto yy433;
+       if (yych == 'i') goto yy434;
        goto yy284;
 yy392:
+       yych = (YYCTYPE)*++YYCURSOR;
+       if (yych == 's') goto yy435;
+       goto yy284;
+yy393:
        ++YYCURSOR;
 #line 138 "../src/options/parse_opts.re"
        { usage ();   return EXIT_OK; }
-#line 1678 "src/options/parse_opts.cc"
-yy394:
-       yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy434;
-       goto yy284;
+#line 1687 "src/options/parse_opts.cc"
 yy395:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'i') goto yy436;
+       if (yych <= 0x00) goto yy436;
        goto yy284;
 yy396:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'd') goto yy437;
+       if (yych == 'i') goto yy438;
        goto yy284;
 yy397:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'b') goto yy438;
+       if (yych == 'd') goto yy439;
        goto yy284;
 yy398:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'n') goto yy439;
+       if (yych == 'b') goto yy440;
        goto yy284;
 yy399:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'o') goto yy440;
+       if (yych == 'n') goto yy441;
        goto yy284;
 yy400:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 't') goto yy441;
+       if (yych == 'o') goto yy442;
        goto yy284;
 yy401:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'r') goto yy442;
+       if (yych == 't') goto yy443;
        goto yy284;
 yy402:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 't') goto yy443;
+       if (yych == 'r') goto yy444;
        goto yy284;
 yy403:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == '-') goto yy444;
+       if (yych == 't') goto yy445;
        goto yy284;
 yy404:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'b') goto yy445;
+       if (yych == '-') goto yy446;
        goto yy284;
 yy405:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'e') goto yy446;
+       if (yych == 'b') goto yy447;
        goto yy284;
 yy406:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 't') goto yy447;
+       if (yych == 'e') goto yy448;
        goto yy284;
 yy407:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == '-') goto yy448;
+       if (yych == 't') goto yy449;
        goto yy284;
 yy408:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'b') goto yy449;
+       if (yych == '-') goto yy450;
        goto yy284;
 yy409:
-       ++YYCURSOR;
-#line 158 "../src/options/parse_opts.re"
-       { opts.set_tags (true);              goto opt; }
-#line 1743 "src/options/parse_opts.cc"
-yy411:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'h') goto yy450;
+       if (yych == 'b') goto yy451;
        goto yy284;
+yy410:
+       ++YYCURSOR;
+#line 159 "../src/options/parse_opts.re"
+       { opts.set_tags (true);              goto opt; }
+#line 1752 "src/options/parse_opts.cc"
 yy412:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'd') goto yy451;
+       if (yych == 'h') goto yy452;
        goto yy284;
 yy413:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == '6') goto yy452;
+       if (yych == 'd') goto yy453;
        goto yy284;
 yy414:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy453;
+       if (yych == '6') goto yy454;
        goto yy284;
 yy415:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'm') goto yy455;
+       if (yych <= 0x00) goto yy455;
        goto yy284;
 yy416:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'o') goto yy456;
+       if (yych == 's') goto yy457;
        goto yy284;
 yy417:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'c') goto yy457;
+       if (yych == 'm') goto yy458;
        goto yy284;
 yy418:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'c') goto yy458;
+       if (yych == 'o') goto yy459;
        goto yy284;
 yy419:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'n') goto yy459;
+       if (yych == 'c') goto yy460;
        goto yy284;
 yy420:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'e') goto yy460;
+       if (yych == 'c') goto yy461;
        goto yy284;
 yy421:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'i') goto yy461;
+       if (yych == 'n') goto yy462;
        goto yy284;
 yy422:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'o') goto yy462;
+       if (yych == 'e') goto yy463;
        goto yy284;
 yy423:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'n') goto yy463;
+       if (yych == 'i') goto yy464;
        goto yy284;
 yy424:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'd') goto yy464;
+       if (yych == 'o') goto yy465;
        goto yy284;
 yy425:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'f') goto yy465;
-       if (yych == 'l') goto yy466;
+       if (yych == 'n') goto yy466;
        goto yy284;
 yy426:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'f') goto yy467;
+       if (yych == 'd') goto yy467;
        goto yy284;
 yy427:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'n') goto yy468;
+       if (yych == 'f') goto yy468;
+       if (yych == 'l') goto yy469;
        goto yy284;
 yy428:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'f') goto yy469;
+       if (yych == 'f') goto yy470;
        goto yy284;
 yy429:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 's') goto yy470;
+       if (yych == 'n') goto yy471;
        goto yy284;
 yy430:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'o') goto yy471;
+       if (yych == 'f') goto yy472;
        goto yy284;
 yy431:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'c') goto yy472;
+       if (yych == 's') goto yy473;
        goto yy284;
 yy432:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'n') goto yy473;
+       if (yych == 'o') goto yy474;
        goto yy284;
 yy433:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'y') goto yy474;
+       if (yych == 'c') goto yy475;
        goto yy284;
 yy434:
-       ++YYCURSOR;
-#line 174 "../src/options/parse_opts.re"
-       { NEXT_ARG("--input",            opt_input); }
-#line 1841 "src/options/parse_opts.cc"
-yy436:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'o') goto yy475;
+       if (yych == 'n') goto yy476;
        goto yy284;
-yy437:
+yy435:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == '-') goto yy476;
+       if (yych == 'y') goto yy477;
        goto yy284;
+yy436:
+       ++YYCURSOR;
+#line 175 "../src/options/parse_opts.re"
+       { NEXT_ARG("--input",            opt_input); }
+#line 1854 "src/options/parse_opts.cc"
 yy438:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'u') goto yy477;
+       if (yych == 'o') goto yy478;
        goto yy284;
 yy439:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'e') goto yy478;
+       if (yych == '-') goto yy479;
        goto yy284;
 yy440:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'k') goto yy479;
+       if (yych == 'u') goto yy480;
        goto yy284;
 yy441:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'i') goto yy480;
+       if (yych == 'e') goto yy481;
        goto yy284;
 yy442:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 's') goto yy481;
+       if (yych == 'k') goto yy482;
        goto yy284;
 yy443:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy482;
+       if (yych == 'i') goto yy483;
        goto yy284;
 yy444:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'c') goto yy484;
+       if (yych == 's') goto yy484;
        goto yy284;
 yy445:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'l') goto yy485;
+       if (yych <= 0x00) goto yy485;
        goto yy284;
 yy446:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == '-') goto yy486;
+       if (yych == 'c') goto yy487;
        goto yy284;
 yy447:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'o') goto yy487;
+       if (yych == 'l') goto yy488;
        goto yy284;
 yy448:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'c') goto yy488;
+       if (yych == '-') goto yy489;
        goto yy284;
 yy449:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'l') goto yy489;
+       if (yych == 'o') goto yy490;
        goto yy284;
 yy450:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'e') goto yy490;
+       if (yych == 'c') goto yy491;
        goto yy284;
 yy451:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'e') goto yy491;
+       if (yych == 'l') goto yy492;
        goto yy284;
 yy452:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy492;
+       if (yych == 'e') goto yy493;
        goto yy284;
 yy453:
-       ++YYCURSOR;
-#line 163 "../src/options/parse_opts.re"
-       { opts.set_encoding(Enc::UTF8);      goto opt; }
-#line 1914 "src/options/parse_opts.cc"
-yy455:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy494;
+       if (yych == 'e') goto yy494;
        goto yy284;
-yy456:
+yy454:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'n') goto yy496;
+       if (yych <= 0x00) goto yy495;
        goto yy284;
+yy455:
+       ++YYCURSOR;
+#line 164 "../src/options/parse_opts.re"
+       { opts.set_encoding(Enc::UTF8);      goto opt; }
+#line 1927 "src/options/parse_opts.cc"
 yy457:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'h') goto yy497;
+       if (yych == 'e') goto yy497;
        goto yy284;
 yy458:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 't') goto yy498;
+       if (yych <= 0x00) goto yy498;
        goto yy284;
 yy459:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 's') goto yy499;
-       if (yych == 'v') goto yy500;
+       if (yych == 'n') goto yy500;
        goto yy284;
 yy460:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'd') goto yy501;
+       if (yych == 'h') goto yy501;
        goto yy284;
 yy461:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'o') goto yy502;
+       if (yych == 't') goto yy502;
        goto yy284;
 yy462:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'u') goto yy503;
+       if (yych == 's') goto yy503;
+       if (yych == 'v') goto yy504;
        goto yy284;
 yy463:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'i') goto yy504;
+       if (yych == 'd') goto yy505;
        goto yy284;
 yy464:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'f') goto yy505;
+       if (yych == 'o') goto yy506;
        goto yy284;
 yy465:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'g') goto yy506;
+       if (yych == 'u') goto yy507;
        goto yy284;
 yy466:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'o') goto yy507;
+       if (yych == 'i') goto yy508;
        goto yy284;
 yy467:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'a') goto yy508;
+       if (yych == 'f') goto yy509;
        goto yy284;
 yy468:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 't') goto yy509;
+       if (yych == 'g') goto yy510;
        goto yy284;
 yy469:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'a') goto yy510;
+       if (yych == 'o') goto yy511;
        goto yy284;
 yy470:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'k') goto yy511;
+       if (yych == 'a') goto yy512;
        goto yy284;
 yy471:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 't') goto yy512;
+       if (yych == 't') goto yy513;
        goto yy284;
 yy472:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'l') goto yy513;
+       if (yych == 'a') goto yy514;
        goto yy284;
 yy473:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'g') goto yy514;
+       if (yych == 'k') goto yy515;
        goto yy284;
 yy474:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'n') goto yy515;
+       if (yych == 't') goto yy516;
        goto yy284;
 yy475:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'n') goto yy516;
+       if (yych == 'l') goto yy517;
        goto yy284;
 yy476:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'i') goto yy517;
+       if (yych == 'g') goto yy518;
        goto yy284;
 yy477:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'g') goto yy518;
+       if (yych == 'n') goto yy519;
        goto yy284;
 yy478:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'r') goto yy519;
+       if (yych == 'n') goto yy520;
        goto yy284;
 yy479:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'a') goto yy520;
+       if (yych == 'i') goto yy521;
        goto yy284;
 yy480:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'm') goto yy521;
+       if (yych == 'g') goto yy522;
        goto yy284;
 yy481:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'i') goto yy522;
+       if (yych == 'r') goto yy523;
        goto yy284;
 yy482:
-       ++YYCURSOR;
-#line 171 "../src/options/parse_opts.re"
-       { NEXT_ARG("-o, --output",       opt_output); }
-#line 2028 "src/options/parse_opts.cc"
-yy484:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'a') goto yy523;
-       if (yych == 'l') goto yy524;
+       if (yych == 'a') goto yy524;
        goto yy284;
-yy485:
+yy483:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'e') goto yy525;
+       if (yych == 'm') goto yy525;
        goto yy284;
-yy486:
+yy484:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'p') goto yy526;
+       if (yych == 'i') goto yy526;
        goto yy284;
+yy485:
+       ++YYCURSOR;
+#line 172 "../src/options/parse_opts.re"
+       { NEXT_ARG("-o, --output",       opt_output); }
+#line 2045 "src/options/parse_opts.cc"
 yy487:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'n') goto yy527;
+       if (yych == 'a') goto yy527;
+       if (yych == 'l') goto yy528;
        goto yy284;
 yy488:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'o') goto yy528;
+       if (yych == 'e') goto yy529;
        goto yy284;
 yy489:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'e') goto yy529;
+       if (yych == 'p') goto yy530;
        goto yy284;
 yy490:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'a') goto yy530;
+       if (yych == 'n') goto yy531;
        goto yy284;
 yy491:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy531;
+       if (yych == 'o') goto yy532;
        goto yy284;
 yy492:
-       ++YYCURSOR;
-#line 162 "../src/options/parse_opts.re"
-       { opts.set_encoding(Enc::UTF16);     goto opt; }
-#line 2066 "src/options/parse_opts.cc"
-yy494:
-       ++YYCURSOR;
-#line 140 "../src/options/parse_opts.re"
-       { vernum ();  return EXIT_OK; }
-#line 2071 "src/options/parse_opts.cc"
-yy496:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy533;
+       if (yych == 'e') goto yy533;
        goto yy284;
-yy497:
+yy493:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'a') goto yy535;
+       if (yych == 'a') goto yy534;
        goto yy284;
-yy498:
+yy494:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'o') goto yy536;
+       if (yych <= 0x00) goto yy535;
        goto yy284;
-yy499:
+yy495:
+       ++YYCURSOR;
+#line 163 "../src/options/parse_opts.re"
+       { opts.set_encoding(Enc::UTF16);     goto opt; }
+#line 2083 "src/options/parse_opts.cc"
+yy497:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'e') goto yy537;
+       if (yych <= 0x00) goto yy537;
        goto yy284;
+yy498:
+       ++YYCURSOR;
+#line 140 "../src/options/parse_opts.re"
+       { vernum ();  return EXIT_OK; }
+#line 2092 "src/options/parse_opts.cc"
 yy500:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'e') goto yy538;
+       if (yych <= 0x00) goto yy539;
        goto yy284;
 yy501:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == '-') goto yy539;
+       if (yych == 'a') goto yy541;
        goto yy284;
 yy502:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'n') goto yy540;
+       if (yych == 'o') goto yy542;
        goto yy284;
 yy503:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 't') goto yy541;
+       if (yych == 'e') goto yy543;
        goto yy284;
 yy504:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'm') goto yy542;
+       if (yych == 'e') goto yy544;
        goto yy284;
 yy505:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'a') goto yy543;
+       if (yych == '-') goto yy545;
        goto yy284;
 yy506:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy544;
+       if (yych == 'n') goto yy546;
        goto yy284;
 yy507:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 's') goto yy546;
+       if (yych == 't') goto yy547;
        goto yy284;
 yy508:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == '-') goto yy547;
+       if (yych == 'm') goto yy548;
        goto yy284;
 yy509:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'e') goto yy548;
+       if (yych == 'a') goto yy549;
        goto yy284;
 yy510:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy549;
+       if (yych <= 0x00) goto yy550;
        goto yy284;
 yy511:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'i') goto yy551;
+       if (yych == 's') goto yy552;
        goto yy284;
 yy512:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy552;
+       if (yych == '-') goto yy553;
        goto yy284;
 yy513:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'a') goto yy554;
+       if (yych == 'e') goto yy554;
        goto yy284;
 yy514:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == '-') goto yy555;
+       if (yych <= 0x00) goto yy555;
        goto yy284;
 yy515:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 't') goto yy556;
+       if (yych == 'i') goto yy557;
        goto yy284;
 yy516:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == '-') goto yy557;
+       if (yych <= 0x00) goto yy558;
        goto yy284;
 yy517:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'f') goto yy558;
+       if (yych == 'a') goto yy560;
        goto yy284;
 yy518:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == '-') goto yy559;
+       if (yych == '-') goto yy561;
        goto yy284;
 yy519:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'a') goto yy560;
+       if (yych == 't') goto yy562;
        goto yy284;
 yy520:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'h') goto yy561;
+       if (yych == '-') goto yy563;
        goto yy284;
 yy521:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'i') goto yy562;
+       if (yych == 'f') goto yy564;
        goto yy284;
 yy522:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'o') goto yy563;
+       if (yych == '-') goto yy565;
        goto yy284;
 yy523:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'p') goto yy564;
+       if (yych == 'a') goto yy566;
        goto yy284;
 yy524:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'o') goto yy565;
+       if (yych == 'h') goto yy567;
        goto yy284;
 yy525:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy566;
+       if (yych == 'i') goto yy568;
        goto yy284;
 yy526:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'a') goto yy568;
+       if (yych == 'o') goto yy569;
        goto yy284;
 yy527:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy569;
+       if (yych == 'p') goto yy570;
        goto yy284;
 yy528:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'n') goto yy315;
+       if (yych == 'o') goto yy571;
        goto yy284;
 yy529:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == '-') goto yy571;
+       if (yych <= 0x00) goto yy572;
        goto yy284;
 yy530:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'd') goto yy572;
+       if (yych == 'a') goto yy574;
        goto yy284;
 yy531:
-       ++YYCURSOR;
-#line 160 "../src/options/parse_opts.re"
-       { opts.set_encoding(Enc::UTF32);     goto opt; }
-#line 2216 "src/options/parse_opts.cc"
-yy533:
-       ++YYCURSOR;
-#line 139 "../src/options/parse_opts.re"
-       { version (); return EXIT_OK; }
-#line 2221 "src/options/parse_opts.cc"
-yy535:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'r') goto yy573;
+       if (yych <= 0x00) goto yy575;
        goto yy284;
-yy536:
+yy532:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'r') goto yy574;
+       if (yych == 'n') goto yy315;
        goto yy284;
-yy537:
+yy533:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'n') goto yy575;
+       if (yych == '-') goto yy577;
        goto yy284;
-yy538:
+yy534:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'r') goto yy576;
+       if (yych == 'd') goto yy578;
        goto yy284;
+yy535:
+       ++YYCURSOR;
+#line 161 "../src/options/parse_opts.re"
+       { opts.set_encoding(Enc::UTF32);     goto opt; }
+#line 2237 "src/options/parse_opts.cc"
+yy537:
+       ++YYCURSOR;
+#line 147 "../src/options/parse_opts.re"
+       { globopts.verbose = true;           goto opt; }
+#line 2242 "src/options/parse_opts.cc"
 yy539:
-       yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'g') goto yy577;
-       goto yy284;
-yy540:
-       yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 's') goto yy578;
-       goto yy284;
+       ++YYCURSOR;
+#line 139 "../src/options/parse_opts.re"
+       { version (); return EXIT_OK; }
+#line 2247 "src/options/parse_opts.cc"
 yy541:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'p') goto yy579;
+       if (yych == 'r') goto yy579;
        goto yy284;
 yy542:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'i') goto yy580;
+       if (yych == 'r') goto yy580;
        goto yy284;
 yy543:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy581;
+       if (yych == 'n') goto yy581;
        goto yy284;
 yy544:
-       ++YYCURSOR;
-#line 194 "../src/options/parse_opts.re"
-       { globopts.dump_cfg = true;           goto opt; }
-#line 2262 "src/options/parse_opts.cc"
+       yych = (YYCTYPE)*++YYCURSOR;
+       if (yych == 'r') goto yy582;
+       goto yy284;
+yy545:
+       yych = (YYCTYPE)*++YYCURSOR;
+       if (yych == 'g') goto yy583;
+       goto yy284;
 yy546:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'u') goto yy583;
+       if (yych == 's') goto yy584;
        goto yy284;
 yy547:
        yych = (YYCTYPE)*++YYCURSOR;
-       switch (yych) {
-       case 'd':       goto yy584;
-       case 'm':       goto yy585;
-       case 'r':       goto yy586;
-       case 't':       goto yy587;
-       default:        goto yy284;
-       }
+       if (yych == 'p') goto yy585;
+       goto yy284;
 yy548:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'r') goto yy588;
+       if (yych == 'i') goto yy586;
        goto yy284;
 yy549:
-       ++YYCURSOR;
-#line 188 "../src/options/parse_opts.re"
-       { globopts.dump_nfa = true;           goto opt; }
-#line 2284 "src/options/parse_opts.cc"
-yy551:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'p') goto yy589;
+       if (yych <= 0x00) goto yy587;
        goto yy284;
-yy552:
+yy550:
        ++YYCURSOR;
-#line 143 "../src/options/parse_opts.re"
-       { globopts.target = TARGET_DOT;      goto opt; }
-#line 2293 "src/options/parse_opts.cc"
-yy554:
+#line 195 "../src/options/parse_opts.re"
+       { globopts.dump_cfg = true;           goto opt; }
+#line 2288 "src/options/parse_opts.cc"
+yy552:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 's') goto yy590;
+       if (yych == 'u') goto yy589;
        goto yy284;
-yy555:
+yy553:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'p') goto yy591;
-       goto yy284;
-yy556:
+       switch (yych) {
+       case 'd':       goto yy590;
+       case 'm':       goto yy591;
+       case 'r':       goto yy592;
+       case 't':       goto yy593;
+       default:        goto yy284;
+       }
+yy554:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'a') goto yy592;
+       if (yych == 'r') goto yy594;
        goto yy284;
+yy555:
+       ++YYCURSOR;
+#line 189 "../src/options/parse_opts.re"
+       { globopts.dump_nfa = true;           goto opt; }
+#line 2310 "src/options/parse_opts.cc"
 yy557:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'f') goto yy593;
+       if (yych == 'p') goto yy595;
        goto yy284;
 yy558:
-       yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 's') goto yy594;
-       goto yy284;
-yy559:
-       yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'i') goto yy595;
-       goto yy284;
+       ++YYCURSOR;
+#line 143 "../src/options/parse_opts.re"
+       { globopts.target = TARGET_DOT;      goto opt; }
+#line 2319 "src/options/parse_opts.cc"
 yy560:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 't') goto yy596;
+       if (yych == 's') goto yy596;
        goto yy284;
 yy561:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'e') goto yy597;
+       if (yych == 'p') goto yy597;
        goto yy284;
 yy562:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'z') goto yy598;
+       if (yych == 'a') goto yy598;
        goto yy284;
 yy563:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'n') goto yy599;
+       if (yych == 'f') goto yy599;
        goto yy284;
 yy564:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 't') goto yy600;
+       if (yych == 's') goto yy600;
        goto yy284;
 yy565:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 's') goto yy601;
+       if (yych == 'i') goto yy601;
        goto yy284;
 yy566:
-       ++YYCURSOR;
-#line 146 "../src/options/parse_opts.re"
-       { globopts.rFlag = true;             goto opt; }
-#line 2346 "src/options/parse_opts.cc"
-yy568:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 's') goto yy602;
+       if (yych == 't') goto yy602;
        goto yy284;
-yy569:
-       ++YYCURSOR;
-#line 149 "../src/options/parse_opts.re"
-       { globopts.target = TARGET_SKELETON; goto opt; }
-#line 2355 "src/options/parse_opts.cc"
-yy571:
+yy567:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 's') goto yy603;
+       if (yych == 'e') goto yy603;
        goto yy284;
-yy572:
+yy568:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'e') goto yy604;
+       if (yych == 'z') goto yy604;
        goto yy284;
-yy573:
+yy569:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 's') goto yy605;
+       if (yych == 'n') goto yy605;
        goto yy284;
-yy574:
+yy570:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 's') goto yy606;
+       if (yych == 't') goto yy606;
        goto yy284;
-yy575:
+yy571:
        yych = (YYCTYPE)*++YYCURSOR;
        if (yych == 's') goto yy607;
        goto yy284;
-yy576:
+yy572:
+       ++YYCURSOR;
+#line 146 "../src/options/parse_opts.re"
+       { globopts.rFlag = true;             goto opt; }
+#line 2372 "src/options/parse_opts.cc"
+yy574:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 't') goto yy608;
+       if (yych == 's') goto yy608;
        goto yy284;
+yy575:
+       ++YYCURSOR;
+#line 150 "../src/options/parse_opts.re"
+       { globopts.target = TARGET_SKELETON; goto opt; }
+#line 2381 "src/options/parse_opts.cc"
 yy577:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'o') goto yy609;
+       if (yych == 's') goto yy609;
        goto yy284;
 yy578:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy610;
+       if (yych == 'e') goto yy610;
        goto yy284;
 yy579:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'u') goto yy612;
+       if (yych == 's') goto yy611;
        goto yy284;
 yy580:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'z') goto yy613;
+       if (yych == 's') goto yy612;
        goto yy284;
 yy581:
-       ++YYCURSOR;
-#line 193 "../src/options/parse_opts.re"
-       { globopts.dump_adfa = true;          goto opt; }
-#line 2400 "src/options/parse_opts.cc"
+       yych = (YYCTYPE)*++YYCURSOR;
+       if (yych == 's') goto yy613;
+       goto yy284;
+yy582:
+       yych = (YYCTYPE)*++YYCURSOR;
+       if (yych == 't') goto yy614;
+       goto yy284;
 yy583:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'r') goto yy614;
+       if (yych == 'o') goto yy615;
        goto yy284;
 yy584:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'e') goto yy615;
+       if (yych <= 0x00) goto yy616;
        goto yy284;
 yy585:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'i') goto yy616;
+       if (yych == 'u') goto yy618;
        goto yy284;
 yy586:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'a') goto yy617;
+       if (yych == 'z') goto yy619;
        goto yy284;
 yy587:
-       yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'a') goto yy618;
-       goto yy284;
-yy588:
-       yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'f') goto yy619;
-       goto yy284;
+       ++YYCURSOR;
+#line 194 "../src/options/parse_opts.re"
+       { globopts.dump_adfa = true;          goto opt; }
+#line 2426 "src/options/parse_opts.cc"
 yy589:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy620;
+       if (yych == 'r') goto yy620;
        goto yy284;
 yy590:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 's') goto yy622;
+       if (yych == 'e') goto yy621;
        goto yy284;
 yy591:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'o') goto yy623;
+       if (yych == 'i') goto yy622;
        goto yy284;
 yy592:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'x') goto yy624;
+       if (yych == 'a') goto yy623;
        goto yy284;
 yy593:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'o') goto yy625;
+       if (yych == 'a') goto yy624;
        goto yy284;
 yy594:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy626;
+       if (yych == 'f') goto yy625;
        goto yy284;
 yy595:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'n') goto yy628;
+       if (yych <= 0x00) goto yy626;
        goto yy284;
 yy596:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'i') goto yy629;
+       if (yych == 's') goto yy628;
        goto yy284;
 yy597:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'a') goto yy630;
+       if (yych == 'o') goto yy629;
        goto yy284;
 yy598:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'e') goto yy631;
+       if (yych == 'x') goto yy630;
        goto yy284;
 yy599:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy632;
+       if (yych == 'o') goto yy631;
        goto yy284;
 yy600:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'u') goto yy634;
+       if (yych <= 0x00) goto yy632;
        goto yy284;
 yy601:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'u') goto yy635;
+       if (yych == 'n') goto yy634;
        goto yy284;
 yy602:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 's') goto yy636;
+       if (yych == 'i') goto yy635;
        goto yy284;
 yy603:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 't') goto yy637;
+       if (yych == 'a') goto yy636;
        goto yy284;
 yy604:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'r') goto yy638;
+       if (yych == 'e') goto yy637;
        goto yy284;
 yy605:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy639;
+       if (yych <= 0x00) goto yy638;
        goto yy284;
 yy606:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy641;
+       if (yych == 'u') goto yy640;
        goto yy284;
 yy607:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'i') goto yy643;
+       if (yych == 'u') goto yy641;
        goto yy284;
 yy608:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'e') goto yy644;
+       if (yych == 's') goto yy642;
        goto yy284;
 yy609:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 't') goto yy645;
+       if (yych == 't') goto yy643;
        goto yy284;
 yy610:
-       ++YYCURSOR;
-#line 142 "../src/options/parse_opts.re"
-       { globopts.cFlag = true;             goto opt; }
-#line 2513 "src/options/parse_opts.cc"
+       yych = (YYCTYPE)*++YYCURSOR;
+       if (yych == 'r') goto yy644;
+       goto yy284;
+yy611:
+       yych = (YYCTYPE)*++YYCURSOR;
+       if (yych <= 0x00) goto yy645;
+       goto yy284;
 yy612:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 't') goto yy646;
+       if (yych <= 0x00) goto yy647;
        goto yy284;
 yy613:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'a') goto yy647;
+       if (yych == 'i') goto yy649;
        goto yy284;
 yy614:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'e') goto yy648;
+       if (yych == 'e') goto yy650;
        goto yy284;
 yy615:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 't') goto yy649;
+       if (yych == 't') goto yy651;
        goto yy284;
 yy616:
+       ++YYCURSOR;
+#line 142 "../src/options/parse_opts.re"
+       { globopts.cFlag = true;             goto opt; }
+#line 2539 "src/options/parse_opts.cc"
+yy618:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'n') goto yy650;
+       if (yych == 't') goto yy652;
        goto yy284;
-yy617:
+yy619:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'w') goto yy651;
+       if (yych == 'a') goto yy653;
        goto yy284;
-yy618:
+yy620:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'g') goto yy652;
+       if (yych == 'e') goto yy654;
        goto yy284;
-yy619:
+yy621:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy653;
+       if (yych == 't') goto yy655;
        goto yy284;
-yy620:
-       ++YYCURSOR;
-#line 185 "../src/options/parse_opts.re"
-       { globopts.eager_skip = true;     goto opt; }
-#line 2550 "src/options/parse_opts.cc"
 yy622:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy655;
+       if (yych == 'n') goto yy656;
        goto yy284;
 yy623:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'l') goto yy657;
+       if (yych == 'w') goto yy657;
        goto yy284;
 yy624:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy658;
+       if (yych == 'g') goto yy658;
        goto yy284;
 yy625:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'r') goto yy660;
+       if (yych <= 0x00) goto yy659;
        goto yy284;
 yy626:
        ++YYCURSOR;
-#line 155 "../src/options/parse_opts.re"
-       { opts.set_sFlag (true);             goto opt; }
-#line 2571 "src/options/parse_opts.cc"
+#line 186 "../src/options/parse_opts.re"
+       { globopts.eager_skip = true;     goto opt; }
+#line 2576 "src/options/parse_opts.cc"
 yy628:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'f') goto yy661;
+       if (yych <= 0x00) goto yy661;
        goto yy284;
 yy629:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'o') goto yy662;
+       if (yych == 'l') goto yy663;
        goto yy284;
 yy630:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'd') goto yy663;
+       if (yych <= 0x00) goto yy664;
        goto yy284;
 yy631:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == '-') goto yy664;
+       if (yych == 'r') goto yy666;
        goto yy284;
 yy632:
        ++YYCURSOR;
-#line 148 "../src/options/parse_opts.re"
-       { globopts.version = false;          goto opt; }
-#line 2592 "src/options/parse_opts.cc"
+#line 156 "../src/options/parse_opts.re"
+       { opts.set_sFlag (true);             goto opt; }
+#line 2597 "src/options/parse_opts.cc"
 yy634:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'r') goto yy665;
+       if (yych == 'f') goto yy667;
        goto yy284;
 yy635:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'r') goto yy666;
+       if (yych == 'o') goto yy668;
        goto yy284;
 yy636:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy667;
+       if (yych == 'd') goto yy669;
        goto yy284;
 yy637:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'a') goto yy669;
+       if (yych == '-') goto yy670;
        goto yy284;
 yy638:
+       ++YYCURSOR;
+#line 149 "../src/options/parse_opts.re"
+       { globopts.version = false;          goto opt; }
+#line 2618 "src/options/parse_opts.cc"
+yy640:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy670;
+       if (yych == 'r') goto yy671;
        goto yy284;
-yy639:
-       ++YYCURSOR;
-#line 161 "../src/options/parse_opts.re"
-       { opts.set_encoding(Enc::UCS2);      goto opt; }
-#line 2617 "src/options/parse_opts.cc"
 yy641:
-       ++YYCURSOR;
-#line 151 "../src/options/parse_opts.re"
-       { opts.set_bFlag (true);             goto opt; }
-#line 2622 "src/options/parse_opts.cc"
-yy643:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 't') goto yy672;
+       if (yych == 'r') goto yy672;
        goto yy284;
-yy644:
+yy642:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'd') goto yy673;
+       if (yych <= 0x00) goto yy673;
        goto yy284;
-yy645:
+yy643:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'o') goto yy674;
+       if (yych == 'a') goto yy675;
        goto yy284;
-yy646:
+yy644:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy675;
+       if (yych <= 0x00) goto yy676;
        goto yy284;
+yy645:
+       ++YYCURSOR;
+#line 162 "../src/options/parse_opts.re"
+       { opts.set_encoding(Enc::UCS2);      goto opt; }
+#line 2643 "src/options/parse_opts.cc"
 yy647:
-       yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 't') goto yy677;
-       goto yy284;
-yy648:
-       yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == '-') goto yy678;
-       goto yy284;
+       ++YYCURSOR;
+#line 152 "../src/options/parse_opts.re"
+       { opts.set_bFlag (true);             goto opt; }
+#line 2648 "src/options/parse_opts.cc"
 yy649:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy679;
+       if (yych == 't') goto yy678;
        goto yy284;
 yy650:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy681;
+       if (yych == 'd') goto yy679;
        goto yy284;
 yy651:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy683;
+       if (yych == 'o') goto yy680;
        goto yy284;
 yy652:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'o') goto yy685;
+       if (yych <= 0x00) goto yy681;
        goto yy284;
 yy653:
-       ++YYCURSOR;
-#line 195 "../src/options/parse_opts.re"
-       { globopts.dump_interf = true;        goto opt; }
-#line 2667 "src/options/parse_opts.cc"
-yy655:
-       ++YYCURSOR;
-#line 175 "../src/options/parse_opts.re"
-       { NEXT_ARG("--empty-class",      opt_empty_class); }
-#line 2672 "src/options/parse_opts.cc"
-yy657:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'i') goto yy686;
+       if (yych == 't') goto yy683;
        goto yy284;
-yy658:
-       ++YYCURSOR;
-#line 145 "../src/options/parse_opts.re"
-       { globopts.FFlag = true;             goto opt; }
-#line 2681 "src/options/parse_opts.cc"
-yy660:
+yy654:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'm') goto yy687;
+       if (yych == '-') goto yy684;
        goto yy284;
-yy661:
+yy655:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'o') goto yy688;
+       if (yych <= 0x00) goto yy685;
        goto yy284;
-yy662:
+yy656:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'n') goto yy689;
+       if (yych <= 0x00) goto yy687;
        goto yy284;
-yy663:
+yy657:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy690;
+       if (yych <= 0x00) goto yy689;
        goto yy284;
-yy664:
+yy658:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 't') goto yy692;
+       if (yych == 'o') goto yy691;
        goto yy284;
-yy665:
-       yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'e') goto yy693;
+yy659:
+       ++YYCURSOR;
+#line 196 "../src/options/parse_opts.re"
+       { globopts.dump_interf = true;        goto opt; }
+#line 2693 "src/options/parse_opts.cc"
+yy661:
+       ++YYCURSOR;
+#line 176 "../src/options/parse_opts.re"
+       { NEXT_ARG("--empty-class",      opt_empty_class); }
+#line 2698 "src/options/parse_opts.cc"
+yy663:
+       yych = (YYCTYPE)*++YYCURSOR;
+       if (yych == 'i') goto yy692;
        goto yy284;
+yy664:
+       ++YYCURSOR;
+#line 145 "../src/options/parse_opts.re"
+       { globopts.FFlag = true;             goto opt; }
+#line 2707 "src/options/parse_opts.cc"
 yy666:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'e') goto yy694;
+       if (yych == 'm') goto yy693;
        goto yy284;
 yy667:
-       ++YYCURSOR;
-#line 178 "../src/options/parse_opts.re"
-       { goto opt; }
-#line 2714 "src/options/parse_opts.cc"
+       yych = (YYCTYPE)*++YYCURSOR;
+       if (yych == 'o') goto yy694;
+       goto yy284;
+yy668:
+       yych = (YYCTYPE)*++YYCURSOR;
+       if (yych == 'n') goto yy695;
+       goto yy284;
 yy669:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 't') goto yy695;
+       if (yych <= 0x00) goto yy696;
        goto yy284;
 yy670:
-       ++YYCURSOR;
-#line 172 "../src/options/parse_opts.re"
-       { NEXT_ARG("-t, --type-header",  opt_header); }
-#line 2723 "src/options/parse_opts.cc"
-yy672:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'i') goto yy696;
+       if (yych == 't') goto yy698;
        goto yy284;
-yy673:
+yy671:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy697;
+       if (yych == 'e') goto yy699;
        goto yy284;
-yy674:
+yy672:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 's') goto yy699;
+       if (yych == 'e') goto yy700;
        goto yy284;
-yy675:
+yy673:
        ++YYCURSOR;
-#line 152 "../src/options/parse_opts.re"
-       { opts.set_dFlag (true);             goto opt; }
+#line 179 "../src/options/parse_opts.re"
+       { goto opt; }
 #line 2740 "src/options/parse_opts.cc"
-yy677:
+yy675:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'i') goto yy700;
+       if (yych == 't') goto yy701;
        goto yy284;
+yy676:
+       ++YYCURSOR;
+#line 173 "../src/options/parse_opts.re"
+       { NEXT_ARG("-t, --type-header",  opt_header); }
+#line 2749 "src/options/parse_opts.cc"
 yy678:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 's') goto yy701;
+       if (yych == 'i') goto yy702;
        goto yy284;
 yy679:
-       ++YYCURSOR;
-#line 190 "../src/options/parse_opts.re"
-       { globopts.dump_dfa_det = true;       goto opt; }
-#line 2753 "src/options/parse_opts.cc"
-yy681:
-       ++YYCURSOR;
-#line 192 "../src/options/parse_opts.re"
-       { globopts.dump_dfa_min = true;       goto opt; }
-#line 2758 "src/options/parse_opts.cc"
-yy683:
-       ++YYCURSOR;
-#line 189 "../src/options/parse_opts.re"
-       { globopts.dump_dfa_raw = true;       goto opt; }
-#line 2763 "src/options/parse_opts.cc"
-yy685:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'p') goto yy702;
+       if (yych <= 0x00) goto yy703;
        goto yy284;
-yy686:
+yy680:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'c') goto yy703;
+       if (yych == 's') goto yy705;
        goto yy284;
-yy687:
+yy681:
+       ++YYCURSOR;
+#line 153 "../src/options/parse_opts.re"
+       { opts.set_dFlag (true);             goto opt; }
+#line 2766 "src/options/parse_opts.cc"
+yy683:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'a') goto yy704;
+       if (yych == 'i') goto yy706;
        goto yy284;
-yy688:
+yy684:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy705;
+       if (yych == 's') goto yy707;
        goto yy284;
+yy685:
+       ++YYCURSOR;
+#line 191 "../src/options/parse_opts.re"
+       { globopts.dump_dfa_det = true;       goto opt; }
+#line 2779 "src/options/parse_opts.cc"
+yy687:
+       ++YYCURSOR;
+#line 193 "../src/options/parse_opts.re"
+       { globopts.dump_dfa_min = true;       goto opt; }
+#line 2784 "src/options/parse_opts.cc"
 yy689:
+       ++YYCURSOR;
+#line 190 "../src/options/parse_opts.re"
+       { globopts.dump_dfa_raw = true;       goto opt; }
+#line 2789 "src/options/parse_opts.cc"
+yy691:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == '-') goto yy707;
+       if (yych == 'p') goto yy708;
        goto yy284;
-yy690:
-       ++YYCURSOR;
-#line 183 "../src/options/parse_opts.re"
-       { globopts.lookahead = false;     goto opt; }
-#line 2788 "src/options/parse_opts.cc"
 yy692:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'a') goto yy708;
+       if (yych == 'c') goto yy709;
        goto yy284;
 yy693:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 's') goto yy709;
+       if (yych == 'a') goto yy710;
        goto yy284;
 yy694:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy710;
+       if (yych <= 0x00) goto yy711;
        goto yy284;
 yy695:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'e') goto yy712;
+       if (yych == '-') goto yy713;
        goto yy284;
 yy696:
+       ++YYCURSOR;
+#line 184 "../src/options/parse_opts.re"
+       { globopts.lookahead = false;     goto opt; }
+#line 2814 "src/options/parse_opts.cc"
+yy698:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'v') goto yy713;
+       if (yych == 'a') goto yy714;
        goto yy284;
-yy697:
-       ++YYCURSOR;
-#line 157 "../src/options/parse_opts.re"
-       { opts.set_bCaseInverted (true);     goto opt; }
-#line 2813 "src/options/parse_opts.cc"
 yy699:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy714;
+       if (yych == 's') goto yy715;
        goto yy284;
 yy700:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'o') goto yy716;
+       if (yych <= 0x00) goto yy716;
        goto yy284;
 yy701:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 't') goto yy717;
+       if (yych == 'e') goto yy718;
        goto yy284;
 yy702:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 't') goto yy718;
+       if (yych == 'v') goto yy719;
        goto yy284;
 yy703:
+       ++YYCURSOR;
+#line 158 "../src/options/parse_opts.re"
+       { opts.set_bCaseInverted (true);     goto opt; }
+#line 2839 "src/options/parse_opts.cc"
+yy705:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'y') goto yy719;
+       if (yych <= 0x00) goto yy720;
        goto yy284;
-yy704:
+yy706:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 't') goto yy720;
+       if (yych == 'o') goto yy722;
        goto yy284;
-yy705:
-       ++YYCURSOR;
-#line 154 "../src/options/parse_opts.re"
-       { opts.set_iFlag (true);             goto opt; }
-#line 2842 "src/options/parse_opts.cc"
 yy707:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'd') goto yy721;
+       if (yych == 't') goto yy723;
        goto yy284;
 yy708:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'g') goto yy722;
+       if (yych == 't') goto yy724;
        goto yy284;
 yy709:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy723;
+       if (yych == 'y') goto yy725;
        goto yy284;
 yy710:
-       ++YYCURSOR;
-#line 182 "../src/options/parse_opts.re"
-       { NEXT_ARG("--posix-closure",    opt_posix_closure); }
-#line 2859 "src/options/parse_opts.cc"
-yy712:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy725;
+       if (yych == 't') goto yy726;
        goto yy284;
+yy711:
+       ++YYCURSOR;
+#line 155 "../src/options/parse_opts.re"
+       { opts.set_iFlag (true);             goto opt; }
+#line 2868 "src/options/parse_opts.cc"
 yy713:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'e') goto yy727;
+       if (yych == 'd') goto yy727;
        goto yy284;
 yy714:
-       ++YYCURSOR;
-#line 153 "../src/options/parse_opts.re"
-       { opts.set_gFlag (true);             goto opt; }
-#line 2872 "src/options/parse_opts.cc"
-yy716:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'n') goto yy728;
+       if (yych == 'g') goto yy728;
        goto yy284;
-yy717:
+yy715:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'a') goto yy729;
+       if (yych <= 0x00) goto yy729;
        goto yy284;
+yy716:
+       ++YYCURSOR;
+#line 183 "../src/options/parse_opts.re"
+       { NEXT_ARG("--posix-closure",    opt_posix_closure); }
+#line 2885 "src/options/parse_opts.cc"
 yy718:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy730;
+       if (yych <= 0x00) goto yy731;
        goto yy284;
 yy719:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy732;
+       if (yych == 'e') goto yy733;
        goto yy284;
 yy720:
+       ++YYCURSOR;
+#line 154 "../src/options/parse_opts.re"
+       { opts.set_gFlag (true);             goto opt; }
+#line 2898 "src/options/parse_opts.cc"
+yy722:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy734;
+       if (yych == 'n') goto yy734;
        goto yy284;
-yy721:
+yy723:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'a') goto yy736;
+       if (yych == 'a') goto yy735;
        goto yy284;
-yy722:
+yy724:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 's') goto yy737;
+       if (yych <= 0x00) goto yy736;
        goto yy284;
-yy723:
+yy725:
+       yych = (YYCTYPE)*++YYCURSOR;
+       if (yych <= 0x00) goto yy738;
+       goto yy284;
+yy726:
+       yych = (YYCTYPE)*++YYCURSOR;
+       if (yych <= 0x00) goto yy740;
+       goto yy284;
+yy727:
+       yych = (YYCTYPE)*++YYCURSOR;
+       if (yych == 'a') goto yy742;
+       goto yy284;
+yy728:
+       yych = (YYCTYPE)*++YYCURSOR;
+       if (yych == 's') goto yy743;
+       goto yy284;
+yy729:
        ++YYCURSOR;
-#line 165 "../src/options/parse_opts.re"
+#line 166 "../src/options/parse_opts.re"
        {
         opts.set_posix_syntax(true);
         opts.set_posix_semantics(true);
         goto opt;
     }
-#line 2909 "src/options/parse_opts.cc"
-yy725:
+#line 2935 "src/options/parse_opts.cc"
+yy731:
        ++YYCURSOR;
 #line 144 "../src/options/parse_opts.re"
        { globopts.fFlag = true;             goto opt; }
-#line 2914 "src/options/parse_opts.cc"
-yy727:
+#line 2940 "src/options/parse_opts.cc"
+yy733:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy738;
+       if (yych <= 0x00) goto yy744;
        goto yy284;
-yy728:
+yy734:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy740;
+       if (yych <= 0x00) goto yy746;
        goto yy284;
-yy729:
+yy735:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 't') goto yy742;
+       if (yych == 't') goto yy748;
        goto yy284;
-yy730:
+yy736:
        ++YYCURSOR;
-#line 191 "../src/options/parse_opts.re"
+#line 192 "../src/options/parse_opts.re"
        { globopts.dump_dfa_tagopt = true;    goto opt; }
-#line 2931 "src/options/parse_opts.cc"
-yy732:
+#line 2957 "src/options/parse_opts.cc"
+yy738:
        ++YYCURSOR;
-#line 173 "../src/options/parse_opts.re"
+#line 174 "../src/options/parse_opts.re"
        { NEXT_ARG("--encoding-policy",  opt_encoding_policy); }
-#line 2936 "src/options/parse_opts.cc"
-yy734:
+#line 2962 "src/options/parse_opts.cc"
+yy740:
        ++YYCURSOR;
-#line 176 "../src/options/parse_opts.re"
+#line 177 "../src/options/parse_opts.re"
        { NEXT_ARG("--location-format",  opt_location_format); }
-#line 2941 "src/options/parse_opts.cc"
-yy736:
+#line 2967 "src/options/parse_opts.cc"
+yy742:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 't') goto yy743;
+       if (yych == 't') goto yy749;
        goto yy284;
-yy737:
+yy743:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy744;
+       if (yych <= 0x00) goto yy750;
        goto yy284;
-yy738:
+yy744:
        ++YYCURSOR;
-#line 156 "../src/options/parse_opts.re"
+#line 157 "../src/options/parse_opts.re"
        { opts.set_bCaseInsensitive (true);  goto opt; }
-#line 2954 "src/options/parse_opts.cc"
-yy740:
+#line 2980 "src/options/parse_opts.cc"
+yy746:
        ++YYCURSOR;
-#line 181 "../src/options/parse_opts.re"
+#line 182 "../src/options/parse_opts.re"
        { NEXT_ARG("--dfa-minimization", opt_dfa_minimization); }
-#line 2959 "src/options/parse_opts.cc"
-yy742:
+#line 2985 "src/options/parse_opts.cc"
+yy748:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 's') goto yy746;
+       if (yych == 's') goto yy752;
        goto yy284;
-yy743:
+yy749:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'e') goto yy747;
+       if (yych == 'e') goto yy753;
        goto yy284;
-yy744:
+yy750:
        ++YYCURSOR;
-#line 184 "../src/options/parse_opts.re"
+#line 185 "../src/options/parse_opts.re"
        { globopts.optimize_tags = false; goto opt; }
-#line 2972 "src/options/parse_opts.cc"
-yy746:
+#line 2998 "src/options/parse_opts.cc"
+yy752:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy748;
+       if (yych <= 0x00) goto yy754;
        goto yy284;
-yy747:
+yy753:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy750;
+       if (yych <= 0x00) goto yy756;
        goto yy284;
-yy748:
+yy754:
        ++YYCURSOR;
-#line 196 "../src/options/parse_opts.re"
+#line 197 "../src/options/parse_opts.re"
        { globopts.dump_closure_stats = true; goto opt; }
-#line 2985 "src/options/parse_opts.cc"
-yy750:
+#line 3011 "src/options/parse_opts.cc"
+yy756:
        ++YYCURSOR;
-#line 147 "../src/options/parse_opts.re"
+#line 148 "../src/options/parse_opts.re"
        { globopts.bNoGenerationDate = true; goto opt; }
-#line 2990 "src/options/parse_opts.cc"
+#line 3016 "src/options/parse_opts.cc"
 }
-#line 197 "../src/options/parse_opts.re"
+#line 198 "../src/options/parse_opts.re"
 
 
 opt_output:
 
-#line 2997 "src/options/parse_opts.cc"
+#line 3023 "src/options/parse_opts.cc"
 {
        YYCTYPE yych;
        static const unsigned char yybm[] = {
@@ -3031,29 +3057,29 @@ opt_output:
                128, 128, 128, 128, 128, 128, 128, 128, 
        };
        yych = (YYCTYPE)*YYCURSOR;
-       if (yych <= 0x00) goto yy754;
-       if (yych != '-') goto yy756;
-yy754:
+       if (yych <= 0x00) goto yy760;
+       if (yych != '-') goto yy762;
+yy760:
        ++YYCURSOR;
-#line 201 "../src/options/parse_opts.re"
+#line 202 "../src/options/parse_opts.re"
        { ERRARG("-o, --output", "filename", *argv); }
-#line 3041 "src/options/parse_opts.cc"
-yy756:
+#line 3067 "src/options/parse_opts.cc"
+yy762:
        yych = (YYCTYPE)*++YYCURSOR;
        if (yybm[0+yych] & 128) {
-               goto yy756;
+               goto yy762;
        }
        ++YYCURSOR;
-#line 202 "../src/options/parse_opts.re"
+#line 203 "../src/options/parse_opts.re"
        { opts.set_output_file (*argv); goto opt; }
-#line 3050 "src/options/parse_opts.cc"
+#line 3076 "src/options/parse_opts.cc"
 }
-#line 203 "../src/options/parse_opts.re"
+#line 204 "../src/options/parse_opts.re"
 
 
 opt_header:
 
-#line 3057 "src/options/parse_opts.cc"
+#line 3083 "src/options/parse_opts.cc"
 {
        YYCTYPE yych;
        static const unsigned char yybm[] = {
@@ -3091,29 +3117,29 @@ opt_header:
                128, 128, 128, 128, 128, 128, 128, 128, 
        };
        yych = (YYCTYPE)*YYCURSOR;
-       if (yych <= 0x00) goto yy762;
-       if (yych != '-') goto yy764;
-yy762:
+       if (yych <= 0x00) goto yy768;
+       if (yych != '-') goto yy770;
+yy768:
        ++YYCURSOR;
-#line 207 "../src/options/parse_opts.re"
+#line 208 "../src/options/parse_opts.re"
        { ERRARG("-t, --type-header", "filename", *argv); }
-#line 3101 "src/options/parse_opts.cc"
-yy764:
+#line 3127 "src/options/parse_opts.cc"
+yy770:
        yych = (YYCTYPE)*++YYCURSOR;
        if (yybm[0+yych] & 128) {
-               goto yy764;
+               goto yy770;
        }
        ++YYCURSOR;
-#line 208 "../src/options/parse_opts.re"
+#line 209 "../src/options/parse_opts.re"
        { opts.set_header_file (*argv); goto opt; }
-#line 3110 "src/options/parse_opts.cc"
+#line 3136 "src/options/parse_opts.cc"
 }
-#line 209 "../src/options/parse_opts.re"
+#line 210 "../src/options/parse_opts.re"
 
 
 opt_incpath:
 
-#line 3117 "src/options/parse_opts.cc"
+#line 3143 "src/options/parse_opts.cc"
 {
        YYCTYPE yych;
        static const unsigned char yybm[] = {
@@ -3151,511 +3177,511 @@ opt_incpath:
                128, 128, 128, 128, 128, 128, 128, 128, 
        };
        yych = (YYCTYPE)*YYCURSOR;
-       if (yych <= 0x00) goto yy770;
-       if (yych != '-') goto yy772;
-yy770:
+       if (yych <= 0x00) goto yy776;
+       if (yych != '-') goto yy778;
+yy776:
        ++YYCURSOR;
-#line 213 "../src/options/parse_opts.re"
+#line 214 "../src/options/parse_opts.re"
        { ERRARG("-I", "filename", *argv); }
-#line 3161 "src/options/parse_opts.cc"
-yy772:
+#line 3187 "src/options/parse_opts.cc"
+yy778:
        yych = (YYCTYPE)*++YYCURSOR;
        if (yybm[0+yych] & 128) {
-               goto yy772;
+               goto yy778;
        }
        ++YYCURSOR;
-#line 214 "../src/options/parse_opts.re"
+#line 215 "../src/options/parse_opts.re"
        { globopts.incpaths.push_back(*argv); goto opt; }
-#line 3170 "src/options/parse_opts.cc"
+#line 3196 "src/options/parse_opts.cc"
 }
-#line 215 "../src/options/parse_opts.re"
+#line 216 "../src/options/parse_opts.re"
 
 
 opt_encoding_policy:
 
-#line 3177 "src/options/parse_opts.cc"
+#line 3203 "src/options/parse_opts.cc"
 {
        YYCTYPE yych;
        yych = (YYCTYPE)*YYCURSOR;
        if (yych <= 'h') {
-               if (yych == 'f') goto yy780;
+               if (yych == 'f') goto yy786;
        } else {
-               if (yych <= 'i') goto yy781;
-               if (yych == 's') goto yy782;
+               if (yych <= 'i') goto yy787;
+               if (yych == 's') goto yy788;
        }
        ++YYCURSOR;
-yy779:
-#line 219 "../src/options/parse_opts.re"
-       { ERRARG("--encoding-policy", "ignore | substitute | fail", *argv); }
-#line 3191 "src/options/parse_opts.cc"
-yy780:
-       yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
-       if (yych == 'a') goto yy783;
-       goto yy779;
-yy781:
-       yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
-       if (yych == 'g') goto yy785;
-       goto yy779;
-yy782:
-       yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
-       if (yych == 'u') goto yy786;
-       goto yy779;
-yy783:
-       yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'i') goto yy787;
-yy784:
-       YYCURSOR = YYMARKER;
-       goto yy779;
 yy785:
-       yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'n') goto yy788;
-       goto yy784;
+#line 220 "../src/options/parse_opts.re"
+       { ERRARG("--encoding-policy", "ignore | substitute | fail", *argv); }
+#line 3217 "src/options/parse_opts.cc"
 yy786:
-       yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'b') goto yy789;
-       goto yy784;
+       yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
+       if (yych == 'a') goto yy789;
+       goto yy785;
 yy787:
-       yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'l') goto yy790;
-       goto yy784;
+       yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
+       if (yych == 'g') goto yy791;
+       goto yy785;
 yy788:
-       yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'o') goto yy791;
-       goto yy784;
+       yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
+       if (yych == 'u') goto yy792;
+       goto yy785;
 yy789:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 's') goto yy792;
-       goto yy784;
+       if (yych == 'i') goto yy793;
 yy790:
-       yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy793;
-       goto yy784;
+       YYCURSOR = YYMARKER;
+       goto yy785;
 yy791:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'r') goto yy795;
-       goto yy784;
+       if (yych == 'n') goto yy794;
+       goto yy790;
 yy792:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 't') goto yy796;
-       goto yy784;
+       if (yych == 'b') goto yy795;
+       goto yy790;
 yy793:
-       ++YYCURSOR;
-#line 222 "../src/options/parse_opts.re"
-       { opts.set_encoding_policy (Enc::POLICY_FAIL);       goto opt; }
-#line 3246 "src/options/parse_opts.cc"
+       yych = (YYCTYPE)*++YYCURSOR;
+       if (yych == 'l') goto yy796;
+       goto yy790;
+yy794:
+       yych = (YYCTYPE)*++YYCURSOR;
+       if (yych == 'o') goto yy797;
+       goto yy790;
 yy795:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'e') goto yy797;
-       goto yy784;
+       if (yych == 's') goto yy798;
+       goto yy790;
 yy796:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'i') goto yy798;
-       goto yy784;
+       if (yych <= 0x00) goto yy799;
+       goto yy790;
 yy797:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy799;
-       goto yy784;
+       if (yych == 'r') goto yy801;
+       goto yy790;
 yy798:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 't') goto yy801;
-       goto yy784;
+       if (yych == 't') goto yy802;
+       goto yy790;
 yy799:
        ++YYCURSOR;
-#line 220 "../src/options/parse_opts.re"
-       { opts.set_encoding_policy (Enc::POLICY_IGNORE);     goto opt; }
-#line 3267 "src/options/parse_opts.cc"
+#line 223 "../src/options/parse_opts.re"
+       { opts.set_encoding_policy (Enc::POLICY_FAIL);       goto opt; }
+#line 3272 "src/options/parse_opts.cc"
 yy801:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych != 'u') goto yy784;
+       if (yych == 'e') goto yy803;
+       goto yy790;
+yy802:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych != 't') goto yy784;
+       if (yych == 'i') goto yy804;
+       goto yy790;
+yy803:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych != 'e') goto yy784;
+       if (yych <= 0x00) goto yy805;
+       goto yy790;
+yy804:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych >= 0x01) goto yy784;
+       if (yych == 't') goto yy807;
+       goto yy790;
+yy805:
        ++YYCURSOR;
 #line 221 "../src/options/parse_opts.re"
+       { opts.set_encoding_policy (Enc::POLICY_IGNORE);     goto opt; }
+#line 3293 "src/options/parse_opts.cc"
+yy807:
+       yych = (YYCTYPE)*++YYCURSOR;
+       if (yych != 'u') goto yy790;
+       yych = (YYCTYPE)*++YYCURSOR;
+       if (yych != 't') goto yy790;
+       yych = (YYCTYPE)*++YYCURSOR;
+       if (yych != 'e') goto yy790;
+       yych = (YYCTYPE)*++YYCURSOR;
+       if (yych >= 0x01) goto yy790;
+       ++YYCURSOR;
+#line 222 "../src/options/parse_opts.re"
        { opts.set_encoding_policy (Enc::POLICY_SUBSTITUTE); goto opt; }
-#line 3280 "src/options/parse_opts.cc"
+#line 3306 "src/options/parse_opts.cc"
 }
-#line 223 "../src/options/parse_opts.re"
+#line 224 "../src/options/parse_opts.re"
 
 
 opt_input:
 
-#line 3287 "src/options/parse_opts.cc"
+#line 3313 "src/options/parse_opts.cc"
 {
        YYCTYPE yych;
        yych = (YYCTYPE)*YYCURSOR;
-       if (yych <= 'b') goto yy809;
-       if (yych <= 'c') goto yy811;
-       if (yych <= 'd') goto yy812;
-yy809:
+       if (yych <= 'b') goto yy815;
+       if (yych <= 'c') goto yy817;
+       if (yych <= 'd') goto yy818;
+yy815:
        ++YYCURSOR;
-yy810:
-#line 227 "../src/options/parse_opts.re"
+yy816:
+#line 228 "../src/options/parse_opts.re"
        { ERRARG("--input", "default | custom", *argv); }
-#line 3299 "src/options/parse_opts.cc"
-yy811:
+#line 3325 "src/options/parse_opts.cc"
+yy817:
        yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
-       if (yych == 'u') goto yy813;
-       goto yy810;
-yy812:
+       if (yych == 'u') goto yy819;
+       goto yy816;
+yy818:
        yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
-       if (yych == 'e') goto yy815;
-       goto yy810;
-yy813:
+       if (yych == 'e') goto yy821;
+       goto yy816;
+yy819:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 's') goto yy816;
-yy814:
+       if (yych == 's') goto yy822;
+yy820:
        YYCURSOR = YYMARKER;
-       goto yy810;
-yy815:
+       goto yy816;
+yy821:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'f') goto yy817;
-       goto yy814;
-yy816:
+       if (yych == 'f') goto yy823;
+       goto yy820;
+yy822:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 't') goto yy818;
-       goto yy814;
-yy817:
+       if (yych == 't') goto yy824;
+       goto yy820;
+yy823:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'a') goto yy819;
-       goto yy814;
-yy818:
+       if (yych == 'a') goto yy825;
+       goto yy820;
+yy824:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'o') goto yy820;
-       goto yy814;
-yy819:
+       if (yych == 'o') goto yy826;
+       goto yy820;
+yy825:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'u') goto yy821;
-       goto yy814;
-yy820:
+       if (yych == 'u') goto yy827;
+       goto yy820;
+yy826:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'm') goto yy822;
-       goto yy814;
-yy821:
+       if (yych == 'm') goto yy828;
+       goto yy820;
+yy827:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'l') goto yy823;
-       goto yy814;
-yy822:
+       if (yych == 'l') goto yy829;
+       goto yy820;
+yy828:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy824;
-       goto yy814;
-yy823:
+       if (yych <= 0x00) goto yy830;
+       goto yy820;
+yy829:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 't') goto yy826;
-       goto yy814;
-yy824:
+       if (yych == 't') goto yy832;
+       goto yy820;
+yy830:
        ++YYCURSOR;
-#line 229 "../src/options/parse_opts.re"
+#line 230 "../src/options/parse_opts.re"
        { opts.set_input_api(INPUT_CUSTOM);  goto opt; }
-#line 3354 "src/options/parse_opts.cc"
-yy826:
+#line 3380 "src/options/parse_opts.cc"
+yy832:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych >= 0x01) goto yy814;
+       if (yych >= 0x01) goto yy820;
        ++YYCURSOR;
-#line 228 "../src/options/parse_opts.re"
+#line 229 "../src/options/parse_opts.re"
        { opts.set_input_api(INPUT_DEFAULT); goto opt; }
-#line 3361 "src/options/parse_opts.cc"
+#line 3387 "src/options/parse_opts.cc"
 }
-#line 230 "../src/options/parse_opts.re"
+#line 231 "../src/options/parse_opts.re"
 
 
 opt_empty_class:
 
-#line 3368 "src/options/parse_opts.cc"
+#line 3394 "src/options/parse_opts.cc"
 {
        YYCTYPE yych;
        yych = (YYCTYPE)*YYCURSOR;
-       if (yych == 'e') goto yy833;
-       if (yych == 'm') goto yy834;
+       if (yych == 'e') goto yy839;
+       if (yych == 'm') goto yy840;
        ++YYCURSOR;
-yy832:
-#line 234 "../src/options/parse_opts.re"
-       { ERRARG("--empty-class", "match-empty | match-none | error", *argv); }
-#line 3378 "src/options/parse_opts.cc"
-yy833:
-       yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
-       if (yych == 'r') goto yy835;
-       goto yy832;
-yy834:
-       yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
-       if (yych == 'a') goto yy837;
-       goto yy832;
-yy835:
-       yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'r') goto yy838;
-yy836:
-       YYCURSOR = YYMARKER;
-       goto yy832;
-yy837:
-       yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 't') goto yy839;
-       goto yy836;
 yy838:
-       yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'o') goto yy840;
-       goto yy836;
+#line 235 "../src/options/parse_opts.re"
+       { ERRARG("--empty-class", "match-empty | match-none | error", *argv); }
+#line 3404 "src/options/parse_opts.cc"
 yy839:
-       yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'c') goto yy841;
-       goto yy836;
+       yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
+       if (yych == 'r') goto yy841;
+       goto yy838;
 yy840:
-       yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'r') goto yy842;
-       goto yy836;
+       yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
+       if (yych == 'a') goto yy843;
+       goto yy838;
 yy841:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'h') goto yy843;
-       goto yy836;
+       if (yych == 'r') goto yy844;
 yy842:
-       yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy844;
-       goto yy836;
+       YYCURSOR = YYMARKER;
+       goto yy838;
 yy843:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == '-') goto yy846;
-       goto yy836;
+       if (yych == 't') goto yy845;
+       goto yy842;
 yy844:
-       ++YYCURSOR;
-#line 237 "../src/options/parse_opts.re"
-       { opts.set_empty_class_policy (EMPTY_CLASS_ERROR);       goto opt; }
-#line 3425 "src/options/parse_opts.cc"
+       yych = (YYCTYPE)*++YYCURSOR;
+       if (yych == 'o') goto yy846;
+       goto yy842;
+yy845:
+       yych = (YYCTYPE)*++YYCURSOR;
+       if (yych == 'c') goto yy847;
+       goto yy842;
 yy846:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'e') goto yy847;
-       if (yych == 'n') goto yy848;
-       goto yy836;
+       if (yych == 'r') goto yy848;
+       goto yy842;
 yy847:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'm') goto yy849;
-       goto yy836;
+       if (yych == 'h') goto yy849;
+       goto yy842;
 yy848:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'o') goto yy850;
-       goto yy836;
+       if (yych <= 0x00) goto yy850;
+       goto yy842;
 yy849:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'p') goto yy851;
-       goto yy836;
+       if (yych == '-') goto yy852;
+       goto yy842;
 yy850:
-       yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'n') goto yy852;
-       goto yy836;
-yy851:
-       yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 't') goto yy853;
-       goto yy836;
+       ++YYCURSOR;
+#line 238 "../src/options/parse_opts.re"
+       { opts.set_empty_class_policy (EMPTY_CLASS_ERROR);       goto opt; }
+#line 3451 "src/options/parse_opts.cc"
 yy852:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'e') goto yy854;
-       goto yy836;
+       if (yych == 'e') goto yy853;
+       if (yych == 'n') goto yy854;
+       goto yy842;
 yy853:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'y') goto yy855;
-       goto yy836;
+       if (yych == 'm') goto yy855;
+       goto yy842;
 yy854:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy856;
-       goto yy836;
+       if (yych == 'o') goto yy856;
+       goto yy842;
 yy855:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy858;
-       goto yy836;
+       if (yych == 'p') goto yy857;
+       goto yy842;
 yy856:
+       yych = (YYCTYPE)*++YYCURSOR;
+       if (yych == 'n') goto yy858;
+       goto yy842;
+yy857:
+       yych = (YYCTYPE)*++YYCURSOR;
+       if (yych == 't') goto yy859;
+       goto yy842;
+yy858:
+       yych = (YYCTYPE)*++YYCURSOR;
+       if (yych == 'e') goto yy860;
+       goto yy842;
+yy859:
+       yych = (YYCTYPE)*++YYCURSOR;
+       if (yych == 'y') goto yy861;
+       goto yy842;
+yy860:
+       yych = (YYCTYPE)*++YYCURSOR;
+       if (yych <= 0x00) goto yy862;
+       goto yy842;
+yy861:
+       yych = (YYCTYPE)*++YYCURSOR;
+       if (yych <= 0x00) goto yy864;
+       goto yy842;
+yy862:
        ++YYCURSOR;
-#line 236 "../src/options/parse_opts.re"
+#line 237 "../src/options/parse_opts.re"
        { opts.set_empty_class_policy (EMPTY_CLASS_MATCH_NONE);  goto opt; }
-#line 3471 "src/options/parse_opts.cc"
-yy858:
+#line 3497 "src/options/parse_opts.cc"
+yy864:
        ++YYCURSOR;
-#line 235 "../src/options/parse_opts.re"
+#line 236 "../src/options/parse_opts.re"
        { opts.set_empty_class_policy (EMPTY_CLASS_MATCH_EMPTY); goto opt; }
-#line 3476 "src/options/parse_opts.cc"
+#line 3502 "src/options/parse_opts.cc"
 }
-#line 238 "../src/options/parse_opts.re"
+#line 239 "../src/options/parse_opts.re"
 
 
 opt_location_format:
 
-#line 3483 "src/options/parse_opts.cc"
+#line 3509 "src/options/parse_opts.cc"
 {
        YYCTYPE yych;
        yych = (YYCTYPE)*YYCURSOR;
-       if (yych == 'g') goto yy864;
-       if (yych == 'm') goto yy865;
+       if (yych == 'g') goto yy870;
+       if (yych == 'm') goto yy871;
        ++YYCURSOR;
-yy863:
-#line 242 "../src/options/parse_opts.re"
+yy869:
+#line 243 "../src/options/parse_opts.re"
        { ERRARG("--location-format", "gnu | msvc", *argv); }
-#line 3493 "src/options/parse_opts.cc"
-yy864:
+#line 3519 "src/options/parse_opts.cc"
+yy870:
        yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
-       if (yych == 'n') goto yy866;
-       goto yy863;
-yy865:
+       if (yych == 'n') goto yy872;
+       goto yy869;
+yy871:
        yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
-       if (yych == 's') goto yy868;
-       goto yy863;
-yy866:
+       if (yych == 's') goto yy874;
+       goto yy869;
+yy872:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'u') goto yy869;
-yy867:
+       if (yych == 'u') goto yy875;
+yy873:
        YYCURSOR = YYMARKER;
-       goto yy863;
-yy868:
+       goto yy869;
+yy874:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'v') goto yy870;
-       goto yy867;
-yy869:
+       if (yych == 'v') goto yy876;
+       goto yy873;
+yy875:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy871;
-       goto yy867;
-yy870:
+       if (yych <= 0x00) goto yy877;
+       goto yy873;
+yy876:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'c') goto yy873;
-       goto yy867;
-yy871:
+       if (yych == 'c') goto yy879;
+       goto yy873;
+yy877:
        ++YYCURSOR;
-#line 243 "../src/options/parse_opts.re"
+#line 244 "../src/options/parse_opts.re"
        { msg.locfmt = LOCFMT_GNU;  goto opt; }
-#line 3524 "src/options/parse_opts.cc"
-yy873:
+#line 3550 "src/options/parse_opts.cc"
+yy879:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych >= 0x01) goto yy867;
+       if (yych >= 0x01) goto yy873;
        ++YYCURSOR;
-#line 244 "../src/options/parse_opts.re"
+#line 245 "../src/options/parse_opts.re"
        { msg.locfmt = LOCFMT_MSVC; goto opt; }
-#line 3531 "src/options/parse_opts.cc"
+#line 3557 "src/options/parse_opts.cc"
 }
-#line 245 "../src/options/parse_opts.re"
+#line 246 "../src/options/parse_opts.re"
 
 
 opt_dfa_minimization:
 
-#line 3538 "src/options/parse_opts.cc"
+#line 3564 "src/options/parse_opts.cc"
 {
        YYCTYPE yych;
        yych = (YYCTYPE)*YYCURSOR;
-       if (yych == 'm') goto yy880;
-       if (yych == 't') goto yy881;
+       if (yych == 'm') goto yy886;
+       if (yych == 't') goto yy887;
        ++YYCURSOR;
-yy879:
-#line 249 "../src/options/parse_opts.re"
+yy885:
+#line 250 "../src/options/parse_opts.re"
        { ERRARG("--dfa-minimization", "table | moore", *argv); }
-#line 3548 "src/options/parse_opts.cc"
-yy880:
+#line 3574 "src/options/parse_opts.cc"
+yy886:
        yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
-       if (yych == 'o') goto yy882;
-       goto yy879;
-yy881:
+       if (yych == 'o') goto yy888;
+       goto yy885;
+yy887:
        yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
-       if (yych == 'a') goto yy884;
-       goto yy879;
-yy882:
+       if (yych == 'a') goto yy890;
+       goto yy885;
+yy888:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'o') goto yy885;
-yy883:
+       if (yych == 'o') goto yy891;
+yy889:
        YYCURSOR = YYMARKER;
-       goto yy879;
-yy884:
+       goto yy885;
+yy890:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'b') goto yy886;
-       goto yy883;
-yy885:
+       if (yych == 'b') goto yy892;
+       goto yy889;
+yy891:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'r') goto yy887;
-       goto yy883;
-yy886:
+       if (yych == 'r') goto yy893;
+       goto yy889;
+yy892:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'l') goto yy888;
-       goto yy883;
-yy887:
+       if (yych == 'l') goto yy894;
+       goto yy889;
+yy893:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'e') goto yy889;
-       goto yy883;
-yy888:
+       if (yych == 'e') goto yy895;
+       goto yy889;
+yy894:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'e') goto yy890;
-       goto yy883;
-yy889:
+       if (yych == 'e') goto yy896;
+       goto yy889;
+yy895:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy891;
-       goto yy883;
-yy890:
+       if (yych <= 0x00) goto yy897;
+       goto yy889;
+yy896:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy893;
-       goto yy883;
-yy891:
+       if (yych <= 0x00) goto yy899;
+       goto yy889;
+yy897:
        ++YYCURSOR;
-#line 251 "../src/options/parse_opts.re"
+#line 252 "../src/options/parse_opts.re"
        { globopts.dfa_minimization = DFA_MINIMIZATION_MOORE; goto opt; }
-#line 3595 "src/options/parse_opts.cc"
-yy893:
+#line 3621 "src/options/parse_opts.cc"
+yy899:
        ++YYCURSOR;
-#line 250 "../src/options/parse_opts.re"
+#line 251 "../src/options/parse_opts.re"
        { globopts.dfa_minimization = DFA_MINIMIZATION_TABLE; goto opt; }
-#line 3600 "src/options/parse_opts.cc"
+#line 3626 "src/options/parse_opts.cc"
 }
-#line 252 "../src/options/parse_opts.re"
+#line 253 "../src/options/parse_opts.re"
 
 
 opt_posix_closure:
 
-#line 3607 "src/options/parse_opts.cc"
+#line 3633 "src/options/parse_opts.cc"
 {
        YYCTYPE yych;
        yych = (YYCTYPE)*YYCURSOR;
-       if (yych == 'g') goto yy899;
+       if (yych == 'g') goto yy905;
        ++YYCURSOR;
-yy898:
-#line 256 "../src/options/parse_opts.re"
+yy904:
+#line 257 "../src/options/parse_opts.re"
        { ERRARG("--posix-closure", "gor1 | gtop", *argv); }
-#line 3616 "src/options/parse_opts.cc"
-yy899:
+#line 3642 "src/options/parse_opts.cc"
+yy905:
        yych = (YYCTYPE)*(YYMARKER = ++YYCURSOR);
-       if (yych == 'o') goto yy900;
-       if (yych == 't') goto yy902;
-       goto yy898;
-yy900:
+       if (yych == 'o') goto yy906;
+       if (yych == 't') goto yy908;
+       goto yy904;
+yy906:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'r') goto yy903;
-yy901:
+       if (yych == 'r') goto yy909;
+yy907:
        YYCURSOR = YYMARKER;
-       goto yy898;
-yy902:
+       goto yy904;
+yy908:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'o') goto yy904;
-       goto yy901;
-yy903:
+       if (yych == 'o') goto yy910;
+       goto yy907;
+yy909:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == '1') goto yy905;
-       goto yy901;
-yy904:
+       if (yych == '1') goto yy911;
+       goto yy907;
+yy910:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych == 'p') goto yy906;
-       goto yy901;
-yy905:
+       if (yych == 'p') goto yy912;
+       goto yy907;
+yy911:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy907;
-       goto yy901;
-yy906:
+       if (yych <= 0x00) goto yy913;
+       goto yy907;
+yy912:
        yych = (YYCTYPE)*++YYCURSOR;
-       if (yych <= 0x00) goto yy909;
-       goto yy901;
-yy907:
+       if (yych <= 0x00) goto yy915;
+       goto yy907;
+yy913:
        ++YYCURSOR;
-#line 257 "../src/options/parse_opts.re"
+#line 258 "../src/options/parse_opts.re"
        { globopts.posix_closure = POSIX_CLOSURE_GOR1; goto opt; }
-#line 3652 "src/options/parse_opts.cc"
-yy909:
+#line 3678 "src/options/parse_opts.cc"
+yy915:
        ++YYCURSOR;
-#line 258 "../src/options/parse_opts.re"
+#line 259 "../src/options/parse_opts.re"
        { globopts.posix_closure = POSIX_CLOSURE_GTOP; goto opt; }
-#line 3657 "src/options/parse_opts.cc"
+#line 3683 "src/options/parse_opts.cc"
 }
-#line 259 "../src/options/parse_opts.re"
+#line 260 "../src/options/parse_opts.re"
 
 
 end:
index dbd716d03345cca9d0df2fbd17bc067759325012..be6ae61948e0ada648caf06160d560e738c750d3 100644 (file)
@@ -32,5 +32,12 @@ int main(int, char *argv[])
         return 1;
     }
 
-    return msg.warn.error() ? 1 : 0;
+    if (msg.warn.error()) {
+        return 1;
+    }
+
+    if (globopts.verbose) {
+        fprintf(stderr, "re2c: success\n");
+    }
+    return 0;
 }
index 086693f502796f509806c8feb61e06835586df25..ef6ce53dc1083040649fe1a7bbc0dc7142bb8b9f 100644 (file)
@@ -49,6 +49,7 @@ const uint32_t NOEOF = ~0u - 1;
     CONSTOPT (bool, fFlag, false) \
     CONSTOPT (bool, rFlag, false) \
     CONSTOPT (bool, FFlag, false) \
+    CONSTOPT (bool, verbose, false) \
     /* include paths */ \
     CONSTOPT (std::vector<std::string>, incpaths, std::vector<std::string>()) \
     /* internals */ \
index 3ce795103d51df5f10f2ac792156468037096049..db6760d563855f018a9bb7422a6fcf1c864e758c 100644 (file)
@@ -144,6 +144,7 @@ opt_long:
     "storable-state"        end { globopts.fFlag = true;             goto opt; }
     "flex-syntax"           end { globopts.FFlag = true;             goto opt; }
     "reusable"              end { globopts.rFlag = true;             goto opt; }
+    "verbose"               end { globopts.verbose = true;           goto opt; }
     "no-generation-date"    end { globopts.bNoGenerationDate = true; goto opt; }
     "no-version"            end { globopts.version = false;          goto opt; }
     "skeleton"              end { globopts.target = TARGET_SKELETON; goto opt; }
diff --git a/re2c/test/messages/msg_12.i--verbose.c b/re2c/test/messages/msg_12.i--verbose.c
new file mode 100644 (file)
index 0000000..4ef878b
--- /dev/null
@@ -0,0 +1,19 @@
+/* Generated by re2c */
+
+{
+       YYCTYPE yych;
+       if (YYLIMIT <= YYCURSOR) YYFILL(1);
+       yych = *YYCURSOR;
+       switch (yych) {
+       case 'a':       goto yy4;
+       default:        goto yy2;
+       }
+yy2:
+       ++YYCURSOR;
+       {}
+yy4:
+       ++YYCURSOR;
+       {}
+}
+
+re2c: success
diff --git a/re2c/test/messages/msg_12.i--verbose.re b/re2c/test/messages/msg_12.i--verbose.re
new file mode 100644 (file)
index 0000000..d6acbf8
--- /dev/null
@@ -0,0 +1,4 @@
+/*!re2c
+    "a" {}
+    * {}
+*/