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

Diff for /src/usr.bin/m4/eval.c between version 1.28 and 1.29

version 1.28, 2000/07/27 17:44:32 version 1.29, 2001/06/13 12:20:43
Line 801 
Line 801 
         const char *ap, *fc, *k;          const char *ap, *fc, *k;
         int nc;          int nc;
   
         if (argc < 5)  
                 nc = MAXTOK;  
         else  
 #ifdef EXPR  
                 nc = expr(argv[4]);  
 #else  
                 nc = atoi(argv[4]);  
 #endif  
         ap = argv[2];                  /* target string */          ap = argv[2];                  /* target string */
 #ifdef EXPR  #ifdef EXPR
         fc = ap + expr(argv[3]);       /* first char */          fc = ap + expr(argv[3]);       /* first char */
 #else  #else
         fc = ap + atoi(argv[3]);       /* first char */          fc = ap + atoi(argv[3]);       /* first char */
 #endif  #endif
           nc = strlen(fc);
           if (argc >= 5)
   #ifdef EXPR
                   nc = min(nc, expr(argv[4]));
   #else
                   nc = min(nc, atoi(argv[4]));
   #endif
         if (fc >= ap && fc < ap + strlen(ap))          if (fc >= ap && fc < ap + strlen(ap))
                 for (k = fc + min(nc, strlen(fc)) - 1; k >= fc; k--)                  for (k = fc + nc - 1; k >= fc; k--)
                         putback(*k);                          putback(*k);
 }  }
   

Legend:
Removed from v.1.28  
changed lines
  Added in v.1.29