Home | History | Annotate | Line # | Download | only in yacc
rename_debug.c revision 1.1.1.8
      1 /*	$NetBSD: rename_debug.c,v 1.1.1.8 2026/01/18 16:39:06 christos Exp $	*/
      2 
      3 /* original parser id follows */
      4 /* yysccsid[] = "@(#)yaccpar	1.9 (Berkeley) 02/21/93" */
      5 /* (use YYMAJOR/YYMINOR for ifdefs dependent on parser version) */
      6 
      7 #define YYBYACC 1
      8 #define YYMAJOR 2
      9 #define YYMINOR 0
     10 #define YYCHECK "yyyymmdd"
     11 
     12 #define YYEMPTY        (-1)
     13 #define yyclearin      (yychar = YYEMPTY)
     14 #define yyerrok        (yyerrflag = 0)
     15 #define YYRECOVERING() (yyerrflag != 0)
     16 #define YYENOMEM       (-2)
     17 #define YYEOF          0
     18 #line 17 "rename_debug.c"
     19 #include "rename_debug.i"
     20 #include "rename_debug.h"
     21 typedef int YYINT;
     22 static const YYINT yylhs[] = {                           -1,
     23     0,
     24 };
     25 static const YYINT yylen[] = {                            2,
     26     1,
     27 };
     28 static const YYINT yydefred[] = {                         0,
     29     1,    0,
     30 };
     31 static const YYINT yydgoto[] = {                          2,
     32 };
     33 static const YYINT yysindex[] = {                      -256,
     34     0,    0,
     35 };
     36 static const YYINT yyrindex[] = {                         0,
     37     0,    0,
     38 };
     39 static const YYINT yygindex[] = {                         0,
     40 };
     41 #define YYTABLESIZE 0
     42 static const YYINT yytable[] = {                          1,
     43 };
     44 static const YYINT yycheck[] = {                        256,
     45 };
     46 #define YYFINAL 2
     47 #ifndef YYDEBUG
     48 #define YYDEBUG 1
     49 #endif
     50 #define YYMAXTOKEN 256
     51 #define YYUNDFTOKEN 259
     52 #define YYTRANSLATE(a) ((a) > YYMAXTOKEN ? YYUNDFTOKEN : (a))
     53 #if YYDEBUG
     54 #ifndef NULL
     55 #define NULL (void*)0
     56 #endif
     57 static const char *const yyname[] = {
     58 
     59 "end-of-file",NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,
     60 NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,
     61 NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,
     62 NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,
     63 NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,
     64 NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,
     65 NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,
     66 NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,
     67 NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,
     68 NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,
     69 NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,
     70 NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,
     71 NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,
     72 NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,
     73 NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,
     74 NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,
     75 NULL,NULL,NULL,NULL,NULL,"illegal-symbol",
     76 };
     77 static const char *const yyrule[] = {
     78 "$accept : S",
     79 "S : error",
     80 
     81 };
     82 #endif
     83 
     84 #if YYDEBUG
     85 int      yydebug;
     86 #endif
     87 
     88 int      yyerrflag;
     89 int      yychar;
     90 YYSTYPE  yyval;
     91 YYSTYPE  yylval;
     92 int      yynerrs;
     93 
     94 /* define the initial stack-sizes */
     95 #ifdef YYSTACKSIZE
     96 #undef YYMAXDEPTH
     97 #define YYMAXDEPTH  YYSTACKSIZE
     98 #else
     99 #ifdef YYMAXDEPTH
    100 #define YYSTACKSIZE YYMAXDEPTH
    101 #else
    102 #define YYSTACKSIZE 10000
    103 #define YYMAXDEPTH  10000
    104 #endif
    105 #endif
    106 
    107 #define YYINITSTACKSIZE 200
    108 
    109 typedef struct {
    110     unsigned stacksize;
    111     YYINT    *s_base;
    112     YYINT    *s_mark;
    113     YYINT    *s_last;
    114     YYSTYPE  *l_base;
    115     YYSTYPE  *l_mark;
    116 } YYSTACKDATA;
    117 /* variables for the parser stack */
    118 static YYSTACKDATA yystack;
    119 #line 12 "code_debug.y"
    120 
    121 #include <stdio.h>
    122 
    123 #ifdef YYBYACC
    124 extern int YYLEX_DECL();
    125 #endif
    126 
    127 int
    128 main(void)
    129 {
    130     printf("yyparse() = %d\n", yyparse());
    131     return 0;
    132 }
    133 
    134 int
    135 yylex(void)
    136 {
    137     return -1;
    138 }
    139 
    140 static void
    141 yyerror(const char* s)
    142 {
    143     printf("%s\n", s);
    144 }
    145 #line 145 "rename_debug.c"
    146 
    147 #if YYDEBUG
    148 #include <stdio.h>	/* needed for printf */
    149 #endif
    150 
    151 #include <stdlib.h>	/* needed for malloc, etc */
    152 #include <string.h>	/* needed for memset */
    153 
    154 /* allocate initial stack or double stack size, up to YYMAXDEPTH */
    155 static int yygrowstack(YYSTACKDATA *data)
    156 {
    157     int i;
    158     unsigned newsize;
    159     YYINT *newss;
    160     YYSTYPE *newvs;
    161 
    162     if ((newsize = data->stacksize) == 0)
    163         newsize = YYINITSTACKSIZE;
    164     else if (newsize >= YYMAXDEPTH)
    165         return YYENOMEM;
    166     else if ((newsize *= 2) > YYMAXDEPTH)
    167         newsize = YYMAXDEPTH;
    168 
    169     i = (int) (data->s_mark - data->s_base);
    170     newss = (YYINT *)realloc(data->s_base, newsize * sizeof(*newss));
    171     if (newss == NULL)
    172         return YYENOMEM;
    173 
    174     data->s_base = newss;
    175     data->s_mark = newss + i;
    176 
    177     newvs = (YYSTYPE *)realloc(data->l_base, newsize * sizeof(*newvs));
    178     if (newvs == NULL)
    179         return YYENOMEM;
    180 
    181     data->l_base = newvs;
    182     data->l_mark = newvs + i;
    183 
    184     data->stacksize = newsize;
    185     data->s_last = data->s_base + newsize - 1;
    186     return 0;
    187 }
    188 
    189 #if YYPURE || defined(YY_NO_LEAKS)
    190 static void yyfreestack(YYSTACKDATA *data)
    191 {
    192     free(data->s_base);
    193     free(data->l_base);
    194     memset(data, 0, sizeof(*data));
    195 }
    196 #else
    197 #define yyfreestack(data) /* nothing */
    198 #endif
    199 
    200 #define YYABORT  goto yyabort
    201 #define YYREJECT goto yyabort
    202 #define YYACCEPT goto yyaccept
    203 #define YYERROR  goto yyerrlab
    204 
    205 int
    206 YYPARSE_DECL()
    207 {
    208     int yym, yyn, yystate;
    209 #if YYDEBUG
    210     const char *yys;
    211 
    212     if ((yys = getenv("YYDEBUG")) != NULL)
    213     {
    214         yyn = *yys;
    215         if (yyn >= '0' && yyn <= '9')
    216             yydebug = yyn - '0';
    217     }
    218 #endif
    219 
    220     /* yym is set below */
    221     /* yyn is set below */
    222     yynerrs = 0;
    223     yyerrflag = 0;
    224     yychar = YYEMPTY;
    225     yystate = 0;
    226 
    227 #if YYPURE
    228     memset(&yystack, 0, sizeof(yystack));
    229 #endif
    230 
    231     if (yystack.s_base == NULL && yygrowstack(&yystack) == YYENOMEM) goto yyoverflow;
    232     yystack.s_mark = yystack.s_base;
    233     yystack.l_mark = yystack.l_base;
    234     yystate = 0;
    235     *yystack.s_mark = 0;
    236 
    237 yyloop:
    238     if ((yyn = yydefred[yystate]) != 0) goto yyreduce;
    239     if (yychar < 0)
    240     {
    241         yychar = YYLEX;
    242         if (yychar < 0) yychar = YYEOF;
    243 #if YYDEBUG
    244         if (yydebug)
    245         {
    246             if ((yys = yyname[YYTRANSLATE(yychar)]) == NULL) yys = yyname[YYUNDFTOKEN];
    247             printf("%sdebug: state %d, reading %d (%s)\n",
    248                     YYPREFIX, yystate, yychar, yys);
    249         }
    250 #endif
    251     }
    252     if (((yyn = yysindex[yystate]) != 0) && (yyn += yychar) >= 0 &&
    253             yyn <= YYTABLESIZE && yycheck[yyn] == (YYINT) yychar)
    254     {
    255 #if YYDEBUG
    256         if (yydebug)
    257             printf("%sdebug: state %d, shifting to state %d\n",
    258                     YYPREFIX, yystate, yytable[yyn]);
    259 #endif
    260         if (yystack.s_mark >= yystack.s_last && yygrowstack(&yystack) == YYENOMEM) goto yyoverflow;
    261         yystate = yytable[yyn];
    262         *++yystack.s_mark = yytable[yyn];
    263         *++yystack.l_mark = yylval;
    264         yychar = YYEMPTY;
    265         if (yyerrflag > 0)  --yyerrflag;
    266         goto yyloop;
    267     }
    268     if (((yyn = yyrindex[yystate]) != 0) && (yyn += yychar) >= 0 &&
    269             yyn <= YYTABLESIZE && yycheck[yyn] == (YYINT) yychar)
    270     {
    271         yyn = yytable[yyn];
    272         goto yyreduce;
    273     }
    274     if (yyerrflag != 0) goto yyinrecovery;
    275 
    276     YYERROR_CALL("syntax error");
    277 
    278     goto yyerrlab; /* redundant goto avoids 'unused label' warning */
    279 yyerrlab:
    280     ++yynerrs;
    281 
    282 yyinrecovery:
    283     if (yyerrflag < 3)
    284     {
    285         yyerrflag = 3;
    286         for (;;)
    287         {
    288             if (((yyn = yysindex[*yystack.s_mark]) != 0) && (yyn += YYERRCODE) >= 0 &&
    289                     yyn <= YYTABLESIZE && yycheck[yyn] == (YYINT) YYERRCODE)
    290             {
    291 #if YYDEBUG
    292                 if (yydebug)
    293                     printf("%sdebug: state %d, error recovery shifting\
    294  to state %d\n", YYPREFIX, *yystack.s_mark, yytable[yyn]);
    295 #endif
    296                 if (yystack.s_mark >= yystack.s_last && yygrowstack(&yystack) == YYENOMEM) goto yyoverflow;
    297                 yystate = yytable[yyn];
    298                 *++yystack.s_mark = yytable[yyn];
    299                 *++yystack.l_mark = yylval;
    300                 goto yyloop;
    301             }
    302             else
    303             {
    304 #if YYDEBUG
    305                 if (yydebug)
    306                     printf("%sdebug: error recovery discarding state %d\n",
    307                             YYPREFIX, *yystack.s_mark);
    308 #endif
    309                 if (yystack.s_mark <= yystack.s_base) goto yyabort;
    310                 --yystack.s_mark;
    311                 --yystack.l_mark;
    312             }
    313         }
    314     }
    315     else
    316     {
    317         if (yychar == YYEOF) goto yyabort;
    318 #if YYDEBUG
    319         if (yydebug)
    320         {
    321             if ((yys = yyname[YYTRANSLATE(yychar)]) == NULL) yys = yyname[YYUNDFTOKEN];
    322             printf("%sdebug: state %d, error recovery discards token %d (%s)\n",
    323                     YYPREFIX, yystate, yychar, yys);
    324         }
    325 #endif
    326         yychar = YYEMPTY;
    327         goto yyloop;
    328     }
    329 
    330 yyreduce:
    331 #if YYDEBUG
    332     if (yydebug)
    333         printf("%sdebug: state %d, reducing by rule %d (%s)\n",
    334                 YYPREFIX, yystate, yyn, yyrule[yyn]);
    335 #endif
    336     yym = yylen[yyn];
    337     if (yym > 0)
    338         yyval = yystack.l_mark[1-yym];
    339     else
    340         memset(&yyval, 0, sizeof yyval);
    341 
    342     switch (yyn)
    343     {
    344     }
    345     yystack.s_mark -= yym;
    346     yystate = *yystack.s_mark;
    347     yystack.l_mark -= yym;
    348     yym = yylhs[yyn];
    349     if (yystate == 0 && yym == 0)
    350     {
    351 #if YYDEBUG
    352         if (yydebug)
    353             printf("%sdebug: after reduction, shifting from state 0 to\
    354  state %d\n", YYPREFIX, YYFINAL);
    355 #endif
    356         yystate = YYFINAL;
    357         *++yystack.s_mark = YYFINAL;
    358         *++yystack.l_mark = yyval;
    359         if (yychar < 0)
    360         {
    361             yychar = YYLEX;
    362             if (yychar < 0) yychar = YYEOF;
    363 #if YYDEBUG
    364             if (yydebug)
    365             {
    366                 if ((yys = yyname[YYTRANSLATE(yychar)]) == NULL) yys = yyname[YYUNDFTOKEN];
    367                 printf("%sdebug: state %d, reading %d (%s)\n",
    368                         YYPREFIX, YYFINAL, yychar, yys);
    369             }
    370 #endif
    371         }
    372         if (yychar == YYEOF) goto yyaccept;
    373         goto yyloop;
    374     }
    375     if (((yyn = yygindex[yym]) != 0) && (yyn += yystate) >= 0 &&
    376             yyn <= YYTABLESIZE && yycheck[yyn] == (YYINT) yystate)
    377         yystate = yytable[yyn];
    378     else
    379         yystate = yydgoto[yym];
    380 #if YYDEBUG
    381     if (yydebug)
    382         printf("%sdebug: after reduction, shifting from state %d \
    383 to state %d\n", YYPREFIX, *yystack.s_mark, yystate);
    384 #endif
    385     if (yystack.s_mark >= yystack.s_last && yygrowstack(&yystack) == YYENOMEM) goto yyoverflow;
    386     *++yystack.s_mark = (YYINT) yystate;
    387     *++yystack.l_mark = yyval;
    388     goto yyloop;
    389 
    390 yyoverflow:
    391     YYERROR_CALL("yacc stack overflow");
    392 
    393 yyabort:
    394     yyfreestack(&yystack);
    395     return (1);
    396 
    397 yyaccept:
    398     yyfreestack(&yystack);
    399     return (0);
    400 }
    401