m4-commit
[Top][All Lists]
Advanced

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

m4 ./ChangeLog m4/debug.c m4/input.c m4/m4.c m4...


From: Gary V. Vaughan
Subject: m4 ./ChangeLog m4/debug.c m4/input.c m4/m4.c m4...
Date: Thu, 26 Jun 2003 10:57:32 -0400

CVSROOT:        /cvsroot/m4
Module name:    m4
Branch:         
Changes by:     Gary V. Vaughan <address@hidden>        03/06/26 10:57:32

Modified files:
        .              : ChangeLog 
        m4             : debug.c input.c m4.c m4module.h m4private.h 
                         macro.c output.c symtab.c syntax.c utility.c 
        modules        : gnu.c load.c m4.c perl.c stdlib.c 
        src            : freeze.c main.c 

Log message:
        Move the global variables that pertain to syntax to a new `struct
        m4_syntax_table', and then add one of these to `struct m4'.  The
        ripple effect through the code to both change formerly global
        references, and make sure a suitable context is available in
        lexical scope is disproportionately large compared to the size of
        the change proper.  This change is a large part of decoupling
        syntax.c from the rest of the code that uses it.
        
        * m4/m4private.h (struct m4): Add a syntax field.
        * m4/m4.c (m4_create): Initialise it,
        (m4_delete): Recycle it.
        (m4_get_symtab): Remove hand coded version...
        (m4_get_symbol_table): ...and generate this with cpp.  Changed all
        callers.
        * m4/m4module.h (m4_context_field_table): Add an extra field so we
        can generate m4_get_symbol_table.  Add a new row for
        m4_get_syntax_table.
        (M4SYNTAX): Syntactic sugar for module writers.
        (m4_symtab): Renamed to m4_symbol_table.  Changed all callers.
        (m4_syntax_table): New home for syntax related formerly global
        variables.
        * m4/m4private.h (struct m4_syntax_table): Define it.
        * m4/input.c (m4_input_init): Initialisation of these formerly
        global variables moved...
        * m4/syntax.c (m4_syntax_create): ...to here.
        * m4/input.c (m4_input_exit): And similarly, recycling of the
        memory used by those values moved...
        * m4/syntax.c (m4_syntax_delete): ...to here.
        * m4/m4module.h (DEF_LQUOTE, DEF_RQUOTE, DEF_BCOMM, DEF_ECOMM):
        Moved to m4/m4private.h.
        * m4/syntax.c (m4_get_syntax_lquote, m4_get_syntax_rquote)
        (m4_get_syntax_bcomm, m4_get_syntax_ecomm)
        (m4_is_syntax_single_quotes, m4_is_syntax_single_comments)
        (m4_is_syntax_macro_escaped): New accessors for m4_syntax_table
        objects.  Changed all callers that used to directly access the
        global equivalents.
        (m4__single_quotes, m4__single_comments, m4__use_macro_escape):
        Removed and incorporated into m4_syntax_table structure.
        * m4/utility.c (lquote, rquote, bcomm, ecomm): Ditto.
        * m4/syntax.c (m4_set_syntax): Now returns an error status,
        instead of requiring a `struct m4' to generate its own errors.
        Changed all callers.
        * src/main.c (main): Now that the syntax table is initialised as
        part of m4_create, we have to manually wipe the syntax entries if
        we are about to read a frozen file.

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/m4/m4/ChangeLog.diff?tr1=1.184&tr2=1.185&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/m4/m4/m4/debug.c.diff?tr1=1.14&tr2=1.15&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/m4/m4/m4/input.c.diff?tr1=1.28&tr2=1.29&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/m4/m4/m4/m4.c.diff?tr1=1.3&tr2=1.4&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/m4/m4/m4/m4module.h.diff?tr1=1.51&tr2=1.52&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/m4/m4/m4/m4private.h.diff?tr1=1.25&tr2=1.26&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/m4/m4/m4/macro.c.diff?tr1=1.29&tr2=1.30&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/m4/m4/m4/output.c.diff?tr1=1.11&tr2=1.12&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/m4/m4/m4/symtab.c.diff?tr1=1.40&tr2=1.41&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/m4/m4/m4/syntax.c.diff?tr1=1.3&tr2=1.4&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/m4/m4/m4/utility.c.diff?tr1=1.28&tr2=1.29&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/m4/m4/modules/gnu.c.diff?tr1=1.23&tr2=1.24&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/m4/m4/modules/load.c.diff?tr1=1.11&tr2=1.12&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/m4/m4/modules/m4.c.diff?tr1=1.44&tr2=1.45&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/m4/m4/modules/perl.c.diff?tr1=1.9&tr2=1.10&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/m4/m4/modules/stdlib.c.diff?tr1=1.9&tr2=1.10&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/m4/m4/src/freeze.c.diff?tr1=1.31&tr2=1.32&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/m4/m4/src/main.c.diff?tr1=1.42&tr2=1.43&r1=text&r2=text





reply via email to

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