[gnu.utils.bug] lint in bison 1.03 output

eggert@twinsun.com (Paul Eggert) (11/11/89)

In Bison 1.03 (ChangeLog: Wed Aug 23 15:03:07 1989 Jay Fenlason (hack at gnu)),
bison.simple and output.c create C code that sometimes contains unused
objects.  Here is a fix.

*** old/bison.simple	Fri Nov 10 15:40:11 1989
--- new/bison.simple	Fri Nov 10 14:46:54 1989
***************
*** 94,100 ****
--- 94,102 ----
    register int yyn;
    register short *yyssp;
    register YYSTYPE *yyvsp;
+ #ifdef YYLSP_NEEDED
    YYLTYPE *yylsp;
+ #endif
    int yyerrstatus;	/*  number of tokens to shift before error messages enabled */
    int yychar1;		/*  lookahead token as an internal (translated) token number */
  
***************
*** 137,143 ****
--- 139,147 ----
  
    yyssp = yyss - 1;
    yyvsp = yyvs;
+ #ifdef YYLSP_NEEDED
    yylsp = yyls;
+ #endif
  
  /* Push a new state, which is found in  yystate  .  */
  /* In all cases, when you get here, the value and location stacks
***************
*** 151,157 ****
--- 155,163 ----
        /* Give user a chance to reallocate the stack */
        /* Use copies of these so that the &'s don't force the real ones into memory. */
        YYSTYPE *yyvs1 = yyvs;
+ #if defined (yyoverflow) || defined (YYLSP_NEEDED)
        YYLTYPE *yyls1 = yyls;
+ #endif
        short *yyss1 = yyss;
  
        /* Get the current used size of the three stacks, in elements.  */
***************
*** 161,169 ****
        /* Each stack pointer address is followed by the size of
  	 the data in use in that stack, in bytes.  */
        yyoverflow("parser stack overflow",
! 		 &yyss1, size * sizeof (*yyssp),
! 		 &yyvs1, size * sizeof (*yyvsp),
! 		 &yyls1, size * sizeof (*yylsp),
  		 &yymaxdepth);
  
        yyss = yyss1; yyvs = yyvs1; yyls = yyls1;
--- 167,175 ----
        /* Each stack pointer address is followed by the size of
  	 the data in use in that stack, in bytes.  */
        yyoverflow("parser stack overflow",
! 		 &yyss1, size * sizeof (*yyss1),
! 		 &yyvs1, size * sizeof (*yyvs1),
! 		 &yyls1, size * sizeof (*yyls1),
  		 &yymaxdepth);
  
        yyss = yyss1; yyvs = yyvs1; yyls = yyls1;

*** old/output.c	Fri Nov 10 15:40:12 1989
--- new/output.c	Fri Nov 10 14:52:49 1989
***************
*** 383,389 ****
    register int i;
    register int j;
  
!   fprintf(ftable, "\nstatic const short yyrline[] = {     0");
  
    j = 10;
    for (i = 1; i <= nrules; i++)
--- 383,389 ----
    register int i;
    register int j;
  
!   fprintf(ftable, "\n#if YYDEBUG != 0\nstatic const short yyrline[] = { 0");
  
    j = 10;
    for (i = 1; i <= nrules; i++)
***************
*** 442,448 ****
        putc ('\"', ftable);
      }
  
!   fprintf(ftable, "\n};\n\nstatic const short yyr1[] = {     0");
  
    j = 10;
    for (i = 1; i <= nrules; i++)
--- 442,448 ----
        putc ('\"', ftable);
      }
  
!   fprintf(ftable, "\n};\n#endif\n\nstatic const short yyr1[] = {     0");
  
    j = 10;
    for (i = 1; i <= nrules; i++)