[gnu.gcc.bug] Tiny bugs on bison

pinard@EDDIE.MIT.EDU (Francois Pinard) (04/02/89)

Three very little details in bison.  This first one is for regularity
only, but was found compiling with ``-Dregister='', on a machine where
the compiler is dumb.

------------------------------------------------------------
*** LR0.c	Sat Jan 14 08:18:38 1989
--- ../bison.trav/LR0.c	Sat Jan 14 15:22:29 1989
***************
*** 69,75 ****
    register short *itemp;
    register int symbol;
    register int i;
!   register count;
    register int max;
    register short *symbol_count;
  
--- 69,75 ----
    register short *itemp;
    register int symbol;
    register int i;
!   register int count;
    register int max;
    register short *symbol_count;

------------------------------------------------------------

This second one is a real bug that does not show on most machines.  It
seems to have been corrected on my ``master copy'', would you simply
crosscheck?

------------------------------------------------------------
*** warshall.c	Sat Jan 14 08:18:28 1989
--- ../bison.trav/warshall.c	Sat Jan 14 11:03:13 1989
***************
*** 76,82 ****
  	  cword++;
  	}
  
!       rowi = (unsigned *) ((unsigned) rowi + rowsize);
      }
  }
  
--- 76,82 ----
  	  cword++;
  	}
  
!       rowi = (unsigned *) ((char *) rowi + rowsize);
      }
  }
  
------------------------------------------------------------

Thirdly, while at it, is it worth changing, in machine.h, the line:

#define	WORDSIZE(n)	(((n) + 31) / 32)

by:

#define	WORDSIZE(n)	(((n) + 31) >> 5)

						Bye.
--
Franc,ois Pinard                                    pinard@odyssee.qc.ca
(514) 279-0716           ``Vivement GNU!''          uunet!odyssee!pinard