aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Kenner <kenner@gcc.gnu.org>1994-06-24 19:09:17 -0400
committerRichard Kenner <kenner@gcc.gnu.org>1994-06-24 19:09:17 -0400
commit9966b3915fad5ca4e14abc347ec22c3b0a9e159a (patch)
tree282e9081f6ca963a42c4844c3c68a9066d9b28b9
parent25212cdd8a3de4c7b21a04d638bb4cb8cea1fe9b (diff)
downloadgcc-9966b3915fad5ca4e14abc347ec22c3b0a9e159a.zip
gcc-9966b3915fad5ca4e14abc347ec22c3b0a9e159a.tar.gz
gcc-9966b3915fad5ca4e14abc347ec22c3b0a9e159a.tar.bz2
(create_definition): Eliminate whitespace before and after macro
definitions. From-SVN: r7568
-rw-r--r--gcc/cccp.c29
1 files changed, 9 insertions, 20 deletions
diff --git a/gcc/cccp.c b/gcc/cccp.c
index 60e5f15..beabe38 100644
--- a/gcc/cccp.c
+++ b/gcc/cccp.c
@@ -5333,8 +5333,9 @@ create_definition (buf, limit, op)
}
++bp; /* skip paren */
- /* Skip exactly one space or tab if any. */
- if (bp < limit && (*bp == ' ' || *bp == '\t')) ++bp;
+ /* Skip spaces and tabs if any. */
+ while (bp < limit && (*bp == ' ' || *bp == '\t'))
+ ++bp;
/* now everything from bp before limit is the definition. */
defn = collect_expansion (bp, limit, argno, arg_ptrs);
defn->rest_args = rest_args;
@@ -5357,10 +5358,12 @@ create_definition (buf, limit, op)
defn->args.argnames[i] = 0;
}
} else {
- /* simple expansion or empty definition; gobble it */
- if (is_hor_space[*bp])
- ++bp; /* skip exactly one blank/tab char */
- /* now everything from bp before limit is the definition. */
+ /* Simple expansion or empty definition. */
+
+ /* Skip spaces and tabs if any. */
+ while (bp < limit && (*bp == ' ' || *bp == '\t'))
+ ++bp;
+ /* Now everything from bp before limit is the definition. */
defn = collect_expansion (bp, limit, -1, NULL_PTR);
defn->args.argnames = (U_CHAR *) "";
}
@@ -5818,20 +5821,6 @@ collect_expansion (buf, end, nargs, arglist)
}
}
- if (limit < end) {
- /* Convert trailing whitespace to Newline-markers. */
- while (limit < end && is_space[*limit]) {
- *exp_p++ = '\n';
- *exp_p++ = *limit++;
- }
- } else if (!traditional && expected_delimiter == 0) {
- /* There is no trailing whitespace, so invent some in ANSI mode.
- But not if "inside a string" (which in ANSI mode
- happens only for -D option). */
- *exp_p++ = '\n';
- *exp_p++ = ' ';
- }
-
*exp_p = '\0';
defn->length = exp_p - defn->expansion;