summaryrefslogtreecommitdiffstats
path: root/gcc/tradcpp.c
diff options
context:
space:
mode:
authorjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2001-05-02 20:50:01 +0000
committerjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2001-05-02 20:50:01 +0000
commit5c20641d435b29e081e68456ed8ded96e05b9bb9 (patch)
tree66595ad86dd1a7d6ab653b86a3f4901345e718a5 /gcc/tradcpp.c
parent4bbdf529d505e8dffde763cbb1cce49feafe3229 (diff)
downloadppe42-gcc-5c20641d435b29e081e68456ed8ded96e05b9bb9.tar.gz
ppe42-gcc-5c20641d435b29e081e68456ed8ded96e05b9bb9.zip
* tradcpp.c (do_define): Make sure we don't walk past limit.
* gcc.dg/cpp/tr-define.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@41773 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tradcpp.c')
-rw-r--r--gcc/tradcpp.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/gcc/tradcpp.c b/gcc/tradcpp.c
index d5674736f47..bfb12027b83 100644
--- a/gcc/tradcpp.c
+++ b/gcc/tradcpp.c
@@ -2670,8 +2670,8 @@ do_define (buf, limit, op)
}
}
- ++bp; /* skip paren */
- while (is_nvspace (*bp)) /* and leading whitespace */
+ ++bp; /* skip paren */
+ while (is_nvspace (*bp) && bp < limit) /* and leading whitespace */
++bp;
/* now everything from bp before limit is the definition. */
defn = collect_expansion (bp, limit, argno, arg_ptrs);
@@ -2698,7 +2698,7 @@ do_define (buf, limit, op)
}
} else {
/* simple expansion or empty definition; skip leading whitespace */
- while (is_nvspace (*bp))
+ while (is_nvspace (*bp) && bp < limit)
++bp;
/* now everything from bp before limit is the definition. */
defn = collect_expansion (bp, limit, -1, 0);
OpenPOWER on IntegriCloud