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

Diff for /src/usr.bin/make/varmodifiers.c between version 1.14 and 1.15

version 1.14, 2005/07/15 20:43:23 version 1.15, 2007/07/20 12:32:45
Line 112 
Line 112 
 } VarPattern;  } VarPattern;
   
 struct LoopStuff {  struct LoopStuff {
     char        *var;      struct LoopVar      *var;
     char        *expand;      char        *expand;
     SymTable    *ctxt;  
     bool        err;      bool        err;
 };  };
   
Line 423 
Line 422 
 {  {
         struct LoopStuff *l = (struct LoopStuff *)p;          struct LoopStuff *l = (struct LoopStuff *)p;
   
         return Var_Subst(s, l->ctxt, l->err);          return Var_Subst(s, NULL,  l->err);
 }  }
   
 static int  static int
Line 1173 
Line 1172 
 {  {
     struct LoopStuff *l = (struct LoopStuff *)arg;      struct LoopStuff *l = (struct LoopStuff *)arg;
   
     free(l->var);      Var_DeleteLoopVar(l->var);
     free(l->expand);      free(l->expand);
 }  }
   
Line 1198 
Line 1197 
 {  {
     static struct LoopStuff     loop;      static struct LoopStuff     loop;
     const char *s;      const char *s;
       const char *var;
   
     s = *p +1;      s = *p +1;
   
     loop.var = NULL;      loop.var = NULL;
     loop.expand = NULL;      loop.expand = NULL;
     loop.ctxt =ctxt;  
     loop.err = err;      loop.err = err;
     loop.var = LoopGrab(&s);      var = LoopGrab(&s);
     if (loop.var != NULL) {      if (var != NULL) {
         loop.expand = LoopGrab(&s);          loop.expand = LoopGrab(&s);
         if (*s == endc || *s == ':') {          if (*s == endc || *s == ':') {
             *p = s;              *p = s;
               loop.var = Var_NewLoopVar(var, NULL);
             return &loop;              return &loop;
         }          }
     }      }
Line 1372 
Line 1372 
   
 char *  char *
 VarModifiers_Apply(char *str, const struct Name *name, SymTable *ctxt,  VarModifiers_Apply(char *str, const struct Name *name, SymTable *ctxt,
     bool err, bool *freePtr, const char *start, int endc, size_t *lengthPtr)      bool err, bool *freePtr, const char *start, int paren, size_t *lengthPtr)
 {  {
     const char  *tstr;      const char  *tstr;
     bool        atstart;    /* Some ODE modifiers only make sense at start */      bool        atstart;    /* Some ODE modifiers only make sense at start */
       char endc = paren == '(' ? ')' : '}';
   
     tstr = start;      tstr = start;
     /*      /*

Legend:
Removed from v.1.14  
changed lines
  Added in v.1.15