Module Name:    src
Committed By:   rillig
Date:           Mon Jul 27 23:24:55 UTC 2020

Modified Files:
        src/usr.bin/make: var.c

Log Message:
make(1): rename ApplyModifiersState.cp to next

The name "next" is more descriptive than a mere "cp".  It's easy to look
up the type of the variable, but not so easy to guess the purpose of the
variable, therefore the new name concentrates on the purpose.


To generate a diff of this commit:
cvs rdiff -u -r1.347 -r1.348 src/usr.bin/make/var.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/usr.bin/make/var.c
diff -u src/usr.bin/make/var.c:1.347 src/usr.bin/make/var.c:1.348
--- src/usr.bin/make/var.c:1.347	Mon Jul 27 23:04:18 2020
+++ src/usr.bin/make/var.c	Mon Jul 27 23:24:55 2020
@@ -1,4 +1,4 @@
-/*	$NetBSD: var.c,v 1.347 2020/07/27 23:04:18 rillig Exp $	*/
+/*	$NetBSD: var.c,v 1.348 2020/07/27 23:24:55 rillig Exp $	*/
 
 /*
  * Copyright (c) 1988, 1989, 1990, 1993
@@ -69,14 +69,14 @@
  */
 
 #ifndef MAKE_NATIVE
-static char rcsid[] = "$NetBSD: var.c,v 1.347 2020/07/27 23:04:18 rillig Exp $";
+static char rcsid[] = "$NetBSD: var.c,v 1.348 2020/07/27 23:24:55 rillig Exp $";
 #else
 #include <sys/cdefs.h>
 #ifndef lint
 #if 0
 static char sccsid[] = "@(#)var.c	8.3 (Berkeley) 3/19/94";
 #else
-__RCSID("$NetBSD: var.c,v 1.347 2020/07/27 23:04:18 rillig Exp $");
+__RCSID("$NetBSD: var.c,v 1.348 2020/07/27 23:24:55 rillig Exp $");
 #endif
 #endif /* not lint */
 #endif
