* NEWS: Document that m4wrap/m4_wrap might not be LIFO.

* doc/autoconf.texi (): Likewise.
Rework example of m4wrap token-pasting trouble so that it doesn't
care whether it's LIFO or FIFO.
Fix some "contrary to"s that are awkward in English.
This commit is contained in:
Paul Eggert 2006-06-19 23:12:16 +00:00
parent 5788ed69a0
commit 814d1a1a07
3 changed files with 32 additions and 15 deletions

View File

@ -1,3 +1,12 @@
2006-06-19 Paul Eggert <eggert@cs.ucla.edu>
and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* NEWS: Document that m4wrap/m4_wrap might not be LIFO.
* doc/autoconf.texi (): Likewise.
Rework example of m4wrap token-pasting trouble so that it doesn't
care whether it's LIFO or FIFO.
Fix some "contrary to"s that are awkward in English.
2006-06-19 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* lib/autoconf/types.m4 (_AC_TYPE_INT): Set `$ac_cv_c_int$1_t'

4
NEWS
View File

@ -1,5 +1,9 @@
* Major changes in Autoconf 2.59e
** Autoconf no longer depends on whether m4wrap is FIFO (as Posix requires)
or LIFO (as in GNU m4 1.4.x). GNU m4 2.0 is expected to conform to Posix
here, so m4wrap/m4_wrap users should no longer depend on LIFO behavior.
* Major changes in Autoconf 2.59d
Released 2006-06-05, by Ralf Wildenhues.

View File

@ -4300,9 +4300,10 @@ If the @code{fnmatch} function conforms to Posix, define
@code{HAVE_FNMATCH}. Detect common implementation bugs, for example,
the bugs in Solaris 2.4.
Note that for historical reasons, contrary to the other specific
Unlike the other specific
@code{AC_FUNC} macros, @code{AC_FUNC_FNMATCH} does not replace a
broken/missing @code{fnmatch}. See @code{AC_REPLACE_FNMATCH} below.
broken/missing @code{fnmatch}. This is for historical reasons.
See @code{AC_REPLACE_FNMATCH} below.
@end defmac
@defmac AC_FUNC_FNMATCH_GNU
@ -9316,8 +9317,8 @@ m4 --reload-state=4.m4f input.m4
Produce a frozen state file. @command{autom4te} freezing is stricter
than M4's: it must produce no warnings, and no output other than empty
lines (a line with white space is @emph{not} empty) and comments
(starting with @samp{#}). Please, note that contrary to @command{m4},
this options takes no argument:
(starting with @samp{#}). Unlike @command{m4}'s similarly-named option,
this option takes no argument:
@example
autom4te 1.m4 2.m4 3.m4 --freeze --output=3.m4f
@ -9592,7 +9593,7 @@ This macro kept its original name: no @code{m4_dnl} is defined.
@defmac m4_defn (@var{macro})
@msindex{defn}
Contrary to the M4 builtin, this macro fails if @var{macro} is not
Unlike the M4 builtin, this macro fails if @var{macro} is not
defined. See @code{m4_undefine}.
@end defmac
@ -9624,7 +9625,7 @@ provide extended regular expression syntax via @code{epatsubst}.
@defmac m4_popdef (@var{macro})
@msindex{popdef}
Contrary to the M4 builtin, this macro fails if @var{macro} is not
Unlike the M4 builtin, this macro fails if @var{macro} is not
defined. See @code{m4_undefine}.
@end defmac
@ -9639,23 +9640,26 @@ provide extended regular expression syntax via @code{eregexp}.
@msindex{wrap}
This macro corresponds to @code{m4wrap}.
You are encouraged to end @var{text} with @samp{[]}, so that there are
no risks that two consecutive invocations of @code{m4_wrap} result in an
unexpected pasting of tokens, as in
Posix requires arguments of multiple @code{m4wrap} calls to be
reprocessed at @acronym{EOF} in the same order as the original calls.
@acronym{GNU} M4 versions through 1.4.x, however, reprocess them in
reverse order. Your code should not depend on the order.
You are encouraged to end @var{text} with @samp{[]}, to avoid unexpected
token pasting between consecutive invocations of @code{m4_wrap}, as in:
@example
m4_define([foo], [Foo])
m4_define([bar], [Bar])
m4_define([foobar], [FOOBAR])
m4_wrap([bar])
m4_define([foo], [bar])
m4_define([foofoo], [OUCH])
m4_wrap([foo])
@result{}FOOBAR
m4_wrap([foo])
@result{}OUCH
@end example
@end defmac
@defmac m4_undefine (@var{macro})
@msindex{undefine}
Contrary to the M4 builtin, this macro fails if @var{macro} is not
Unlike the M4 builtin, this macro fails if @var{macro} is not
defined. Use
@example