Stage 1: convert m4_symbol_value** into new object.
commit14b2ffbb82eb22cd36b1703a5501ee87ea51c45c
authorEric Blake <ebb9@byu.net>
Sat, 24 Nov 2007 23:23:47 +0000 (24 16:23 -0700)
committerEric Blake <ebb9@byu.net>
Sat, 24 Nov 2007 23:23:47 +0000 (24 16:23 -0700)
treec5cf9ef543b8a11864d1ac6d292d3976ed9902fa
parent32ab6f9f819643ec7187bf1680d582eb8f131774
Stage 1: convert m4_symbol_value** into new object.

* ltdl/m4/gnulib-cache.m4: Import flexmember module.
* m4/m4module.h (m4_macro_args): New type, will be opaque to
modules later.
(m4_builtin_func, M4BUILTIN, M4BUILTIN_HANDLER, m4_dump_args)
(m4_macro_call): Alter signature to use m4_macro_args object.
(M4ARG): Redefine to access new struct.
* m4/m4private.h (M4_SYMBOL_COMP): New enumerator.
(struct m4_symbol_chain): New type.
(struct m4_symbol_value): Add chain alternative.
* m4/macro.c (collect_arguments): Build new struct.
(expand_macro, m4_macro_call, process_macro, trace_pre)
(trace_post): Adjust implementation to use it.
* m4/utility.c (m4_dump_args): Likewise.
* modules/gnu.c (builtin, indir): Likewise.
* modules/format.c (format): Likewise.
* modules/m4.h (m4_dump_symbols_func): Likewise.
* modules/m4.c (m4_dump_symbols, define, pushdef, defn, ifelse)
(shift, include, errprint, m4wrap): Likewise.
* modules/evalparse.c (m4_evaluate): Likewise.

Signed-off-by: Eric Blake <ebb9@byu.net>
ChangeLog
ltdl/m4/gnulib-cache.m4
m4/m4module.h
m4/m4private.h
m4/macro.c
m4/utility.c
modules/evalparse.c
modules/format.c
modules/gnu.c
modules/m4.c
modules/m4.h