Commit d8bfa78c by Richard Kenner

(macroexpand): Delete any no-reexpansion marker that follows an identifier at...

(macroexpand): Delete any no-reexpansion marker that follows an
identifier at the beginning of an argument that is concatenated with
what precedes it.

From-SVN: r13356
parent a7ad699e
/* CPP Library. /* CPP Library.
Copyright (C) 1986, 87, 89, 92-5, 1996 Free Software Foundation, Inc. Copyright (C) 1986, 87, 89, 92-6, 1997 Free Software Foundation, Inc.
Written by Per Bothner, 1994-95. Written by Per Bothner, 1994-95.
Based on CCCP program by by Paul Rubin, June 1986 Based on CCCP program by Paul Rubin, June 1986
Adapted to ANSI C, Richard Stallman, Jan 1987 Adapted to ANSI C, Richard Stallman, Jan 1987
This program is free software; you can redistribute it and/or modify it This program is free software; you can redistribute it and/or modify it
...@@ -2892,6 +2892,11 @@ macroexpand (pfile, hp) ...@@ -2892,6 +2892,11 @@ macroexpand (pfile, hp)
while (p1 != l1 && is_space[*p1]) p1++; while (p1 != l1 && is_space[*p1]) p1++;
while (p1 != l1 && is_idchar[*p1]) while (p1 != l1 && is_idchar[*p1])
xbuf[totlen++] = *p1++; xbuf[totlen++] = *p1++;
/* Delete any no-reexpansion marker that follows
an identifier at the beginning of the argument
if the argument is concatenated with what precedes it. */
if (p1[0] == '@' && p1[1] == '-')
p1 += 2;
} }
if (ap->raw_after) if (ap->raw_after)
{ {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment