|
|
1.1 ! root 1: #ifndef lint ! 2: char yysccsid[] = "@(#)yaccpar 1.3 (Berkeley) 01/21/90"; ! 3: #endif ! 4: #define YYERRCODE 256 ! 5: short yylhs[] = { -1, ! 6: 0, ! 7: }; ! 8: short yylen[] = { 2, ! 9: 1, ! 10: }; ! 11: short yydefred[] = { 0, ! 12: 1, 0, ! 13: }; ! 14: short yydgoto[] = { 2, ! 15: }; ! 16: short yysindex[] = { -256, ! 17: 0, 0, ! 18: }; ! 19: short yyrindex[] = { 0, ! 20: 0, 0, ! 21: }; ! 22: short yygindex[] = { 0, ! 23: }; ! 24: #define YYTABLESIZE 0 ! 25: short yytable[] = { 1, ! 26: }; ! 27: short yycheck[] = { 256, ! 28: }; ! 29: #define YYFINAL 2 ! 30: #ifndef YYDEBUG ! 31: #define YYDEBUG 0 ! 32: #endif ! 33: #define YYMAXTOKEN 0 ! 34: #if YYDEBUG ! 35: char *yyname[] = { ! 36: "end-of-file", ! 37: }; ! 38: char *yyrule[] = { ! 39: "$accept : S", ! 40: "S : error", ! 41: }; ! 42: #endif ! 43: #ifndef YYSTYPE ! 44: typedef int YYSTYPE; ! 45: #endif ! 46: #define yyclearin (yychar=(-1)) ! 47: #define yyerrok (yyerrflag=0) ! 48: #ifndef YYSTACKSIZE ! 49: #ifdef YYMAXDEPTH ! 50: #define YYSTACKSIZE YYMAXDEPTH ! 51: #else ! 52: #define YYSTACKSIZE 300 ! 53: #endif ! 54: #endif ! 55: int yydebug; ! 56: int yynerrs; ! 57: int yyerrflag; ! 58: int yychar; ! 59: short *yyssp; ! 60: YYSTYPE *yyvsp; ! 61: YYSTYPE yyval; ! 62: YYSTYPE yylval; ! 63: #define yystacksize YYSTACKSIZE ! 64: short yyss[YYSTACKSIZE]; ! 65: YYSTYPE yyvs[YYSTACKSIZE]; ! 66: #line 4 "error.y" ! 67: main(){printf("yyparse() = %d\n",yyparse());} ! 68: yylex(){return-1;} ! 69: yyerror(s)char*s;{printf("%s\n",s);} ! 70: #line 70 "error.tab.c" ! 71: #define YYABORT goto yyabort ! 72: #define YYACCEPT goto yyaccept ! 73: #define YYERROR goto yyerrlab ! 74: int ! 75: yyparse() ! 76: { ! 77: register int yym, yyn, yystate; ! 78: #if YYDEBUG ! 79: register char *yys; ! 80: extern char *getenv(); ! 81: ! 82: if (yys = getenv("YYDEBUG")) ! 83: { ! 84: yyn = *yys; ! 85: if (yyn == '0') ! 86: yydebug = 0; ! 87: else if (yyn >= '1' && yyn <= '9') ! 88: yydebug = yyn - '0'; ! 89: } ! 90: #endif ! 91: ! 92: yynerrs = 0; ! 93: yyerrflag = 0; ! 94: yychar = (-1); ! 95: ! 96: yyssp = yyss; ! 97: yyvsp = yyvs; ! 98: *yyssp = yystate = 0; ! 99: ! 100: yyloop: ! 101: if (yyn = yydefred[yystate]) goto yyreduce; ! 102: if (yychar < 0) ! 103: { ! 104: if ((yychar = yylex()) < 0) yychar = 0; ! 105: #if YYDEBUG ! 106: if (yydebug) ! 107: { ! 108: yys = 0; ! 109: if (yychar <= YYMAXTOKEN) yys = yyname[yychar]; ! 110: if (!yys) yys = "illegal-symbol"; ! 111: printf("yydebug: state %d, reading %d (%s)\n", yystate, ! 112: yychar, yys); ! 113: } ! 114: #endif ! 115: } ! 116: if ((yyn = yysindex[yystate]) && (yyn += yychar) >= 0 && ! 117: yyn <= YYTABLESIZE && yycheck[yyn] == yychar) ! 118: { ! 119: #if YYDEBUG ! 120: if (yydebug) ! 121: printf("yydebug: state %d, shifting to state %d\n", ! 122: yystate, yytable[yyn]); ! 123: #endif ! 124: if (yyssp >= yyss + yystacksize - 1) ! 125: { ! 126: goto yyoverflow; ! 127: } ! 128: *++yyssp = yystate = yytable[yyn]; ! 129: *++yyvsp = yylval; ! 130: yychar = (-1); ! 131: if (yyerrflag > 0) --yyerrflag; ! 132: goto yyloop; ! 133: } ! 134: if ((yyn = yyrindex[yystate]) && (yyn += yychar) >= 0 && ! 135: yyn <= YYTABLESIZE && yycheck[yyn] == yychar) ! 136: { ! 137: yyn = yytable[yyn]; ! 138: goto yyreduce; ! 139: } ! 140: if (yyerrflag) goto yyinrecovery; ! 141: #ifdef lint ! 142: goto yynewerror; ! 143: #endif ! 144: yynewerror: ! 145: yyerror("syntax error"); ! 146: #ifdef lint ! 147: goto yyerrlab; ! 148: #endif ! 149: yyerrlab: ! 150: ++yynerrs; ! 151: yyinrecovery: ! 152: if (yyerrflag < 3) ! 153: { ! 154: yyerrflag = 3; ! 155: for (;;) ! 156: { ! 157: if ((yyn = yysindex[*yyssp]) && (yyn += YYERRCODE) >= 0 && ! 158: yyn <= YYTABLESIZE && yycheck[yyn] == YYERRCODE) ! 159: { ! 160: #if YYDEBUG ! 161: if (yydebug) ! 162: printf("yydebug: state %d, error recovery shifting\ ! 163: to state %d\n", *yyssp, yytable[yyn]); ! 164: #endif ! 165: if (yyssp >= yyss + yystacksize - 1) ! 166: { ! 167: goto yyoverflow; ! 168: } ! 169: *++yyssp = yystate = yytable[yyn]; ! 170: *++yyvsp = yylval; ! 171: goto yyloop; ! 172: } ! 173: else ! 174: { ! 175: #if YYDEBUG ! 176: if (yydebug) ! 177: printf("yydebug: error recovery discarding state %d\n", ! 178: *yyssp); ! 179: #endif ! 180: if (yyssp <= yyss) goto yyabort; ! 181: --yyssp; ! 182: --yyvsp; ! 183: } ! 184: } ! 185: } ! 186: else ! 187: { ! 188: if (yychar == 0) goto yyabort; ! 189: #if YYDEBUG ! 190: if (yydebug) ! 191: { ! 192: yys = 0; ! 193: if (yychar <= YYMAXTOKEN) yys = yyname[yychar]; ! 194: if (!yys) yys = "illegal-symbol"; ! 195: printf("yydebug: state %d, error recovery discards token %d (%s)\n", ! 196: yystate, yychar, yys); ! 197: } ! 198: #endif ! 199: yychar = (-1); ! 200: goto yyloop; ! 201: } ! 202: yyreduce: ! 203: #if YYDEBUG ! 204: if (yydebug) ! 205: printf("yydebug: state %d, reducing by rule %d (%s)\n", ! 206: yystate, yyn, yyrule[yyn]); ! 207: #endif ! 208: yym = yylen[yyn]; ! 209: yyval = yyvsp[1-yym]; ! 210: switch (yyn) ! 211: { ! 212: } ! 213: yyssp -= yym; ! 214: yystate = *yyssp; ! 215: yyvsp -= yym; ! 216: yym = yylhs[yyn]; ! 217: if (yystate == 0 && yym == 0) ! 218: { ! 219: #ifdef YYDEBUG ! 220: if (yydebug) ! 221: printf("yydebug: after reduction, shifting from state 0 to\ ! 222: state %d\n", YYFINAL); ! 223: #endif ! 224: yystate = YYFINAL; ! 225: *++yyssp = YYFINAL; ! 226: *++yyvsp = yyval; ! 227: if (yychar < 0) ! 228: { ! 229: if ((yychar = yylex()) < 0) yychar = 0; ! 230: #if YYDEBUG ! 231: if (yydebug) ! 232: { ! 233: yys = 0; ! 234: if (yychar <= YYMAXTOKEN) yys = yyname[yychar]; ! 235: if (!yys) yys = "illegal-symbol"; ! 236: printf("yydebug: state %d, reading %d (%s)\n", ! 237: YYFINAL, yychar, yys); ! 238: } ! 239: #endif ! 240: } ! 241: if (yychar == 0) goto yyaccept; ! 242: goto yyloop; ! 243: } ! 244: if ((yyn = yygindex[yym]) && (yyn += yystate) >= 0 && ! 245: yyn <= YYTABLESIZE && yycheck[yyn] == yystate) ! 246: yystate = yytable[yyn]; ! 247: else ! 248: yystate = yydgoto[yym]; ! 249: #ifdef YYDEBUG ! 250: if (yydebug) ! 251: printf("yydebug: after reduction, shifting from state %d \ ! 252: to state %d\n", *yyssp, yystate); ! 253: #endif ! 254: if (yyssp >= yyss + yystacksize - 1) ! 255: { ! 256: goto yyoverflow; ! 257: } ! 258: *++yyssp = yystate; ! 259: *++yyvsp = yyval; ! 260: goto yyloop; ! 261: yyoverflow: ! 262: yyerror("yacc stack overflow"); ! 263: yyabort: ! 264: return (1); ! 265: yyaccept: ! 266: return (0); ! 267: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.