From: helly Date: Sat, 15 Apr 2006 13:00:06 +0000 (+0000) Subject: - Added /*!ignore!re2c */ to support documenting of re2c source. X-Git-Tag: 0.13.6~400 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=35c66556fca5e8f1c526c1e8faca54202738a7af;p=re2c - Added /*!ignore!re2c */ to support documenting of re2c source. - Fixed issue with multiline re2c comments (/*!max:re2c ... */ and alike). --- diff --git a/CHANGELOG b/CHANGELOG index c6349d16..a004b0dc 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,5 +1,7 @@ Version 0.10.2 (2006-04-13) --------------------------- +- Added /*!ignore!re2c */ to support documenting of re2c source. +- Fixed issue with multiline re2c comments (/*!max:re2c ... */ and alike). - Fixed generation of YYDEBUG() when using -d switch. - Added /*!getstate:re2c */ which triggers generation of the YYGETSTATE() block. - Added configuration 'state:abort'. diff --git a/bootstrap/scanner.cc b/bootstrap/scanner.cc index a0490f9e..8aa1b055 100644 --- a/bootstrap/scanner.cc +++ b/bootstrap/scanner.cc @@ -1,4 +1,4 @@ -/* Generated by re2c 0.10.2.dev on Sat Apr 8 20:31:13 2006 */ +/* Generated by re2c 0.10.2.dev on Sat Apr 15 08:54:49 2006 */ #line 1 "scanner.re" /* $Id$ */ #include @@ -95,6 +95,7 @@ echo: #line 96 "scanner.cc" { YYCTYPE yych; + unsigned int yyaccept = 0; if((YYLIMIT - YYCURSOR) < 16) YYFILL(16); yych = *YYCURSOR; @@ -106,43 +107,52 @@ echo: if(yych <= '*') goto yy4; if(yych != '/') goto yy9; } + yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); - if(yych == '*') goto yy12; + if(yych == '*') goto yy16; yy3: -#line 147 "scanner.re" +#line 165 "scanner.re" { goto echo; } -#line 117 "scanner.cc" +#line 119 "scanner.cc" yy4: yych = *++YYCURSOR; if(yych == '/') goto yy10; goto yy3; yy5: ++YYCURSOR; -#line 136 "scanner.re" +#line 150 "scanner.re" { - out.write((const char*)(tok), (const char*)(cursor) - (const char*)(tok)); + if (!ignore_eoc) { + out.write((const char*)(tok), (const char*)(cursor) - (const char*)(tok)); + } tok = pos = cursor; cline++; goto echo; } -#line 130 "scanner.cc" +#line 134 "scanner.cc" yy7: ++YYCURSOR; -#line 141 "scanner.re" +#line 157 "scanner.re" { - out.write((const char*)(tok), (const char*)(cursor) - (const char*)(tok) - 1); // -1 so we don't write out the \0 + if (!ignore_eoc) { + out.write((const char*)(tok), (const char*)(cursor) - (const char*)(tok) - 1); // -1 so we don't write out the \0 + } if(cursor == eof) { RETURN(0); } } -#line 140 "scanner.cc" +#line 146 "scanner.cc" yy9: yych = *++YYCURSOR; goto yy3; yy10: - ++YYCURSOR; -#line 127 "scanner.re" + yyaccept = 1; + yych = *(YYMARKER = ++YYCURSOR); + if(yych == 0x0A) goto yy14; + if(yych == 0x0D) goto yy12; +yy11: +#line 141 "scanner.re" { if (ignore_eoc) { ignore_eoc = false; @@ -152,30 +162,53 @@ yy10: tok = pos = cursor; goto echo; } -#line 156 "scanner.cc" +#line 166 "scanner.cc" yy12: yych = *++YYCURSOR; - if(yych == '!') goto yy14; + if(yych == 0x0A) goto yy14; yy13: YYCURSOR = YYMARKER; - goto yy3; + switch(yyaccept) { + case 1: goto yy11; + case 0: goto yy3; + } yy14: + ++YYCURSOR; +#line 132 "scanner.re" + { + if (ignore_eoc) { + ignore_eoc = false; + } else { + out.write((const char*)(tok), (const char*)(cursor) - (const char*)(tok)); + } + tok = pos = cursor; cline++; + goto echo; + } +#line 188 "scanner.cc" +yy16: yych = *++YYCURSOR; - if(yych <= 'l') { - if(yych != 'g') goto yy13; - } else { - if(yych <= 'm') goto yy16; - if(yych == 'r') goto yy17; - goto yy13; + if(yych != '!') goto yy13; + yych = *++YYCURSOR; + switch(yych){ + case 'g': goto yy19; + case 'i': goto yy18; + case 'm': goto yy20; + case 'r': goto yy21; + default: goto yy13; } +yy18: yych = *++YYCURSOR; - if(yych == 'e') goto yy30; + if(yych == 'g') goto yy47; goto yy13; -yy16: +yy19: + yych = *++YYCURSOR; + if(yych == 'e') goto yy34; + goto yy13; +yy20: yych = *++YYCURSOR; - if(yych == 'a') goto yy22; + if(yych == 'a') goto yy26; goto yy13; -yy17: +yy21: yych = *++YYCURSOR; if(yych != 'e') goto yy13; yych = *++YYCURSOR; @@ -189,8 +222,8 @@ yy17: tok = cursor; RETURN(1); } -#line 193 "scanner.cc" -yy22: +#line 226 "scanner.cc" +yy26: yych = *++YYCURSOR; if(yych != 'x') goto yy13; yych = *++YYCURSOR; @@ -211,8 +244,8 @@ yy22: ignore_eoc = true; goto echo; } -#line 215 "scanner.cc" -yy30: +#line 248 "scanner.cc" +yy34: yych = *++YYCURSOR; if(yych != 't') goto yy13; yych = *++YYCURSOR; @@ -243,9 +276,36 @@ yy30: ignore_eoc = true; goto echo; } -#line 247 "scanner.cc" +#line 280 "scanner.cc" +yy47: + yych = *++YYCURSOR; + if(yych != 'n') goto yy13; + yych = *++YYCURSOR; + if(yych != 'o') goto yy13; + yych = *++YYCURSOR; + if(yych != 'r') goto yy13; + yych = *++YYCURSOR; + if(yych != 'e') goto yy13; + yych = *++YYCURSOR; + if(yych != ':') goto yy13; + yych = *++YYCURSOR; + if(yych != 'r') goto yy13; + yych = *++YYCURSOR; + if(yych != 'e') goto yy13; + yych = *++YYCURSOR; + if(yych != '2') goto yy13; + yych = *++YYCURSOR; + if(yych != 'c') goto yy13; + ++YYCURSOR; +#line 127 "scanner.re" + { + tok = pos = cursor; + ignore_eoc = true; + goto echo; + } +#line 307 "scanner.cc" } -#line 150 "scanner.re" +#line 168 "scanner.re" } @@ -268,7 +328,7 @@ scan: goto value; } -#line 272 "scanner.cc" +#line 332 "scanner.cc" { YYCTYPE yych; unsigned int yyaccept = 0; @@ -277,894 +337,894 @@ scan: if(yych <= '/') { if(yych <= '!') { if(yych <= 0x0C) { - if(yych <= 0x08) goto yy70; - if(yych <= 0x09) goto yy64; - if(yych <= 0x0A) goto yy66; - goto yy70; + if(yych <= 0x08) goto yy85; + if(yych <= 0x09) goto yy79; + if(yych <= 0x0A) goto yy81; + goto yy85; } else { - if(yych <= 0x0D) goto yy68; - if(yych == ' ') goto yy64; - goto yy70; + if(yych <= 0x0D) goto yy83; + if(yych == ' ') goto yy79; + goto yy85; } } else { if(yych <= ')') { - if(yych <= '"') goto yy51; - if(yych <= '&') goto yy70; - if(yych <= '\'') goto yy53; - goto yy57; + if(yych <= '"') goto yy66; + if(yych <= '&') goto yy85; + if(yych <= '\'') goto yy68; + goto yy72; } else { if(yych <= '+') { - if(yych <= '*') goto yy49; - goto yy58; + if(yych <= '*') goto yy64; + goto yy73; } else { - if(yych <= '-') goto yy70; - if(yych <= '.') goto yy62; - goto yy47; + if(yych <= '-') goto yy85; + if(yych <= '.') goto yy77; + goto yy62; } } } } else { if(yych <= 'Z') { if(yych <= '=') { - if(yych == ';') goto yy57; - if(yych <= '<') goto yy70; - goto yy57; + if(yych == ';') goto yy72; + if(yych <= '<') goto yy85; + goto yy72; } else { - if(yych == '?') goto yy58; - if(yych <= '@') goto yy70; - goto yy61; + if(yych == '?') goto yy73; + if(yych <= '@') goto yy85; + goto yy76; } } else { if(yych <= 'q') { - if(yych <= '[') goto yy55; - if(yych <= '\\') goto yy57; - if(yych <= '`') goto yy70; - goto yy61; + if(yych <= '[') goto yy70; + if(yych <= '\\') goto yy72; + if(yych <= '`') goto yy85; + goto yy76; } else { if(yych <= 'z') { - if(yych <= 'r') goto yy59; - goto yy61; + if(yych <= 'r') goto yy74; + goto yy76; } else { - if(yych <= '{') goto yy45; - if(yych <= '|') goto yy57; - goto yy70; + if(yych <= '{') goto yy60; + if(yych <= '|') goto yy72; + goto yy85; } } } } -yy45: +yy60: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if(yych <= '/') { - if(yych == ',') goto yy111; + if(yych == ',') goto yy126; } else { - if(yych <= '0') goto yy108; - if(yych <= '9') goto yy109; + if(yych <= '0') goto yy123; + if(yych <= '9') goto yy124; } -yy46: -#line 172 "scanner.re" +yy61: +#line 190 "scanner.re" { depth = 1; goto code; } -#line 350 "scanner.cc" -yy47: +#line 410 "scanner.cc" +yy62: ++YYCURSOR; - if((yych = *YYCURSOR) == '*') goto yy106; -yy48: -#line 202 "scanner.re" + if((yych = *YYCURSOR) == '*') goto yy121; +yy63: +#line 220 "scanner.re" { RETURN(*tok); } -#line 357 "scanner.cc" -yy49: +#line 417 "scanner.cc" +yy64: ++YYCURSOR; - if((yych = *YYCURSOR) == '/') goto yy104; -yy50: -#line 204 "scanner.re" + if((yych = *YYCURSOR) == '/') goto yy119; +yy65: +#line 222 "scanner.re" { yylval.op = *tok; RETURN(CLOSE); } -#line 365 "scanner.cc" -yy51: +#line 425 "scanner.cc" +yy66: yyaccept = 1; yych = *(YYMARKER = ++YYCURSOR); - if(yych != 0x0A) goto yy100; -yy52: -#line 189 "scanner.re" + if(yych != 0x0A) goto yy115; +yy67: +#line 207 "scanner.re" { fatal("unterminated string constant (missing \")"); } -#line 373 "scanner.cc" -yy53: +#line 433 "scanner.cc" +yy68: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - if(yych != 0x0A) goto yy95; -yy54: -#line 190 "scanner.re" + if(yych != 0x0A) goto yy110; +yy69: +#line 208 "scanner.re" { fatal("unterminated string constant (missing ')"); } -#line 381 "scanner.cc" -yy55: +#line 441 "scanner.cc" +yy70: yyaccept = 3; yych = *(YYMARKER = ++YYCURSOR); - if(yych == 0x0A) goto yy56; - if(yych == '^') goto yy86; - goto yy85; -yy56: -#line 200 "scanner.re" + if(yych == 0x0A) goto yy71; + if(yych == '^') goto yy101; + goto yy100; +yy71: +#line 218 "scanner.re" { fatal("unterminated range (missing ])"); } -#line 391 "scanner.cc" -yy57: +#line 451 "scanner.cc" +yy72: yych = *++YYCURSOR; - goto yy48; -yy58: + goto yy63; +yy73: yych = *++YYCURSOR; - goto yy50; -yy59: + goto yy65; +yy74: ++YYCURSOR; - if((yych = *YYCURSOR) == 'e') goto yy76; - goto yy75; -yy60: -#line 231 "scanner.re" + if((yych = *YYCURSOR) == 'e') goto yy91; + goto yy90; +yy75: +#line 249 "scanner.re" { cur = cursor; yylval.symbol = Symbol::find(token()); return ID; } -#line 407 "scanner.cc" -yy61: +#line 467 "scanner.cc" +yy76: yych = *++YYCURSOR; - goto yy75; -yy62: + goto yy90; +yy77: ++YYCURSOR; -#line 235 "scanner.re" +#line 253 "scanner.re" { cur = cursor; yylval.regexp = mkDot(); return RANGE; } -#line 418 "scanner.cc" -yy64: +#line 478 "scanner.cc" +yy79: ++YYCURSOR; yych = *YYCURSOR; - goto yy73; -yy65: -#line 240 "scanner.re" + goto yy88; +yy80: +#line 258 "scanner.re" { goto scan; } -#line 426 "scanner.cc" -yy66: +#line 486 "scanner.cc" +yy81: ++YYCURSOR; -yy67: -#line 242 "scanner.re" +yy82: +#line 260 "scanner.re" { if(cursor == eof) RETURN(0); pos = cursor; cline++; goto scan; } -#line 435 "scanner.cc" -yy68: +#line 495 "scanner.cc" +yy83: ++YYCURSOR; - if((yych = *YYCURSOR) == 0x0A) goto yy71; -yy69: -#line 247 "scanner.re" + if((yych = *YYCURSOR) == 0x0A) goto yy86; +yy84: +#line 265 "scanner.re" { std::ostringstream msg; msg << "unexpected character: "; prtChOrHex(msg, *tok); fatal(msg.str().c_str()); goto scan; } -#line 447 "scanner.cc" -yy70: +#line 507 "scanner.cc" +yy85: yych = *++YYCURSOR; - goto yy69; -yy71: + goto yy84; +yy86: yych = *++YYCURSOR; - goto yy67; -yy72: + goto yy82; +yy87: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; -yy73: - if(yych == 0x09) goto yy72; - if(yych == ' ') goto yy72; - goto yy65; -yy74: +yy88: + if(yych == 0x09) goto yy87; + if(yych == ' ') goto yy87; + goto yy80; +yy89: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; -yy75: +yy90: if(yych <= '@') { - if(yych <= '/') goto yy60; - if(yych <= '9') goto yy74; - goto yy60; + if(yych <= '/') goto yy75; + if(yych <= '9') goto yy89; + goto yy75; } else { - if(yych <= 'Z') goto yy74; - if(yych <= '`') goto yy60; - if(yych <= 'z') goto yy74; - goto yy60; + if(yych <= 'Z') goto yy89; + if(yych <= '`') goto yy75; + if(yych <= 'z') goto yy89; + goto yy75; } -yy76: +yy91: yych = *++YYCURSOR; - if(yych != '2') goto yy75; + if(yych != '2') goto yy90; yych = *++YYCURSOR; - if(yych != 'c') goto yy75; + if(yych != 'c') goto yy90; yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if(yych != ':') goto yy75; -yy79: + if(yych != ':') goto yy90; +yy94: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; - if(yych <= '@') goto yy80; - if(yych <= 'Z') goto yy81; - if(yych <= '`') goto yy80; - if(yych <= 'z') goto yy81; -yy80: + if(yych <= '@') goto yy95; + if(yych <= 'Z') goto yy96; + if(yych <= '`') goto yy95; + if(yych <= 'z') goto yy96; +yy95: YYCURSOR = YYMARKER; switch(yyaccept) { - case 0: goto yy46; - case 1: goto yy52; - case 2: goto yy54; - case 3: goto yy56; - case 6: goto yy112; - case 5: goto yy83; - case 4: goto yy60; + case 0: goto yy61; + case 1: goto yy67; + case 2: goto yy69; + case 3: goto yy71; + case 6: goto yy127; + case 5: goto yy98; + case 4: goto yy75; } -yy81: +yy96: yyaccept = 5; YYMARKER = ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; if(yych <= 'Z') { if(yych <= '9') { - if(yych >= '0') goto yy81; + if(yych >= '0') goto yy96; } else { - if(yych <= ':') goto yy79; - if(yych >= 'A') goto yy81; + if(yych <= ':') goto yy94; + if(yych >= 'A') goto yy96; } } else { if(yych <= '_') { - if(yych >= '_') goto yy81; + if(yych >= '_') goto yy96; } else { - if(yych <= '`') goto yy83; - if(yych <= 'z') goto yy81; + if(yych <= '`') goto yy98; + if(yych <= 'z') goto yy96; } } -yy83: -#line 224 "scanner.re" +yy98: +#line 242 "scanner.re" { cur = cursor; tok+= 5; /* skip "re2c:" */ iscfg = 1; yylval.str = new Str(token()); return CONFIG; } -#line 532 "scanner.cc" -yy84: +#line 592 "scanner.cc" +yy99: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; -yy85: +yy100: if(yych <= '[') { - if(yych == 0x0A) goto yy80; - goto yy84; + if(yych == 0x0A) goto yy95; + goto yy99; } else { - if(yych <= '\\') goto yy88; - if(yych <= ']') goto yy89; - goto yy84; + if(yych <= '\\') goto yy103; + if(yych <= ']') goto yy104; + goto yy99; } -yy86: +yy101: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; if(yych <= '[') { - if(yych == 0x0A) goto yy80; - goto yy86; + if(yych == 0x0A) goto yy95; + goto yy101; } else { - if(yych <= '\\') goto yy91; - if(yych <= ']') goto yy92; - goto yy86; + if(yych <= '\\') goto yy106; + if(yych <= ']') goto yy107; + goto yy101; } -yy88: +yy103: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; - if(yych == 0x0A) goto yy80; - goto yy84; -yy89: + if(yych == 0x0A) goto yy95; + goto yy99; +yy104: ++YYCURSOR; -#line 196 "scanner.re" +#line 214 "scanner.re" { cur = cursor; yylval.regexp = ranToRE(token()); return RANGE; } -#line 570 "scanner.cc" -yy91: +#line 630 "scanner.cc" +yy106: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; - if(yych == 0x0A) goto yy80; - goto yy86; -yy92: + if(yych == 0x0A) goto yy95; + goto yy101; +yy107: ++YYCURSOR; -#line 192 "scanner.re" +#line 210 "scanner.re" { cur = cursor; yylval.regexp = invToRE(token()); return RANGE; } -#line 583 "scanner.cc" -yy94: +#line 643 "scanner.cc" +yy109: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; -yy95: +yy110: if(yych <= '&') { - if(yych == 0x0A) goto yy80; - goto yy94; + if(yych == 0x0A) goto yy95; + goto yy109; } else { - if(yych <= '\'') goto yy97; - if(yych != '\\') goto yy94; + if(yych <= '\'') goto yy112; + if(yych != '\\') goto yy109; } ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; - if(yych == 0x0A) goto yy80; - goto yy94; -yy97: + if(yych == 0x0A) goto yy95; + goto yy109; +yy112: ++YYCURSOR; -#line 185 "scanner.re" +#line 203 "scanner.re" { cur = cursor; yylval.regexp = strToCaseInsensitiveRE(token()); return STRING; } -#line 607 "scanner.cc" -yy99: +#line 667 "scanner.cc" +yy114: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; -yy100: +yy115: if(yych <= '!') { - if(yych == 0x0A) goto yy80; - goto yy99; + if(yych == 0x0A) goto yy95; + goto yy114; } else { - if(yych <= '"') goto yy102; - if(yych != '\\') goto yy99; + if(yych <= '"') goto yy117; + if(yych != '\\') goto yy114; } ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; - if(yych == 0x0A) goto yy80; - goto yy99; -yy102: + if(yych == 0x0A) goto yy95; + goto yy114; +yy117: ++YYCURSOR; -#line 181 "scanner.re" +#line 199 "scanner.re" { cur = cursor; yylval.regexp = strToRE(token()); return STRING; } -#line 631 "scanner.cc" -yy104: +#line 691 "scanner.cc" +yy119: ++YYCURSOR; -#line 178 "scanner.re" +#line 196 "scanner.re" { tok = cursor; RETURN(0); } -#line 637 "scanner.cc" -yy106: +#line 697 "scanner.cc" +yy121: ++YYCURSOR; -#line 175 "scanner.re" +#line 193 "scanner.re" { depth = 1; goto comment; } -#line 643 "scanner.cc" -yy108: +#line 703 "scanner.cc" +yy123: yych = *++YYCURSOR; - if(yych == ',') goto yy122; - goto yy110; -yy109: + if(yych == ',') goto yy137; + goto yy125; +yy124: ++YYCURSOR; if((YYLIMIT - YYCURSOR) < 2) YYFILL(2); yych = *YYCURSOR; -yy110: +yy125: if(yych <= '/') { - if(yych == ',') goto yy115; - goto yy80; + if(yych == ',') goto yy130; + goto yy95; } else { - if(yych <= '9') goto yy109; - if(yych == '}') goto yy113; - goto yy80; + if(yych <= '9') goto yy124; + if(yych == '}') goto yy128; + goto yy95; } -yy111: +yy126: ++YYCURSOR; -yy112: -#line 222 "scanner.re" +yy127: +#line 240 "scanner.re" { fatal("illegal closure form, use '{n}', '{n,}', '{n,m}' where n and m are numbers"); } -#line 666 "scanner.cc" -yy113: +#line 726 "scanner.cc" +yy128: ++YYCURSOR; -#line 210 "scanner.re" +#line 228 "scanner.re" { yylval.extop.minsize = atoi((char *)tok+1); yylval.extop.maxsize = atoi((char *)tok+1); RETURN(CLOSESIZE); } -#line 673 "scanner.cc" -yy115: +#line 733 "scanner.cc" +yy130: yyaccept = 6; yych = *(YYMARKER = ++YYCURSOR); - if(yych <= '/') goto yy112; - if(yych <= '9') goto yy118; - if(yych != '}') goto yy112; + if(yych <= '/') goto yy127; + if(yych <= '9') goto yy133; + if(yych != '}') goto yy127; ++YYCURSOR; -#line 218 "scanner.re" +#line 236 "scanner.re" { yylval.extop.minsize = atoi((char *)tok+1); yylval.extop.maxsize = -1; RETURN(CLOSESIZE); } -#line 685 "scanner.cc" -yy118: +#line 745 "scanner.cc" +yy133: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; - if(yych <= '/') goto yy80; - if(yych <= '9') goto yy118; - if(yych != '}') goto yy80; + if(yych <= '/') goto yy95; + if(yych <= '9') goto yy133; + if(yych != '}') goto yy95; ++YYCURSOR; -#line 214 "scanner.re" +#line 232 "scanner.re" { yylval.extop.minsize = atoi((char *)tok+1); yylval.extop.maxsize = MAX(yylval.extop.minsize,atoi(strchr((char *)tok, ',')+1)); RETURN(CLOSESIZE); } -#line 698 "scanner.cc" -yy122: +#line 758 "scanner.cc" +yy137: yyaccept = 6; yych = *(YYMARKER = ++YYCURSOR); - if(yych <= '/') goto yy112; - if(yych <= '9') goto yy118; - if(yych != '}') goto yy112; + if(yych <= '/') goto yy127; + if(yych <= '9') goto yy133; + if(yych != '}') goto yy127; ++YYCURSOR; -#line 207 "scanner.re" +#line 225 "scanner.re" { yylval.op = '*'; RETURN(CLOSE); } -#line 709 "scanner.cc" +#line 769 "scanner.cc" } -#line 253 "scanner.re" +#line 271 "scanner.re" code: -#line 716 "scanner.cc" +#line 776 "scanner.cc" { YYCTYPE yych; if((YYLIMIT - YYCURSOR) < 2) YYFILL(2); yych = *YYCURSOR; if(yych <= '&') { if(yych <= 0x0A) { - if(yych <= 0x09) goto yy133; - goto yy131; + if(yych <= 0x09) goto yy148; + goto yy146; } else { - if(yych == '"') goto yy135; - goto yy133; + if(yych == '"') goto yy150; + goto yy148; } } else { if(yych <= '{') { - if(yych <= '\'') goto yy136; - if(yych <= 'z') goto yy133; - goto yy129; + if(yych <= '\'') goto yy151; + if(yych <= 'z') goto yy148; + goto yy144; } else { - if(yych != '}') goto yy133; + if(yych != '}') goto yy148; } } ++YYCURSOR; -#line 257 "scanner.re" +#line 275 "scanner.re" { if(--depth == 0){ cur = cursor; yylval.token = new Token(token(), tline); return CODE; } goto code; } -#line 746 "scanner.cc" -yy129: +#line 806 "scanner.cc" +yy144: ++YYCURSOR; -#line 263 "scanner.re" +#line 281 "scanner.re" { ++depth; goto code; } -#line 752 "scanner.cc" -yy131: +#line 812 "scanner.cc" +yy146: ++YYCURSOR; -#line 265 "scanner.re" +#line 283 "scanner.re" { if(cursor == eof) fatal("missing '}'"); pos = cursor; cline++; goto code; } -#line 760 "scanner.cc" -yy133: +#line 820 "scanner.cc" +yy148: ++YYCURSOR; -yy134: -#line 269 "scanner.re" +yy149: +#line 287 "scanner.re" { goto code; } -#line 766 "scanner.cc" -yy135: +#line 826 "scanner.cc" +yy150: yych = *(YYMARKER = ++YYCURSOR); - if(yych == 0x0A) goto yy134; - goto yy142; -yy136: + if(yych == 0x0A) goto yy149; + goto yy157; +yy151: yych = *(YYMARKER = ++YYCURSOR); - if(yych == 0x0A) goto yy134; - goto yy138; -yy137: + if(yych == 0x0A) goto yy149; + goto yy153; +yy152: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; -yy138: +yy153: if(yych <= '&') { - if(yych != 0x0A) goto yy137; + if(yych != 0x0A) goto yy152; } else { - if(yych <= '\'') goto yy133; - if(yych == '\\') goto yy140; - goto yy137; + if(yych <= '\'') goto yy148; + if(yych == '\\') goto yy155; + goto yy152; } -yy139: +yy154: YYCURSOR = YYMARKER; - goto yy134; -yy140: + goto yy149; +yy155: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; - if(yych == 0x0A) goto yy139; - goto yy137; -yy141: + if(yych == 0x0A) goto yy154; + goto yy152; +yy156: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; -yy142: +yy157: if(yych <= '!') { - if(yych == 0x0A) goto yy139; - goto yy141; + if(yych == 0x0A) goto yy154; + goto yy156; } else { - if(yych <= '"') goto yy133; - if(yych != '\\') goto yy141; + if(yych <= '"') goto yy148; + if(yych != '\\') goto yy156; } ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; - if(yych == 0x0A) goto yy139; - goto yy141; + if(yych == 0x0A) goto yy154; + goto yy156; } -#line 270 "scanner.re" +#line 288 "scanner.re" comment: -#line 819 "scanner.cc" +#line 879 "scanner.cc" { YYCTYPE yych; if((YYLIMIT - YYCURSOR) < 2) YYFILL(2); yych = *YYCURSOR; if(yych <= ')') { - if(yych == 0x0A) goto yy149; - goto yy151; + if(yych == 0x0A) goto yy164; + goto yy166; } else { - if(yych <= '*') goto yy146; - if(yych == '/') goto yy148; - goto yy151; + if(yych <= '*') goto yy161; + if(yych == '/') goto yy163; + goto yy166; } -yy146: +yy161: ++YYCURSOR; - if((yych = *YYCURSOR) == '/') goto yy154; -yy147: -#line 285 "scanner.re" + if((yych = *YYCURSOR) == '/') goto yy169; +yy162: +#line 303 "scanner.re" { if(cursor == eof) RETURN(0); goto comment; } -#line 839 "scanner.cc" -yy148: +#line 899 "scanner.cc" +yy163: yych = *++YYCURSOR; - if(yych == '*') goto yy152; - goto yy147; -yy149: + if(yych == '*') goto yy167; + goto yy162; +yy164: ++YYCURSOR; -#line 281 "scanner.re" +#line 299 "scanner.re" { if(cursor == eof) RETURN(0); tok = pos = cursor; cline++; goto comment; } -#line 851 "scanner.cc" -yy151: +#line 911 "scanner.cc" +yy166: yych = *++YYCURSOR; - goto yy147; -yy152: + goto yy162; +yy167: ++YYCURSOR; -#line 278 "scanner.re" +#line 296 "scanner.re" { ++depth; fatal("ambiguous /* found"); goto comment; } -#line 861 "scanner.cc" -yy154: +#line 921 "scanner.cc" +yy169: ++YYCURSOR; -#line 274 "scanner.re" +#line 292 "scanner.re" { if(--depth == 0) goto scan; else goto comment; } -#line 869 "scanner.cc" +#line 929 "scanner.cc" } -#line 287 "scanner.re" +#line 305 "scanner.re" config: -#line 876 "scanner.cc" +#line 936 "scanner.cc" { YYCTYPE yych; if((YYLIMIT - YYCURSOR) < 2) YYFILL(2); yych = *YYCURSOR; if(yych <= 0x1F) { - if(yych != 0x09) goto yy162; + if(yych != 0x09) goto yy177; } else { - if(yych <= ' ') goto yy158; - if(yych == '=') goto yy160; - goto yy162; + if(yych <= ' ') goto yy173; + if(yych == '=') goto yy175; + goto yy177; } -yy158: +yy173: ++YYCURSOR; yych = *YYCURSOR; - goto yy167; -yy159: -#line 291 "scanner.re" + goto yy182; +yy174: +#line 309 "scanner.re" { goto config; } -#line 895 "scanner.cc" -yy160: +#line 955 "scanner.cc" +yy175: ++YYCURSOR; yych = *YYCURSOR; - goto yy165; -yy161: -#line 292 "scanner.re" + goto yy180; +yy176: +#line 310 "scanner.re" { iscfg = 2; cur = cursor; RETURN('='); } -#line 906 "scanner.cc" -yy162: +#line 966 "scanner.cc" +yy177: ++YYCURSOR; -#line 296 "scanner.re" +#line 314 "scanner.re" { fatal("missing '='"); } -#line 911 "scanner.cc" -yy164: +#line 971 "scanner.cc" +yy179: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; -yy165: - if(yych == 0x09) goto yy164; - if(yych == ' ') goto yy164; - goto yy161; -yy166: +yy180: + if(yych == 0x09) goto yy179; + if(yych == ' ') goto yy179; + goto yy176; +yy181: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; -yy167: - if(yych == 0x09) goto yy166; - if(yych == ' ') goto yy166; - goto yy159; +yy182: + if(yych == 0x09) goto yy181; + if(yych == ' ') goto yy181; + goto yy174; } -#line 297 "scanner.re" +#line 315 "scanner.re" value: -#line 934 "scanner.cc" +#line 994 "scanner.cc" { YYCTYPE yych; if((YYLIMIT - YYCURSOR) < 2) YYFILL(2); yych = *YYCURSOR; if(yych <= '&') { if(yych <= 0x0D) { - if(yych <= 0x08) goto yy176; - if(yych <= 0x0A) goto yy170; - if(yych <= 0x0C) goto yy176; + if(yych <= 0x08) goto yy191; + if(yych <= 0x0A) goto yy185; + if(yych <= 0x0C) goto yy191; } else { if(yych <= ' ') { - if(yych <= 0x1F) goto yy176; + if(yych <= 0x1F) goto yy191; } else { - if(yych == '"') goto yy178; - goto yy176; + if(yych == '"') goto yy193; + goto yy191; } } } else { if(yych <= '/') { - if(yych <= '\'') goto yy180; - if(yych == '-') goto yy173; - goto yy176; + if(yych <= '\'') goto yy195; + if(yych == '-') goto yy188; + goto yy191; } else { if(yych <= '9') { - if(yych <= '0') goto yy171; - goto yy174; + if(yych <= '0') goto yy186; + goto yy189; } else { - if(yych != ';') goto yy176; + if(yych != ';') goto yy191; } } } -yy170: -#line 306 "scanner.re" +yy185: +#line 324 "scanner.re" { cur = cursor; yylval.str = new Str(token()); iscfg = 0; return VALUE; } -#line 973 "scanner.cc" -yy171: +#line 1033 "scanner.cc" +yy186: ++YYCURSOR; if((yych = *YYCURSOR) <= 0x0D) { - if(yych <= 0x08) goto yy176; - if(yych <= 0x0A) goto yy172; - if(yych <= 0x0C) goto yy176; + if(yych <= 0x08) goto yy191; + if(yych <= 0x0A) goto yy187; + if(yych <= 0x0C) goto yy191; } else { if(yych <= ' ') { - if(yych <= 0x1F) goto yy176; + if(yych <= 0x1F) goto yy191; } else { - if(yych != ';') goto yy176; + if(yych != ';') goto yy191; } } -yy172: -#line 301 "scanner.re" +yy187: +#line 319 "scanner.re" { cur = cursor; yylval.number = atoi(token().to_string().c_str()); iscfg = 0; return NUMBER; } -#line 994 "scanner.cc" -yy173: +#line 1054 "scanner.cc" +yy188: yych = *++YYCURSOR; - if(yych <= '0') goto yy177; - if(yych >= ':') goto yy177; -yy174: + if(yych <= '0') goto yy192; + if(yych >= ':') goto yy192; +yy189: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; if(yych <= 0x1F) { if(yych <= 0x0A) { - if(yych >= 0x09) goto yy172; + if(yych >= 0x09) goto yy187; } else { - if(yych == 0x0D) goto yy172; + if(yych == 0x0D) goto yy187; } } else { if(yych <= '9') { - if(yych <= ' ') goto yy172; - if(yych >= '0') goto yy174; + if(yych <= ' ') goto yy187; + if(yych >= '0') goto yy189; } else { - if(yych == ';') goto yy172; + if(yych == ';') goto yy187; } } -yy176: +yy191: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; -yy177: +yy192: if(yych <= 0x0D) { - if(yych <= 0x08) goto yy176; - if(yych <= 0x0A) goto yy170; - if(yych <= 0x0C) goto yy176; - goto yy170; + if(yych <= 0x08) goto yy191; + if(yych <= 0x0A) goto yy185; + if(yych <= 0x0C) goto yy191; + goto yy185; } else { if(yych <= ' ') { - if(yych <= 0x1F) goto yy176; - goto yy170; + if(yych <= 0x1F) goto yy191; + goto yy185; } else { - if(yych == ';') goto yy170; - goto yy176; + if(yych == ';') goto yy185; + goto yy191; } } -yy178: +yy193: YYMARKER = ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; if(yych <= ' ') { if(yych <= 0x0A) { - if(yych <= 0x08) goto yy178; - if(yych <= 0x09) goto yy188; - goto yy170; + if(yych <= 0x08) goto yy193; + if(yych <= 0x09) goto yy203; + goto yy185; } else { - if(yych == 0x0D) goto yy188; - if(yych <= 0x1F) goto yy178; - goto yy188; + if(yych == 0x0D) goto yy203; + if(yych <= 0x1F) goto yy193; + goto yy203; } } else { if(yych <= ':') { - if(yych == '"') goto yy176; - goto yy178; + if(yych == '"') goto yy191; + goto yy193; } else { - if(yych <= ';') goto yy188; - if(yych == '\\') goto yy190; - goto yy178; + if(yych <= ';') goto yy203; + if(yych == '\\') goto yy205; + goto yy193; } } -yy180: +yy195: YYMARKER = ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; if(yych <= ' ') { if(yych <= 0x0A) { - if(yych <= 0x08) goto yy180; - if(yych >= 0x0A) goto yy170; + if(yych <= 0x08) goto yy195; + if(yych >= 0x0A) goto yy185; } else { - if(yych == 0x0D) goto yy182; - if(yych <= 0x1F) goto yy180; + if(yych == 0x0D) goto yy197; + if(yych <= 0x1F) goto yy195; } } else { if(yych <= ':') { - if(yych == '\'') goto yy176; - goto yy180; + if(yych == '\'') goto yy191; + goto yy195; } else { - if(yych <= ';') goto yy182; - if(yych == '\\') goto yy185; - goto yy180; + if(yych <= ';') goto yy197; + if(yych == '\\') goto yy200; + goto yy195; } } -yy182: +yy197: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; if(yych <= '&') { - if(yych != 0x0A) goto yy182; + if(yych != 0x0A) goto yy197; } else { - if(yych <= '\'') goto yy186; - if(yych == '\\') goto yy187; - goto yy182; + if(yych <= '\'') goto yy201; + if(yych == '\\') goto yy202; + goto yy197; } -yy184: +yy199: YYCURSOR = YYMARKER; - goto yy170; -yy185: + goto yy185; +yy200: YYMARKER = ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; if(yych <= 0x0D) { if(yych <= 0x09) { - if(yych <= 0x08) goto yy180; - goto yy182; + if(yych <= 0x08) goto yy195; + goto yy197; } else { - if(yych <= 0x0A) goto yy170; - if(yych <= 0x0C) goto yy180; - goto yy182; + if(yych <= 0x0A) goto yy185; + if(yych <= 0x0C) goto yy195; + goto yy197; } } else { if(yych <= ' ') { - if(yych <= 0x1F) goto yy180; - goto yy182; + if(yych <= 0x1F) goto yy195; + goto yy197; } else { - if(yych == ';') goto yy182; - goto yy180; + if(yych == ';') goto yy197; + goto yy195; } } -yy186: +yy201: yych = *++YYCURSOR; - goto yy170; -yy187: + goto yy185; +yy202: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; - if(yych == 0x0A) goto yy184; - goto yy182; -yy188: + if(yych == 0x0A) goto yy199; + goto yy197; +yy203: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; if(yych <= '!') { - if(yych == 0x0A) goto yy184; - goto yy188; + if(yych == 0x0A) goto yy199; + goto yy203; } else { - if(yych <= '"') goto yy186; - if(yych == '\\') goto yy191; - goto yy188; + if(yych <= '"') goto yy201; + if(yych == '\\') goto yy206; + goto yy203; } -yy190: +yy205: YYMARKER = ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; if(yych <= 0x0D) { if(yych <= 0x09) { - if(yych <= 0x08) goto yy178; - goto yy188; + if(yych <= 0x08) goto yy193; + goto yy203; } else { - if(yych <= 0x0A) goto yy170; - if(yych <= 0x0C) goto yy178; - goto yy188; + if(yych <= 0x0A) goto yy185; + if(yych <= 0x0C) goto yy193; + goto yy203; } } else { if(yych <= ' ') { - if(yych <= 0x1F) goto yy178; - goto yy188; + if(yych <= 0x1F) goto yy193; + goto yy203; } else { - if(yych == ';') goto yy188; - goto yy178; + if(yych == ';') goto yy203; + goto yy193; } } -yy191: +yy206: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; - if(yych == 0x0A) goto yy184; - goto yy188; + if(yych == 0x0A) goto yy199; + goto yy203; } -#line 311 "scanner.re" +#line 329 "scanner.re" } diff --git a/htdocs/index.html b/htdocs/index.html index e03e4d26..b8c1daf3 100755 --- a/htdocs/index.html +++ b/htdocs/index.html @@ -78,6 +78,8 @@ provide re2c packages.

Changelog

2006-04-13: 0.10.2