Commit 2d2a86ae by Jakub Jelinek Committed by Jakub Jelinek

tradcpp.c (do_define): Make sure we don't walk past limit.

	* tradcpp.c (do_define): Make sure we don't walk past limit.

	* gcc.dg/cpp/tr-define.c: New test.

From-SVN: r41773
parent 258bfae2
2001-05-02 Jakub Jelinek <jakub@redhat.com>
* tradcpp.c (do_define): Make sure we don't walk past limit.
2000-05-01 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> 2000-05-01 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
* config/rs6000/rs6000.c (rs6000_legitimate_address): Allow any stack * config/rs6000/rs6000.c (rs6000_legitimate_address): Allow any stack
......
2001-05-02 Jakub Jelinek <jakub@redhat.com>
* gcc.dg/cpp/tr-define.c: New test.
2001-05-01 Loren J. Rittle <ljrittle@acm.org> 2001-05-01 Loren J. Rittle <ljrittle@acm.org>
* g++.old-deja/g++.abi/cxa_vec.C: Get malloc() from * g++.old-deja/g++.abi/cxa_vec.C: Get malloc() from
......
/* { dg-do preprocess } */
/* { dg-options "-traditional -DDEFINE1DEFINE -DDEFINE2DEFIN=" } */
...@@ -2670,8 +2670,8 @@ do_define (buf, limit, op) ...@@ -2670,8 +2670,8 @@ do_define (buf, limit, op)
} }
} }
++bp; /* skip paren */ ++bp; /* skip paren */
while (is_nvspace (*bp)) /* and leading whitespace */ while (is_nvspace (*bp) && bp < limit) /* and leading whitespace */
++bp; ++bp;
/* now everything from bp before limit is the definition. */ /* now everything from bp before limit is the definition. */
defn = collect_expansion (bp, limit, argno, arg_ptrs); defn = collect_expansion (bp, limit, argno, arg_ptrs);
...@@ -2698,7 +2698,7 @@ do_define (buf, limit, op) ...@@ -2698,7 +2698,7 @@ do_define (buf, limit, op)
} }
} else { } else {
/* simple expansion or empty definition; skip leading whitespace */ /* simple expansion or empty definition; skip leading whitespace */
while (is_nvspace (*bp)) while (is_nvspace (*bp) && bp < limit)
++bp; ++bp;
/* now everything from bp before limit is the definition. */ /* now everything from bp before limit is the definition. */
defn = collect_expansion (bp, limit, -1, 0); defn = collect_expansion (bp, limit, -1, 0);
......
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