This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "GNU M4 source repository".
http://git.sv.gnu.org/gitweb/?p=m4.git;a=commitdiff;h=c9d53ab9bcef0cb04d59f5797e6f20159150b75d The branch, branch-1.6 has been updated via c9d53ab9bcef0cb04d59f5797e6f20159150b75d (commit) from 12a62477d77990112a98d3c785818f17d7b5a392 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit c9d53ab9bcef0cb04d59f5797e6f20159150b75d Author: Eric Blake <[EMAIL PROTECTED]> Date: Wed Jul 30 07:08:29 2008 -0600 Fix regression in trace output, introduced 2008-05-09. * src/input.c (push_token): When cloning chains, break pointer back to original chain; latent bug from 2008-02-02 that did not cause misbehavior until trace output read unfinished chain. * doc/m4.texinfo (Trace): Add test for this. Signed-off-by: Eric Blake <[EMAIL PROTECTED]> ----------------------------------------------------------------------- Summary of changes: ChangeLog | 8 ++++++++ doc/m4.texinfo | 16 ++++++++++++++++ src/input.c | 1 + 3 files changed, 25 insertions(+), 0 deletions(-) diff --git a/ChangeLog b/ChangeLog index 47449f2..d4f182e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2008-07-30 Eric Blake <[EMAIL PROTECTED]> + + Fix regression in trace output, introduced 2008-05-09. + * src/input.c (push_token): When cloning chains, break pointer + back to original chain; latent bug from 2008-02-02 that did not + cause misbehavior until trace output read unfinished chain. + * doc/m4.texinfo (Trace): Add test for this. + 2008-07-28 Eric Blake <[EMAIL PROTECTED]> Optimize iteration examples. diff --git a/doc/m4.texinfo b/doc/m4.texinfo index f8b3998..abacef9 100644 --- a/doc/m4.texinfo +++ b/doc/m4.texinfo @@ -3854,6 +3854,22 @@ indir(`my_defn', indir(`shift', `', `foo')) @result{}bar @end example [EMAIL PROTECTED] [EMAIL PROTECTED] not worth including in the manual, but this tests a trace code [EMAIL PROTECTED] path that was temporarily broken [EMAIL PROTECTED] options: -de --trace ifelse [EMAIL PROTECTED] +$ @kbd{m4 -de --trace ifelse} +define(`e', `ifelse(`$1', `$2', `ifelse(`$1', `$2', `e(shift($@@))')')') [EMAIL PROTECTED] +e(`1', `1') [EMAIL PROTECTED]: -1- ifelse -> ifelse(`1', `1', `e(shift(`1',`1'))') [EMAIL PROTECTED]: -1- ifelse -> e(shift(`1',`1')) [EMAIL PROTECTED]: -1- ifelse ->@w{ } [EMAIL PROTECTED] [EMAIL PROTECTED] example [EMAIL PROTECTED] ignore + @node Debug Levels @section Controlling debugging output diff --git a/src/input.c b/src/input.c index 18271cd..0d08215 100644 --- a/src/input.c +++ b/src/input.c @@ -472,6 +472,7 @@ push_token (token_data *token, int level, bool inuse) destructively modifies the chain it is parsing. */ chain = (token_chain *) obstack_copy (current_input, src_chain, sizeof *chain); + chain->next = NULL; if (chain->type == CHAIN_STR && chain->u.u_s.level == -1) { if (chain->u.u_s.len <= INPUT_INLINE_THRESHOLD || !inuse) hooks/post-receive -- GNU M4 source repository
