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

Diff for /src/usr.bin/awk/b.c between version 1.17 and 1.18

version 1.17, 2011/09/28 19:27:18 version 1.18, 2014/12/19 19:28:55
Line 348 
Line 348 
                 f->re[info(v)].ltype = type(v);                  f->re[info(v)].ltype = type(v);
                 f->re[info(v)].lval.np = right(v);                  f->re[info(v)].lval.np = right(v);
                 while (f->accept >= maxsetvec) {        /* guessing here! */                  while (f->accept >= maxsetvec) {        /* guessing here! */
                         maxsetvec *= 4;                          setvec = reallocarray(setvec, maxsetvec,
                         setvec = (int *) realloc(setvec, maxsetvec * sizeof(int));                              4 * sizeof(int));
                         tmpset = (int *) realloc(tmpset, maxsetvec * sizeof(int));                          tmpset = reallocarray(tmpset, maxsetvec,
                               4 * sizeof(int));
                         if (setvec == 0 || tmpset == 0)                          if (setvec == 0 || tmpset == 0)
                                 overflo("out of space in cfoll()");                                  overflo("out of space in cfoll()");
                           maxsetvec *= 4;
                 }                  }
                 for (i = 0; i <= f->accept; i++)                  for (i = 0; i <= f->accept; i++)
                         setvec[i] = 0;                          setvec[i] = 0;
Line 389 
Line 391 
         LEAF          LEAF
                 lp = info(p);   /* look for high-water mark of subscripts */                  lp = info(p);   /* look for high-water mark of subscripts */
                 while (setcnt >= maxsetvec || lp >= maxsetvec) {        /* guessing here! */                  while (setcnt >= maxsetvec || lp >= maxsetvec) {        /* guessing here! */
                         maxsetvec *= 4;                          setvec = reallocarray(setvec, maxsetvec,
                         setvec = (int *) realloc(setvec, maxsetvec * sizeof(int));                              4 * sizeof(int));
                         tmpset = (int *) realloc(tmpset, maxsetvec * sizeof(int));                          tmpset = reallocarray(tmpset, maxsetvec,
                               4 * sizeof(int));
                         if (setvec == 0 || tmpset == 0)                          if (setvec == 0 || tmpset == 0)
                                 overflo("out of space in first()");                                  overflo("out of space in first()");
                           maxsetvec *= 4;
                 }                  }
                 if (type(p) == EMPTYRE) {                  if (type(p) == EMPTYRE) {
                         setvec[lp] = 0;                          setvec[lp] = 0;
Line 857 
Line 861 
   
         assert(c == HAT || c < NCHARS);          assert(c == HAT || c < NCHARS);
         while (f->accept >= maxsetvec) {        /* guessing here! */          while (f->accept >= maxsetvec) {        /* guessing here! */
                 maxsetvec *= 4;                  setvec = reallocarray(setvec, maxsetvec, 4 * sizeof(int));
                 setvec = (int *) realloc(setvec, maxsetvec * sizeof(int));                  tmpset = reallocarray(tmpset, maxsetvec, 4 * sizeof(int));
                 tmpset = (int *) realloc(tmpset, maxsetvec * sizeof(int));  
                 if (setvec == 0 || tmpset == 0)                  if (setvec == 0 || tmpset == 0)
                         overflo("out of space in cgoto()");                          overflo("out of space in cgoto()");
                   maxsetvec *= 4;
         }          }
         for (i = 0; i <= f->accept; i++)          for (i = 0; i <= f->accept; i++)
                 setvec[i] = 0;                  setvec[i] = 0;
Line 879 
Line 883 
                                 q = f->re[p[i]].lfollow;                                  q = f->re[p[i]].lfollow;
                                 for (j = 1; j <= *q; j++) {                                  for (j = 1; j <= *q; j++) {
                                         if (q[j] >= maxsetvec) {                                          if (q[j] >= maxsetvec) {
                                                 maxsetvec *= 4;                                                  setvec = reallocarray(setvec,
                                                 setvec = (int *) realloc(setvec, maxsetvec * sizeof(int));                                                      maxsetvec, 4 * sizeof(int));
                                                 tmpset = (int *) realloc(tmpset, maxsetvec * sizeof(int));                                                  tmpset = reallocarray(tmpset,
                                                       maxsetvec, 4 * sizeof(int));
                                                 if (setvec == 0 || tmpset == 0)                                                  if (setvec == 0 || tmpset == 0)
                                                         overflo("cgoto overflow");                                                          overflo("cgoto overflow");
                                                   maxsetvec *= 4;
                                         }                                          }
                                         if (setvec[q[j]] == 0) {                                          if (setvec[q[j]] == 0) {
                                                 setcnt++;                                                  setcnt++;

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