m4-commit
[Top][All Lists]
Advanced

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

Changes to m4/doc/m4.texinfo,v [branch-1_4]


From: Eric Blake
Subject: Changes to m4/doc/m4.texinfo,v [branch-1_4]
Date: Wed, 28 Feb 2007 14:35:29 +0000

CVSROOT:        /sources/m4
Module name:    m4
Branch:         branch-1_4
Changes by:     Eric Blake <ericb>      07/02/28 14:35:28

Index: doc/m4.texinfo
===================================================================
RCS file: /sources/m4/m4/doc/m4.texinfo,v
retrieving revision 1.1.1.1.2.116
retrieving revision 1.1.1.1.2.117
diff -u -b -r1.1.1.1.2.116 -r1.1.1.1.2.117
--- doc/m4.texinfo      28 Feb 2007 13:48:18 -0000      1.1.1.1.2.116
+++ doc/m4.texinfo      28 Feb 2007 14:35:28 -0000      1.1.1.1.2.117
@@ -2002,7 +2002,12 @@
 If a macro with several definitions is redefined with @code{define}, the
 topmost definition is @emph{replaced} with the new definition.  If it is
 removed with @code{undefine}, @emph{all} the definitions are removed,
-and not only the topmost one.
+and not only the topmost one.  However, @acronym{POSIX} allows other
+implementations that treat @code{define} as replacing an entire stack
+of definitions with a single new definition, so to be portable to other
+implementations, it may be worth explicitly using @code{popdef} and
address@hidden rather than relying on the @acronym{GNU} behavior of
address@hidden
 
 @example
 define(`foo', `Expansion one.')
@@ -5885,7 +5890,7 @@
 by undefining the entire stack of previous definitions, and if doing
 @code{undefine(`f')} first.  @acronym{GNU} @code{m4} replaces just the top
 definition on the stack, as if doing @code{popdef(`f')} followed by
address@hidden(`f',`1')}.
address@hidden(`f',`1')}.  @acronym{POSIX} allows either behavior.
 
 @item
 @acronym{POSIX} requires @code{syscmd} (@pxref{Syscmd}) to evaluate




reply via email to

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