summaryrefslogtreecommitdiff
path: root/gcc/tradcpp.c
diff options
context:
space:
mode:
authorneil <neil@138bc75d-0d04-0410-961f-82ee72b054a4>2001-08-21 17:10:22 +0000
committerneil <neil@138bc75d-0d04-0410-961f-82ee72b054a4>2001-08-21 17:10:22 +0000
commitdc2573f9e5cc627ed7302e19a2e34b570a0ba662 (patch)
tree6b5c6057d1b2f370ac492761834bc106bbc308d6 /gcc/tradcpp.c
parent3652f6802f8835e0722dc21deb636f4c5ddf362d (diff)
downloadgcc-dc2573f9e5cc627ed7302e19a2e34b570a0ba662.tar.gz
* tradcpp.c (rescan): define obufp_before_macroname before RECACHE
(RECACHE): keep obufp_before_macroname up to date git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@45082 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tradcpp.c')
-rw-r--r--gcc/tradcpp.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/gcc/tradcpp.c b/gcc/tradcpp.c
index 46b7e994a0c..7d5e11050ec 100644
--- a/gcc/tradcpp.c
+++ b/gcc/tradcpp.c
@@ -1220,6 +1220,9 @@ rescan (op, output_marks)
/* Record position of last `real' newline. */
U_CHAR *beg_of_line;
+ /* This has to be a global bacause of RECACHE. */
+ U_CHAR *obufp_before_macroname = NULL;
+
/* Pop the innermost input stack level, assuming it is a macro expansion. */
#define POPMACRO \
@@ -1237,6 +1240,7 @@ do { ip = &instack[indepth]; \
op->bufp = obp; \
check_expand (op, limit - ibp); \
beg_of_line = 0; \
+ obufp_before_macroname += op->bufp - obp; \
obp = op->bufp; } while (0)
if (no_output && instack[indepth].fname != 0)
@@ -1647,7 +1651,8 @@ randomchar:
hp = hp->next) {
if (hp->length == ident_length) {
- U_CHAR *obufp_before_macroname;
+ /* obufp_before_macroname is used only in this block,
+ but it has to be global because of RECACHE. */
int op_lineno_before_macroname;
register int i = ident_length;
register U_CHAR *p = hp->name;