From: Richard Kenner Date: Mon, 17 Oct 1994 22:47:09 +0000 (-0400) Subject: (rescan): Preserve newlines after macro names at the top level since this is... X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=02c1d408e26cfba29ae64906de31cf009e91567e;p=gcc.git (rescan): Preserve newlines after macro names at the top level since this is... (rescan): Preserve newlines after macro names at the top level since this is more likely to do the right thing with line numbers. From-SVN: r8287 --- diff --git a/gcc/cccp.c b/gcc/cccp.c index b4343001cdd..7f3613d874d 100644 --- a/gcc/cccp.c +++ b/gcc/cccp.c @@ -3276,9 +3276,17 @@ startagain: /* This is now known to be a macro call. Discard the macro name from the output, - along with any following whitespace just copied. */ + along with any following whitespace just copied, + but preserve newlines at the top level since this + is more likely to do the right thing with line numbers. */ obp = op->buf + obufp_before_macroname; - op->lineno = op_lineno_before_macroname; + if (ip->macro != 0) + op->lineno = op_lineno_before_macroname; + else { + int newlines = op->lineno - op_lineno_before_macroname; + while (0 < newlines--) + *obp++ = '\n'; + } /* Prevent accidental token-pasting with a character before the macro call. */