1264790Sbapt/* original parser id follows */
2264790Sbapt/* yysccsid[] = "@(#)yaccpar	1.9 (Berkeley) 02/21/93" */
3264790Sbapt/* (use YYMAJOR/YYMINOR for ifdefs dependent on parser version) */
4264790Sbapt
5264790Sbapt#define YYBYACC 1
6264790Sbapt#define YYMAJOR 1
7264790Sbapt#define YYMINOR 9
8264790Sbapt#define YYCHECK "yyyymmdd"
9264790Sbapt
10264790Sbapt#define YYEMPTY        (-1)
11264790Sbapt#define yyclearin      (yychar = YYEMPTY)
12264790Sbapt#define yyerrok        (yyerrflag = 0)
13264790Sbapt#define YYRECOVERING() (yyerrflag != 0)
14264790Sbapt#define YYENOMEM       (-2)
15264790Sbapt#define YYEOF          0
16264790Sbapt#line 17 "rename_debug.c"
17264790Sbapt#include "rename_debug.i"
18264790Sbapt#include "rename_debug.h"
19264790Sbapttypedef short YYINT;
20264790Sbaptstatic const YYINT yylhs[] = {                           -1,
21264790Sbapt    0,
22264790Sbapt};
23264790Sbaptstatic const YYINT yylen[] = {                            2,
24264790Sbapt    1,
25264790Sbapt};
26264790Sbaptstatic const YYINT yydefred[] = {                         0,
27264790Sbapt    1,    0,
28264790Sbapt};
29264790Sbaptstatic const YYINT yydgoto[] = {                          2,
30264790Sbapt};
31264790Sbaptstatic const YYINT yysindex[] = {                      -256,
32264790Sbapt    0,    0,
33264790Sbapt};
34264790Sbaptstatic const YYINT yyrindex[] = {                         0,
35264790Sbapt    0,    0,
36264790Sbapt};
37264790Sbaptstatic const YYINT yygindex[] = {                         0,
38264790Sbapt};
39264790Sbapt#define YYTABLESIZE 0
40264790Sbaptstatic const YYINT yytable[] = {                          1,
41264790Sbapt};
42264790Sbaptstatic const YYINT yycheck[] = {                        256,
43264790Sbapt};
44264790Sbapt#define YYFINAL 2
45264790Sbapt#ifndef YYDEBUG
46264790Sbapt#define YYDEBUG 1
47264790Sbapt#endif
48264790Sbapt#define YYMAXTOKEN 256
49264790Sbapt#define YYUNDFTOKEN 259
50264790Sbapt#define YYTRANSLATE(a) ((a) > YYMAXTOKEN ? YYUNDFTOKEN : (a))
51264790Sbapt#if YYDEBUG
52264790Sbaptstatic const char *const yyname[] = {
53264790Sbapt
54264790Sbapt"end-of-file",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
55264790Sbapt0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
56264790Sbapt0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
57264790Sbapt0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
58264790Sbapt0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
59264790Sbapt0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
60264790Sbapt0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"illegal-symbol",
61264790Sbapt};
62264790Sbaptstatic const char *const yyrule[] = {
63264790Sbapt"$accept : S",
64264790Sbapt"S : error",
65264790Sbapt
66264790Sbapt};
67264790Sbapt#endif
68264790Sbapt
69264790Sbaptint      yydebug;
70264790Sbaptint      yynerrs;
71264790Sbapt
72264790Sbaptint      yyerrflag;
73264790Sbaptint      yychar;
74264790SbaptYYSTYPE  yyval;
75264790SbaptYYSTYPE  yylval;
76264790Sbapt
77264790Sbapt/* define the initial stack-sizes */
78264790Sbapt#ifdef YYSTACKSIZE
79264790Sbapt#undef YYMAXDEPTH
80264790Sbapt#define YYMAXDEPTH  YYSTACKSIZE
81264790Sbapt#else
82264790Sbapt#ifdef YYMAXDEPTH
83264790Sbapt#define YYSTACKSIZE YYMAXDEPTH
84264790Sbapt#else
85264790Sbapt#define YYSTACKSIZE 10000
86264790Sbapt#define YYMAXDEPTH  10000
87264790Sbapt#endif
88264790Sbapt#endif
89264790Sbapt
90264790Sbapt#define YYINITSTACKSIZE 200
91264790Sbapt
92264790Sbapttypedef struct {
93264790Sbapt    unsigned stacksize;
94264790Sbapt    YYINT    *s_base;
95264790Sbapt    YYINT    *s_mark;
96264790Sbapt    YYINT    *s_last;
97264790Sbapt    YYSTYPE  *l_base;
98264790Sbapt    YYSTYPE  *l_mark;
99264790Sbapt} YYSTACKDATA;
100264790Sbapt/* variables for the parser stack */
101264790Sbaptstatic YYSTACKDATA yystack;
102264790Sbapt#line 12 "code_debug.y"
103264790Sbapt
104264790Sbapt#include <stdio.h>
105264790Sbapt
106264790Sbapt#ifdef YYBYACC
107264790Sbaptextern int YYLEX_DECL();
108264790Sbapt#endif
109264790Sbapt
110264790Sbaptint
111264790Sbaptmain(void)
112264790Sbapt{
113264790Sbapt    printf("yyparse() = %d\n", yyparse());
114264790Sbapt    return 0;
115264790Sbapt}
116264790Sbapt
117264790Sbaptint
118264790Sbaptyylex(void)
119264790Sbapt{
120264790Sbapt    return -1;
121264790Sbapt}
122264790Sbapt
123264790Sbaptstatic void
124264790Sbaptyyerror(const char* s)
125264790Sbapt{
126264790Sbapt    printf("%s\n", s);
127264790Sbapt}
128264790Sbapt#line 130 "rename_debug.c"
129264790Sbapt
130264790Sbapt#if YYDEBUG
131264790Sbapt#include <stdio.h>		/* needed for printf */
132264790Sbapt#endif
133264790Sbapt
134264790Sbapt#include <stdlib.h>	/* needed for malloc, etc */
135264790Sbapt#include <string.h>	/* needed for memset */
136264790Sbapt
137264790Sbapt/* allocate initial stack or double stack size, up to YYMAXDEPTH */
138264790Sbaptstatic int yygrowstack(YYSTACKDATA *data)
139264790Sbapt{
140264790Sbapt    int i;
141264790Sbapt    unsigned newsize;
142264790Sbapt    YYINT *newss;
143264790Sbapt    YYSTYPE *newvs;
144264790Sbapt
145264790Sbapt    if ((newsize = data->stacksize) == 0)
146264790Sbapt        newsize = YYINITSTACKSIZE;
147264790Sbapt    else if (newsize >= YYMAXDEPTH)
148264790Sbapt        return YYENOMEM;
149264790Sbapt    else if ((newsize *= 2) > YYMAXDEPTH)
150264790Sbapt        newsize = YYMAXDEPTH;
151264790Sbapt
152264790Sbapt    i = (int) (data->s_mark - data->s_base);
153264790Sbapt    newss = (YYINT *)realloc(data->s_base, newsize * sizeof(*newss));
154264790Sbapt    if (newss == 0)
155264790Sbapt        return YYENOMEM;
156264790Sbapt
157264790Sbapt    data->s_base = newss;
158264790Sbapt    data->s_mark = newss + i;
159264790Sbapt
160264790Sbapt    newvs = (YYSTYPE *)realloc(data->l_base, newsize * sizeof(*newvs));
161264790Sbapt    if (newvs == 0)
162264790Sbapt        return YYENOMEM;
163264790Sbapt
164264790Sbapt    data->l_base = newvs;
165264790Sbapt    data->l_mark = newvs + i;
166264790Sbapt
167264790Sbapt    data->stacksize = newsize;
168264790Sbapt    data->s_last = data->s_base + newsize - 1;
169264790Sbapt    return 0;
170264790Sbapt}
171264790Sbapt
172264790Sbapt#if YYPURE || defined(YY_NO_LEAKS)
173264790Sbaptstatic void yyfreestack(YYSTACKDATA *data)
174264790Sbapt{
175264790Sbapt    free(data->s_base);
176264790Sbapt    free(data->l_base);
177264790Sbapt    memset(data, 0, sizeof(*data));
178264790Sbapt}
179264790Sbapt#else
180264790Sbapt#define yyfreestack(data) /* nothing */
181264790Sbapt#endif
182264790Sbapt
183264790Sbapt#define YYABORT  goto yyabort
184264790Sbapt#define YYREJECT goto yyabort
185264790Sbapt#define YYACCEPT goto yyaccept
186264790Sbapt#define YYERROR  goto yyerrlab
187264790Sbapt
188264790Sbaptint
189264790SbaptYYPARSE_DECL()
190264790Sbapt{
191264790Sbapt    int yym, yyn, yystate;
192264790Sbapt#if YYDEBUG
193264790Sbapt    const char *yys;
194264790Sbapt
195264790Sbapt    if ((yys = getenv("YYDEBUG")) != 0)
196264790Sbapt    {
197264790Sbapt        yyn = *yys;
198264790Sbapt        if (yyn >= '0' && yyn <= '9')
199264790Sbapt            yydebug = yyn - '0';
200264790Sbapt    }
201264790Sbapt#endif
202264790Sbapt
203264790Sbapt    yynerrs = 0;
204264790Sbapt    yyerrflag = 0;
205264790Sbapt    yychar = YYEMPTY;
206264790Sbapt    yystate = 0;
207264790Sbapt
208264790Sbapt#if YYPURE
209264790Sbapt    memset(&yystack, 0, sizeof(yystack));
210264790Sbapt#endif
211264790Sbapt
212264790Sbapt    if (yystack.s_base == NULL && yygrowstack(&yystack) == YYENOMEM) goto yyoverflow;
213264790Sbapt    yystack.s_mark = yystack.s_base;
214264790Sbapt    yystack.l_mark = yystack.l_base;
215264790Sbapt    yystate = 0;
216264790Sbapt    *yystack.s_mark = 0;
217264790Sbapt
218264790Sbaptyyloop:
219264790Sbapt    if ((yyn = yydefred[yystate]) != 0) goto yyreduce;
220264790Sbapt    if (yychar < 0)
221264790Sbapt    {
222264790Sbapt        if ((yychar = YYLEX) < 0) yychar = YYEOF;
223264790Sbapt#if YYDEBUG
224264790Sbapt        if (yydebug)
225264790Sbapt        {
226264790Sbapt            yys = yyname[YYTRANSLATE(yychar)];
227264790Sbapt            printf("%sdebug: state %d, reading %d (%s)\n",
228264790Sbapt                    YYPREFIX, yystate, yychar, yys);
229264790Sbapt        }
230264790Sbapt#endif
231264790Sbapt    }
232264790Sbapt    if ((yyn = yysindex[yystate]) && (yyn += yychar) >= 0 &&
233264790Sbapt            yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
234264790Sbapt    {
235264790Sbapt#if YYDEBUG
236264790Sbapt        if (yydebug)
237264790Sbapt            printf("%sdebug: state %d, shifting to state %d\n",
238264790Sbapt                    YYPREFIX, yystate, yytable[yyn]);
239264790Sbapt#endif
240264790Sbapt        if (yystack.s_mark >= yystack.s_last && yygrowstack(&yystack) == YYENOMEM)
241264790Sbapt        {
242264790Sbapt            goto yyoverflow;
243264790Sbapt        }
244264790Sbapt        yystate = yytable[yyn];
245264790Sbapt        *++yystack.s_mark = yytable[yyn];
246264790Sbapt        *++yystack.l_mark = yylval;
247264790Sbapt        yychar = YYEMPTY;
248264790Sbapt        if (yyerrflag > 0)  --yyerrflag;
249264790Sbapt        goto yyloop;
250264790Sbapt    }
251264790Sbapt    if ((yyn = yyrindex[yystate]) && (yyn += yychar) >= 0 &&
252264790Sbapt            yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
253264790Sbapt    {
254264790Sbapt        yyn = yytable[yyn];
255264790Sbapt        goto yyreduce;
256264790Sbapt    }
257264790Sbapt    if (yyerrflag) goto yyinrecovery;
258264790Sbapt
259264790Sbapt    YYERROR_CALL("syntax error");
260264790Sbapt
261264790Sbapt    goto yyerrlab;
262264790Sbapt
263264790Sbaptyyerrlab:
264264790Sbapt    ++yynerrs;
265264790Sbapt
266264790Sbaptyyinrecovery:
267264790Sbapt    if (yyerrflag < 3)
268264790Sbapt    {
269264790Sbapt        yyerrflag = 3;
270264790Sbapt        for (;;)
271264790Sbapt        {
272264790Sbapt            if ((yyn = yysindex[*yystack.s_mark]) && (yyn += YYERRCODE) >= 0 &&
273264790Sbapt                    yyn <= YYTABLESIZE && yycheck[yyn] == YYERRCODE)
274264790Sbapt            {
275264790Sbapt#if YYDEBUG
276264790Sbapt                if (yydebug)
277264790Sbapt                    printf("%sdebug: state %d, error recovery shifting\
278264790Sbapt to state %d\n", YYPREFIX, *yystack.s_mark, yytable[yyn]);
279264790Sbapt#endif
280264790Sbapt                if (yystack.s_mark >= yystack.s_last && yygrowstack(&yystack) == YYENOMEM)
281264790Sbapt                {
282264790Sbapt                    goto yyoverflow;
283264790Sbapt                }
284264790Sbapt                yystate = yytable[yyn];
285264790Sbapt                *++yystack.s_mark = yytable[yyn];
286264790Sbapt                *++yystack.l_mark = yylval;
287264790Sbapt                goto yyloop;
288264790Sbapt            }
289264790Sbapt            else
290264790Sbapt            {
291264790Sbapt#if YYDEBUG
292264790Sbapt                if (yydebug)
293264790Sbapt                    printf("%sdebug: error recovery discarding state %d\n",
294264790Sbapt                            YYPREFIX, *yystack.s_mark);
295264790Sbapt#endif
296264790Sbapt                if (yystack.s_mark <= yystack.s_base) goto yyabort;
297264790Sbapt                --yystack.s_mark;
298264790Sbapt                --yystack.l_mark;
299264790Sbapt            }
300264790Sbapt        }
301264790Sbapt    }
302264790Sbapt    else
303264790Sbapt    {
304264790Sbapt        if (yychar == YYEOF) goto yyabort;
305264790Sbapt#if YYDEBUG
306264790Sbapt        if (yydebug)
307264790Sbapt        {
308264790Sbapt            yys = yyname[YYTRANSLATE(yychar)];
309264790Sbapt            printf("%sdebug: state %d, error recovery discards token %d (%s)\n",
310264790Sbapt                    YYPREFIX, yystate, yychar, yys);
311264790Sbapt        }
312264790Sbapt#endif
313264790Sbapt        yychar = YYEMPTY;
314264790Sbapt        goto yyloop;
315264790Sbapt    }
316264790Sbapt
317264790Sbaptyyreduce:
318264790Sbapt#if YYDEBUG
319264790Sbapt    if (yydebug)
320264790Sbapt        printf("%sdebug: state %d, reducing by rule %d (%s)\n",
321264790Sbapt                YYPREFIX, yystate, yyn, yyrule[yyn]);
322264790Sbapt#endif
323264790Sbapt    yym = yylen[yyn];
324264790Sbapt    if (yym)
325264790Sbapt        yyval = yystack.l_mark[1-yym];
326264790Sbapt    else
327264790Sbapt        memset(&yyval, 0, sizeof yyval);
328264790Sbapt    switch (yyn)
329264790Sbapt    {
330264790Sbapt    }
331264790Sbapt    yystack.s_mark -= yym;
332264790Sbapt    yystate = *yystack.s_mark;
333264790Sbapt    yystack.l_mark -= yym;
334264790Sbapt    yym = yylhs[yyn];
335264790Sbapt    if (yystate == 0 && yym == 0)
336264790Sbapt    {
337264790Sbapt#if YYDEBUG
338264790Sbapt        if (yydebug)
339264790Sbapt            printf("%sdebug: after reduction, shifting from state 0 to\
340264790Sbapt state %d\n", YYPREFIX, YYFINAL);
341264790Sbapt#endif
342264790Sbapt        yystate = YYFINAL;
343264790Sbapt        *++yystack.s_mark = YYFINAL;
344264790Sbapt        *++yystack.l_mark = yyval;
345264790Sbapt        if (yychar < 0)
346264790Sbapt        {
347264790Sbapt            if ((yychar = YYLEX) < 0) yychar = YYEOF;
348264790Sbapt#if YYDEBUG
349264790Sbapt            if (yydebug)
350264790Sbapt            {
351264790Sbapt                yys = yyname[YYTRANSLATE(yychar)];
352264790Sbapt                printf("%sdebug: state %d, reading %d (%s)\n",
353264790Sbapt                        YYPREFIX, YYFINAL, yychar, yys);
354264790Sbapt            }
355264790Sbapt#endif
356264790Sbapt        }
357264790Sbapt        if (yychar == YYEOF) goto yyaccept;
358264790Sbapt        goto yyloop;
359264790Sbapt    }
360264790Sbapt    if ((yyn = yygindex[yym]) && (yyn += yystate) >= 0 &&
361264790Sbapt            yyn <= YYTABLESIZE && yycheck[yyn] == yystate)
362264790Sbapt        yystate = yytable[yyn];
363264790Sbapt    else
364264790Sbapt        yystate = yydgoto[yym];
365264790Sbapt#if YYDEBUG
366264790Sbapt    if (yydebug)
367264790Sbapt        printf("%sdebug: after reduction, shifting from state %d \
368264790Sbaptto state %d\n", YYPREFIX, *yystack.s_mark, yystate);
369264790Sbapt#endif
370264790Sbapt    if (yystack.s_mark >= yystack.s_last && yygrowstack(&yystack) == YYENOMEM)
371264790Sbapt    {
372264790Sbapt        goto yyoverflow;
373264790Sbapt    }
374264790Sbapt    *++yystack.s_mark = (YYINT) yystate;
375264790Sbapt    *++yystack.l_mark = yyval;
376264790Sbapt    goto yyloop;
377264790Sbapt
378264790Sbaptyyoverflow:
379264790Sbapt    YYERROR_CALL("yacc stack overflow");
380264790Sbapt
381264790Sbaptyyabort:
382264790Sbapt    yyfreestack(&yystack);
383264790Sbapt    return (1);
384264790Sbapt
385264790Sbaptyyaccept:
386264790Sbapt    yyfreestack(&yystack);
387264790Sbapt    return (0);
388264790Sbapt}
389