@@ -2046,7 +2046,7 @@ typedef struct {
 
     /* read-write */
     char *nstr;
-    const char *cp;		/* The position where parsing continues
+    const char *next;		/* The position where parsing continues
 				 * after the current modifier. */
     char termc;			/* Character which terminated scan */
     char missing_delim;		/* For error reporting */
@@ -2085,23 +2085,23 @@ ApplyModifier_Loop(const char *mod, Appl
     ModifyWord_LoopArgs args;
 
     args.ctx = st->ctxt;
-    st->cp = mod + 1;
+    st->next = mod + 1;
     char delim = '@';
-    args.tvar = ParseModifierPart(&st->cp, delim, st->eflags & ~VARE_WANTRES,
+    args.tvar = ParseModifierPart(&st->next, delim, st->eflags & ~VARE_WANTRES,
 				  st->ctxt, NULL, NULL, NULL);
     if (args.tvar == NULL) {
 	st->missing_delim = delim;
 	return FALSE;
     }
 
-    args.str = ParseModifierPart(&st->cp, delim, st->eflags & ~VARE_WANTRES,
+    args.str = ParseModifierPart(&st->next, delim, st->eflags & ~VARE_WANTRES,
 				 st->ctxt, NULL, NULL, NULL);
     if (args.str == NULL) {
 	st->missing_delim = delim;
 	return FALSE;
     }
 
-    st->termc = *st->cp;
+    st->termc = *st->next;
 
     args.eflags = st->eflags & (VARE_UNDEFERR | VARE_WANTRES);
     int prev_sep = st->sep;
@@ -2167,8 +2167,8 @@ ApplyModifier_Defined(const char *mod, A
 	}
     }
 
-    st->cp = p;
-    st->termc = *st->cp;
+    st->next = p;
+    st->termc = *st->next;
 
     if (st->v->flags & VAR_JUNK)
 	st->v->flags |= VAR_KEEP;
@@ -2185,7 +2185,7 @@ static Boolean
 ApplyModifier_Gmtime(const char *mod, ApplyModifiersState *st)
 {
     if (!ModMatchEq(mod, "gmtime", st->endc)) {
-	st->cp = mod + 1;
+	st->next = mod + 1;
 	return FALSE;
     }
 
@@ -2193,13 +2193,13 @@ ApplyModifier_Gmtime(const char *mod, Ap
     if (mod[6] == '=') {
 	char *ep;
 	utc = strtoul(mod + 7, &ep, 10);
-	st->cp = ep;
+	st->next = ep;
     } else {
 	utc = 0;
-	st->cp = mod + 6;
+	st->next = mod + 6;
     }
     st->newStr = VarStrftime(st->nstr, 1, utc);
-    st->termc = *st->cp;
+    st->termc = *st->next;
     return TRUE;
 }
 
@@ -2208,7 +2208,7 @@ static Boolean
 ApplyModifier_Localtime(const char *mod, ApplyModifiersState *st)
 {
     if (!ModMatchEq(mod, "localtime", st->endc)) {
-	st->cp = mod + 1;
+	st->next = mod + 1;
 	return FALSE;
     }
 
@@ -2216,13 +2216,13 @@ ApplyModifier_Localtime(const char *mod,
     if (mod[9] == '=') {
 	char *ep;
 	utc = strtoul(mod + 10, &ep, 10);
-	st->cp = ep;
+	st->next = ep;
     } else {
 	utc = 0;
-	st->cp = mod + 9;
+	st->next = mod + 9;
     }
     st->newStr = VarStrftime(st->nstr, 0, utc);
-    st->termc = *st->cp;
+    st->termc = *st->next;
     return TRUE;
 }
 
@@ -2231,13 +2231,13 @@ static Boolean
 ApplyModifier_Hash(const char *mod, ApplyModifiersState *st)
 {
     if (!ModMatch(mod, "hash", st->endc)) {
-	st->cp = mod + 1;
+	st->next = mod + 1;
 	return FALSE;
     }
 
     st->newStr = VarHash(st->nstr);
-    st->cp = mod + 4;
-    st->termc = *st->cp;
+    st->next = mod + 4;
+    st->termc = *st->next;
     return TRUE;
 }
 
@@ -2257,17 +2257,17 @@ ApplyModifier_Path(const char *mod, Appl
     }
     if (!st->newStr)
 	st->newStr = bmake_strdup(st->v->name);
-    st->cp = mod + 1;
-    st->termc = *st->cp;
+    st->next = mod + 1;
+    st->termc = *st->next;
 }
 
 /* :!cmd! */
 static Boolean
 ApplyModifier_Exclam(const char *mod, ApplyModifiersState *st)
 {
-    st->cp = mod + 1;
+    st->next = mod + 1;
     char delim = '!';
-    char *cmd = ParseModifierPart(&st->cp, delim, st->eflags, st->ctxt,
+    char *cmd = ParseModifierPart(&st->next, delim, st->eflags, st->ctxt,
 				  NULL, NULL, NULL);
     if (cmd == NULL) {
 	st->missing_delim = delim;
@@ -2284,7 +2284,7 @@ ApplyModifier_Exclam(const char *mod, Ap
     if (emsg)
 	Error(emsg, st->nstr);
 
-    st->termc = *st->cp;
+    st->termc = *st->next;
     if (st->v->flags & VAR_JUNK)
 	st->v->flags |= VAR_KEEP;
     return TRUE;
@@ -2295,7 +2295,7 @@ static Boolean
 ApplyModifier_Range(const char *mod, ApplyModifiersState *st)
 {
     if (!ModMatchEq(mod, "range", st->endc)) {
-	st->cp = mod + 1;
+	st->next = mod + 1;
 	return FALSE;
     }
 
@@ -2303,13 +2303,13 @@ ApplyModifier_Range(const char *mod, App
     if (mod[5] == '=') {
 	char *ep;
 	n = strtoul(mod + 6, &ep, 10);
-	st->cp = ep;
+	st->next = ep;
     } else {
 	n = 0;
-	st->cp = mod + 5;
+	st->next = mod + 5;
     }
     st->newStr = VarRange(st->nstr, n);
-    st->termc = *st->cp;
+    st->termc = *st->next;
     return TRUE;
 }
 
@@ -2344,9 +2344,9 @@ ApplyModifier_Match(const char *mod, App
 		break;
 	}
     }
-    st->cp = p;
-    st->termc = *st->cp;
-    const char *endpat = st->cp;
+    st->next = p;
+    st->termc = *st->next;
+    const char *endpat = st->next;
 
     char *pattern;
     if (copy) {
@@ -2397,19 +2397,19 @@ ApplyModifier_Subst(const char * const m
     Boolean oneBigWord = st->oneBigWord;
     char delim = mod[1];
 
-    st->cp = mod + 2;
+    st->next = mod + 2;
 
     /*
      * If pattern begins with '^', it is anchored to the
      * start of the word -- skip over it and flag pattern.
      */
     args.pflags = 0;
-    if (*st->cp == '^') {
+    if (*st->next == '^') {
 	args.pflags |= VARP_ANCHOR_START;
-	st->cp++;
+	st->next++;
     }
 
-    char *lhs = ParseModifierPart(&st->cp, delim, st->eflags, st->ctxt,
+    char *lhs = ParseModifierPart(&st->next, delim, st->eflags, st->ctxt,
 				  &args.lhsLen, &args.pflags, NULL);
     if (lhs == NULL) {
 	st->missing_delim = delim;
@@ -2417,7 +2417,7 @@ ApplyModifier_Subst(const char * const m
     }
     args.lhs = lhs;
 
-    char *rhs = ParseModifierPart(&st->cp, delim, st->eflags, st->ctxt,
+    char *rhs = ParseModifierPart(&st->next, delim, st->eflags, st->ctxt,
 				  &args.rhsLen, NULL, &args);
     if (rhs == NULL) {
 	st->missing_delim = delim;
@@ -2430,8 +2430,8 @@ ApplyModifier_Subst(const char * const m
      * delimiter, substitution is global and is marked that
      * way.
      */
-    for (;; st->cp++) {
-	switch (*st->cp) {
+    for (;; st->next++) {
+	switch (*st->next) {
 	case 'g':
 	    args.pflags |= VARP_SUB_GLOBAL;
 	    continue;
@@ -2445,7 +2445,7 @@ ApplyModifier_Subst(const char * const m
 	break;
     }
 
-    st->termc = *st->cp;
+    st->termc = *st->next;
     st->newStr = ModifyWords(st->ctxt, st->sep, oneBigWord, st->nstr,
 			     ModifyWord_Subst, &args);
 
@@ -2466,16 +2466,16 @@ ApplyModifier_Regex(const char *mod, App
     Boolean oneBigWord = st->oneBigWord;
     char delim = mod[1];
 
-    st->cp = mod + 2;
+    st->next = mod + 2;
 
-    char *re = ParseModifierPart(&st->cp, delim, st->eflags, st->ctxt,
+    char *re = ParseModifierPart(&st->next, delim, st->eflags, st->ctxt,
 				 NULL, NULL, NULL);
     if (re == NULL) {
 	st->missing_delim = delim;
 	return FALSE;
     }
 
-    args.replace = ParseModifierPart(&st->cp, delim, st->eflags, st->ctxt,
+    args.replace = ParseModifierPart(&st->next, delim, st->eflags, st->ctxt,
 				     NULL, NULL, NULL);
     if (args.replace == NULL) {
 	free(re);
@@ -2483,8 +2483,8 @@ ApplyModifier_Regex(const char *mod, App
 	return FALSE;
     }
 
-    for (;; st->cp++) {
-	switch (*st->cp) {
+    for (;; st->next++) {
+	switch (*st->next) {
 	case 'g':
 	    args.pflags |= VARP_SUB_GLOBAL;
 	    continue;
@@ -2498,7 +2498,7 @@ ApplyModifier_Regex(const char *mod, App
 	break;
     }
 
-    st->termc = *st->cp;
+    st->termc = *st->next;
 
     int error = regcomp(&args.re, re, REG_EXTENDED);
     free(re);
@@ -2534,11 +2534,11 @@ ApplyModifier_ToSep(const char *sep, App
     if (sep[0] != st->endc && (sep[1] == st->endc || sep[1] == ':')) {
 	/* ":ts<unrecognised><endc>" or ":ts<unrecognised>:" */
 	st->sep = sep[0];
-	st->cp = sep + 1;
+	st->next = sep + 1;
     } else if (sep[0] == st->endc || sep[0] == ':') {
 	/* ":ts<endc>" or ":ts:" */
 	st->sep = '\0';		/* no separator */
-	st->cp = sep;
+	st->next = sep;
     } else if (sep[0] == '\\') {
 	const char *xp = sep + 1;
 	int base = 8;		/* assume octal */
@@ -2546,11 +2546,11 @@ ApplyModifier_ToSep(const char *sep, App
 	switch (sep[1]) {
 	case 'n':
 	    st->sep = '\n';
-	    st->cp = sep + 2;
+	    st->next = sep + 2;
 	    break;
 	case 't':
 	    st->sep = '\t';
-	    st->cp = sep + 2;
+	    st->next = sep + 2;
 	    break;
 	case 'x':
 	    base = 16;
@@ -2568,14 +2568,14 @@ ApplyModifier_ToSep(const char *sep, App
 	    st->sep = strtoul(sep + 1 + (sep[1] == 'x'), &end, base);
 	    if (*end != ':' && *end != st->endc)
 	        return FALSE;
-	    st->cp = end;
+	    st->next = end;
 	    break;
 	}
     } else {
 	return FALSE;		/* Found ":ts<unrecognised><unrecognised>". */
     }
 
-    st->termc = *st->cp;
+    st->termc = *st->next;
     st->newStr = ModifyWords(st->ctxt, st->sep, st->oneBigWord, st->nstr,
 			     ModifyWord_Copy, NULL);
     return TRUE;
@@ -2585,7 +2585,7 @@ ApplyModifier_ToSep(const char *sep, App
 static Boolean
 ApplyModifier_To(const char *mod, ApplyModifiersState *st)
 {
-    st->cp = mod + 1;	/* make sure it is set */
+    st->next = mod + 1;	/* make sure it is set */
     if (mod[1] == st->endc || mod[1] == ':')
 	return FALSE;		/* Found ":t<endc>" or ":t:". */
 
@@ -2599,25 +2599,25 @@ ApplyModifier_To(const char *mod, ApplyM
     if (mod[1] == 'A') {	/* absolute path */
 	st->newStr = ModifyWords(st->ctxt, st->sep, st->oneBigWord, st->nstr,
 				 ModifyWord_Realpath, NULL);
-	st->cp = mod + 2;
-	st->termc = *st->cp;
+	st->next = mod + 2;
+	st->termc = *st->next;
     } else if (mod[1] == 'u') {
 	char *dp = bmake_strdup(st->nstr);
 	for (st->newStr = dp; *dp; dp++)
 	    *dp = toupper((unsigned char)*dp);
-	st->cp = mod + 2;
-	st->termc = *st->cp;
+	st->next = mod + 2;
+	st->termc = *st->next;
     } else if (mod[1] == 'l') {
 	char *dp = bmake_strdup(st->nstr);
 	for (st->newStr = dp; *dp; dp++)
 	    *dp = tolower((unsigned char)*dp);
-	st->cp = mod + 2;
-	st->termc = *st->cp;
+	st->next = mod + 2;
+	st->termc = *st->next;
     } else if (mod[1] == 'W' || mod[1] == 'w') {
 	st->oneBigWord = mod[1] == 'W';
 	st->newStr = st->nstr;
-	st->cp = mod + 2;
-	st->termc = *st->cp;
+	st->next = mod + 2;
+	st->termc = *st->next;
     } else {
 	/* Found ":t<unrecognised>:" or ":t<unrecognised><endc>". */
 	return FALSE;
@@ -2629,17 +2629,17 @@ ApplyModifier_To(const char *mod, ApplyM
 static int
 ApplyModifier_Words(const char *mod, ApplyModifiersState *st)
 {
-    st->cp = mod + 1;		/* point to char after '[' */
+    st->next = mod + 1;		/* point to char after '[' */
     char delim = ']';		/* look for closing ']' */
-    char *estr = ParseModifierPart(&st->cp, delim, st->eflags, st->ctxt,
+    char *estr = ParseModifierPart(&st->next, delim, st->eflags, st->ctxt,
 				   NULL, NULL, NULL);
     if (estr == NULL) {
 	st->missing_delim = delim;
 	return 'c';
     }
 
-    /* now st->cp points just after the closing ']' */
-    if (st->cp[0] != ':' && st->cp[0] != st->endc)
+    /* now st->next points just after the closing ']' */
+    if (st->next[0] != ':' && st->next[0] != st->endc)
 	goto bad_modifier;	/* Found junk after ']' */
 
     if (estr[0] == '\0')
@@ -2719,7 +2719,7 @@ ApplyModifier_Words(const char *mod, App
     st->newStr = VarSelectWords(st->sep, st->oneBigWord, st->nstr, first, last);
 
 ok:
-    st->termc = *st->cp;
+    st->termc = *st->next;
     free(estr);
     return 0;
 
@@ -2734,15 +2734,15 @@ ApplyModifier_Order(const char *mod, App
 {
     char otype;
 
-    st->cp = mod + 1;	/* skip to the rest in any case */
+    st->next = mod + 1;	/* skip to the rest in any case */
     if (mod[1] == st->endc || mod[1] == ':') {
 	otype = 's';
-	st->termc = *st->cp;
+	st->termc = *st->next;
     } else if ((mod[1] == 'r' || mod[1] == 'x') &&
 	       (mod[2] == st->endc || mod[2] == ':')) {
 	otype = mod[1];
-	st->cp = mod + 2;
-	st->termc = *st->cp;
+	st->next = mod + 2;
+	st->termc = *st->next;
     } else {
 	return FALSE;
     }
@@ -2767,9 +2767,9 @@ ApplyModifier_IfElse(const char *mod, Ap
 	    else_eflags |= VARE_WANTRES;
     }
 
-    st->cp = mod + 1;
+    st->next = mod + 1;
     char delim = ':';
-    char *then_expr = ParseModifierPart(&st->cp, delim, then_eflags, st->ctxt,
+    char *then_expr = ParseModifierPart(&st->next, delim, then_eflags, st->ctxt,
 					NULL, NULL, NULL);
     if (then_expr == NULL) {
 	st->missing_delim = delim;
@@ -2777,14 +2777,14 @@ ApplyModifier_IfElse(const char *mod, Ap
     }
 
     delim = st->endc;		/* BRCLOSE or PRCLOSE */
-    char *else_expr = ParseModifierPart(&st->cp, delim, else_eflags, st->ctxt,
+    char *else_expr = ParseModifierPart(&st->next, delim, else_eflags, st->ctxt,
 					NULL, NULL, NULL);
     if (else_expr == NULL) {
 	st->missing_delim = delim;
 	return FALSE;
     }
 
-    st->termc = *--st->cp;
+    st->termc = *--st->next;
     if (cond_rc == COND_INVALID) {
 	Error("Bad conditional expression `%s' in %s?%s:%s",
 	    st->v->name, st->v->name, then_expr, else_expr);
@@ -2858,15 +2858,15 @@ ApplyModifier_Assign(const char *mod, Ap
     case '+':
     case '?':
     case '!':
-	st->cp = mod + 3;
+	st->next = mod + 3;
 	break;
     default:
-	st->cp = mod + 2;
+	st->next = mod + 2;
 	break;
     }
 
     char delim = st->startc == PROPEN ? PRCLOSE : BRCLOSE;
-    char *val = ParseModifierPart(&st->cp, delim, st->eflags, st->ctxt,
+    char *val = ParseModifierPart(&st->next, delim, st->eflags, st->ctxt,
 				  NULL, NULL, NULL);
     if (st->v->flags & VAR_JUNK) {
 	/* restore original name */
@@ -2878,7 +2878,7 @@ ApplyModifier_Assign(const char *mod, Ap
 	return 'c';
     }
 
-    st->termc = *--st->cp;
+    st->termc = *--st->next;
 
     if (st->eflags & VARE_WANTRES) {
 	switch (op[0]) {
@@ -2914,7 +2914,7 @@ static Boolean
 ApplyModifier_Remember(const char *mod, ApplyModifiersState *st)
 {
     if (!ModMatchEq(mod, "_", st->endc)) {
-	st->cp = mod + 1;
+	st->next = mod + 1;
 	return FALSE;
     }
 
@@ -2923,13 +2923,13 @@ ApplyModifier_Remember(const char *mod, 
 	char *name = bmake_strndup(mod + 2, n);
 	Var_Set(name, st->nstr, st->ctxt);
 	free(name);
-	st->cp = mod + 2 + n;
+	st->next = mod + 2 + n;
     } else {
 	Var_Set("_", st->nstr, st->ctxt);
-	st->cp = mod + 1;
+	st->next = mod + 1;
     }
     st->newStr = st->nstr;
-    st->termc = *st->cp;
+    st->termc = *st->next;
     return TRUE;
 }
 
@@ -2945,25 +2945,25 @@ ApplyModifier_SysV(const char *mod, Appl
      * to verify it is a SYSV-make-style translation:
      * it must be: <string1>=<string2>)
      */
-    st->cp = mod;
+    st->next = mod;
     int nest = 1;
-    while (*st->cp != '\0' && nest > 0) {
-	if (*st->cp == '=') {
+    while (*st->next != '\0' && nest > 0) {
+	if (*st->next == '=') {
 	    eqFound = TRUE;
 	    /* continue looking for st->endc */
-	} else if (*st->cp == st->endc)
+	} else if (*st->next == st->endc)
 	    nest--;
-	else if (*st->cp == st->startc)
+	else if (*st->next == st->startc)
 	    nest++;
 	if (nest > 0)
-	    st->cp++;
+	    st->next++;
     }
-    if (*st->cp != st->endc || !eqFound)
+    if (*st->next != st->endc || !eqFound)
 	return 0;
 
     char delim = '=';
-    st->cp = mod;
-    char *lhs = ParseModifierPart(&st->cp, delim, st->eflags, st->ctxt,
+    st->next = mod;
+    char *lhs = ParseModifierPart(&st->next, delim, st->eflags, st->ctxt,
 				  NULL, NULL, NULL);
     if (lhs == NULL) {
 	st->missing_delim = delim;
@@ -2971,7 +2971,7 @@ ApplyModifier_SysV(const char *mod, Appl
     }
 
     delim = st->endc;
-    char *rhs = ParseModifierPart(&st->cp, delim, st->eflags, st->ctxt,
+    char *rhs = ParseModifierPart(&st->next, delim, st->eflags, st->ctxt,
 				  NULL, NULL, NULL);
     if (rhs == NULL) {
 	st->missing_delim = delim;
@@ -2982,7 +2982,7 @@ ApplyModifier_SysV(const char *mod, Appl
      * SYSV modifications happen through the whole
      * string. Note the pattern is anchored at the end.
      */
-    st->termc = *--st->cp;
+    st->termc = *--st->next;
     if (lhs[0] == '\0' && *st->nstr == '\0') {
 	st->newStr = st->nstr;	/* special case */
     } else {
@@ -3164,8 +3164,8 @@ ApplyModifiers(char *nstr, const char * 
 		if (st.v->flags & VAR_JUNK)
 		    st.v->flags |= VAR_KEEP;
 		st.newStr = bmake_strdup(st.v->name);
-		st.cp = p + 1;
-		st.termc = *st.cp;
+		st.next = p + 1;
+		st.termc = *st.next;
 		break;
 	    }
 	case 'P':
@@ -3222,8 +3222,8 @@ ApplyModifiers(char *nstr, const char * 
 	case 'Q':
 	    if (p[1] == st.endc || p[1] == ':') {
 		st.newStr = VarQuote(st.nstr, modifier == 'q');
-		st.cp = p + 1;
-		st.termc = *st.cp;
+		st.next = p + 1;
+		st.termc = *st.next;
 		break;
 	    }
 	    goto default_case;
@@ -3231,8 +3231,8 @@ ApplyModifiers(char *nstr, const char * 
 	    if (p[1] == st.endc || p[1] == ':') {
 		st.newStr = ModifyWords(st.ctxt, st.sep, st.oneBigWord,
 					st.nstr, ModifyWord_Tail, NULL);
-		st.cp = p + 1;
-		st.termc = *st.cp;
+		st.next = p + 1;
+		st.termc = *st.next;
 		break;
 	    }
 	    goto default_case;
@@ -3240,8 +3240,8 @@ ApplyModifiers(char *nstr, const char * 
 	    if (p[1] == st.endc || p[1] == ':') {
 		st.newStr = ModifyWords(st.ctxt, st.sep, st.oneBigWord,
 					st.nstr, ModifyWord_Head, NULL);
-		st.cp = p + 1;
-		st.termc = *st.cp;
+		st.next = p + 1;
+		st.termc = *st.next;
 		break;
 	    }
 	    goto default_case;
@@ -3249,8 +3249,8 @@ ApplyModifiers(char *nstr, const char * 
 	    if (p[1] == st.endc || p[1] == ':') {
 		st.newStr = ModifyWords(st.ctxt, st.sep, st.oneBigWord,
 					st.nstr, ModifyWord_Suffix, NULL);
-		st.cp = p + 1;
-		st.termc = *st.cp;
+		st.next = p + 1;
+		st.termc = *st.next;
 		break;
 	    }
 	    goto default_case;
@@ -3258,8 +3258,8 @@ ApplyModifiers(char *nstr, const char * 
 	    if (p[1] == st.endc || p[1] == ':') {
 		st.newStr = ModifyWords(st.ctxt, st.sep, st.oneBigWord,
 					st.nstr, ModifyWord_Root, NULL);
-		st.cp = p + 1;
-		st.termc = *st.cp;
+		st.next = p + 1;
+		st.termc = *st.next;
 		break;
 	    }
 	    goto default_case;
@@ -3274,8 +3274,8 @@ ApplyModifiers(char *nstr, const char * 
 	case 'u':
 	    if (p[1] == st.endc || p[1] == ':') {
 		st.newStr = VarUniq(st.nstr);
-		st.cp = p + 1;
-		st.termc = *st.cp;
+		st.next = p + 1;
+		st.termc = *st.next;
 		break;
 	    }
 	    goto default_case;
@@ -3289,8 +3289,8 @@ ApplyModifiers(char *nstr, const char * 
 			Error(emsg, st.nstr);
 		} else
 		    st.newStr = varNoError;
-		st.cp = p + 2;
-		st.termc = *st.cp;
+		st.next = p + 2;
+		st.termc = *st.next;
 		break;
 	    }
 	    goto default_case;
@@ -3306,11 +3306,12 @@ ApplyModifiers(char *nstr, const char * 
 #endif
 		{
 		    Error("Unknown modifier '%c'", *p);
-		    for (st.cp = p + 1;
-			 *st.cp != ':' && *st.cp != st.endc && *st.cp != '\0';
-			 st.cp++)
+		    for (st.next = p + 1;
+			 *st.next != ':' && *st.next != st.endc &&
+			 *st.next != '\0';
+			 st.next++)
 			continue;
-		    st.termc = *st.cp;
+		    st.termc = *st.next;
 		    st.newStr = var_Error;
 		}
 	    }
@@ -3335,9 +3336,9 @@ ApplyModifiers(char *nstr, const char * 
 		"for \"%s\" (value \"%s\") modifier %c",
 		st.endc, st.v->name, st.nstr, modifier);
 	} else if (st.termc == ':') {
-	    st.cp++;
+	    st.next++;
 	}
-	p = st.cp;
+	p = st.next;
     }
 out:
     *lengthPtr = p - tstr;
@@ -3348,7 +3349,7 @@ bad_modifier:
 	  (int)strcspn(p, ":)}"), p, st.v->name);
 
 cleanup:
-    *lengthPtr = st.cp - tstr;
+    *lengthPtr = st.next - tstr;
     if (st.missing_delim != '\0')
 	Error("Unclosed substitution for %s (%c missing)",
 	      st.v->name, st.missing_delim);

Reply via email to