[BACK]Return to lalr.c CVS log [TXT][DIR] Up to [local] / src / usr.bin / yacc

Diff for /src/usr.bin/yacc/lalr.c between version 1.18 and 1.19

version 1.18, 2015/12/11 20:25:47 version 1.19, 2017/05/25 20:11:03
Line 52 
Line 52 
 short *from_state;  short *from_state;
 short *to_state;  short *to_state;
   
 short **transpose();  short **transpose(short **, int);
 void set_state_table(void);  void set_state_table(void);
 void set_accessing_symbol(void);  void set_accessing_symbol(void);
 void set_shift_table(void);  void set_shift_table(void);
Line 448 
Line 448 
   
   
 short **  short **
 transpose(short **R, int n)  transpose(short **old_R, int n)
 {  {
         short **new_R, **temp_R, *nedges, *sp;          short **new_R, **temp_R, *nedges, *sp;
         int i, k;          int i, k;
Line 456 
Line 456 
         nedges = NEW2(n, short);          nedges = NEW2(n, short);
   
         for (i = 0; i < n; i++) {          for (i = 0; i < n; i++) {
                 sp = R[i];                  sp = old_R[i];
                 if (sp) {                  if (sp) {
                         while (*sp >= 0)                          while (*sp >= 0)
                                 nedges[*sp++]++;                                  nedges[*sp++]++;
Line 479 
Line 479 
         free(nedges);          free(nedges);
   
         for (i = 0; i < n; i++) {          for (i = 0; i < n; i++) {
                 sp = R[i];                  sp = old_R[i];
                 if (sp) {                  if (sp) {
                         while (*sp >= 0)                          while (*sp >= 0)
                                 *temp_R[*sp++]++ = i;                                  *temp_R[*sp++]++ = i;

Legend:
Removed from v.1.18  
changed lines
  Added in v.1.19