m4-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

m4 ChangeLog NEWS doc/m4.texinfo src/m4.h src/m... [branch]


From: Eric Blake
Subject: m4 ChangeLog NEWS doc/m4.texinfo src/m4.h src/m... [branch]
Date: Tue, 06 Jun 2006 12:39:53 +0000

CVSROOT:        /sources/m4
Module name:    m4
Branch:         branch
Changes by:     Eric Blake <ericb>      06/06/06 12:39:53

Modified files:
        .              : ChangeLog NEWS 
        doc            : m4.texinfo 
        src            : m4.h macro.c symtab.c 

Log message:
        When changing macro definitions inside the arguments to the macro,
        consistently preserve the old definition that was in effect before
        argument collection, similar to the C pre-processor.
        * NEWS: Document this change.
        * doc/m4.texinfo (Macro Arguments, Undefine, Dumpdef): Document
        this policy, and add tests that expose core dumps prior to this
        patch.
        * src/m4.h (struct symbol): New members to track when a symbol is
        still in use after removal from the symbol table.
        (SYMBOL_PENDING_EXPANSIONS, SYMBOL_DELETED): Define.
        (free_symbol): Prototype.
        * src/macro.c (expand_macro): Track pending expansions of a
        symbol.  On completion, if a symbol is deleted and no longer
        pending, free its memory.
        * src/symtab.c (free_symbol): Export.  Don't free memory if symbol
        is still in use.
        (lookup_symbol) <SYMBOL_INSERT>: Create new entry when old entry
        is still in use.
        (lookup_symbol) <SYMBOL_DELETE, SYMBOL_POPDEF>: Mark entries still
        in use as deleted and remove from the table without freeing
        memory.
        (symtab_print_list) [DEBUG_SYM]: More debug output.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/m4/ChangeLog?cvsroot=m4&only_with_tag=branch&r1=1.1.1.1.2.54&r2=1.1.1.1.2.55
http://cvs.savannah.gnu.org/viewcvs/m4/NEWS?cvsroot=m4&only_with_tag=branch&r1=1.1.1.1.2.15&r2=1.1.1.1.2.16
http://cvs.savannah.gnu.org/viewcvs/m4/doc/m4.texinfo?cvsroot=m4&only_with_tag=branch&r1=1.1.1.1.2.16&r2=1.1.1.1.2.17
http://cvs.savannah.gnu.org/viewcvs/m4/src/m4.h?cvsroot=m4&only_with_tag=branch&r1=1.1.1.1.2.6&r2=1.1.1.1.2.7
http://cvs.savannah.gnu.org/viewcvs/m4/src/macro.c?cvsroot=m4&only_with_tag=branch&r1=1.1.1.1.2.1&r2=1.1.1.1.2.2
http://cvs.savannah.gnu.org/viewcvs/m4/src/symtab.c?cvsroot=m4&only_with_tag=branch&r1=1.1.1.1.2.6&r2=1.1.1.1.2.7




reply via email to

[Prev in Thread] Current Thread [Next in Thread]