From f803dcf83d8e514ded5e36223e88f038bcf6b8e2 Mon Sep 17 00:00:00 2001 From: Richard Kenner Date: Mon, 16 Jan 1995 07:11:29 -0500 Subject: [PATCH] (rescan): Fix typo that caused tokens to be glued together improperly. From-SVN: r8763 --- gcc/cccp.c | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/gcc/cccp.c b/gcc/cccp.c index d960c7c4e77..d83fd98026c 100644 --- a/gcc/cccp.c +++ b/gcc/cccp.c @@ -1,5 +1,5 @@ /* C Compatible Compiler Preprocessor (CCCP) - Copyright (C) 1986, 87, 89, 92, 93, 1994 Free Software Foundation, Inc. + Copyright (C) 1986, 87, 89, 92, 93, 94, 1995 Free Software Foundation, Inc. Written by Paul Rubin, June 1986 Adapted to ANSI C, Richard Stallman, Jan 1987 @@ -3290,15 +3290,16 @@ startagain: /* Prevent accidental token-pasting with a character before the macro call. */ - if (!traditional && obp != op->buf - && (obp[-1] == '-' || obp[1] == '+' || obp[1] == '&' - || obp[-1] == '|' || obp[1] == '<' || obp[1] == '>')) { - /* If we are expanding a macro arg, make a newline marker - to separate the tokens. If we are making real output, - a plain space will do. */ - if (output_marks) - *obp++ = '\n'; - *obp++ = ' '; + if (!traditional && obp != op->buf) { + switch (obp[-1]) { + case '&': case '+': case '-': case '<': case '>': case '|': + /* If we are expanding a macro arg, make a newline marker + to separate the tokens. If we are making real output, + a plain space will do. */ + if (output_marks) + *obp++ = '\n'; + *obp++ = ' '; + } } /* Expand the macro, reading arguments as needed, -- 2.30.2