m4-commit
[Top][All Lists]
Advanced

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

Changes to m4/doc/m4.info [branch-1_4]


From: Gary V . Vaughan
Subject: Changes to m4/doc/m4.info [branch-1_4]
Date: Thu, 31 Mar 2005 06:20:35 -0500

Index: m4/doc/m4.info
diff -u m4/doc/m4.info:1.1.1.1.2.6 m4/doc/m4.info:1.1.1.1.2.7
--- m4/doc/m4.info:1.1.1.1.2.6  Thu Feb  3 17:09:11 2005
+++ m4/doc/m4.info      Thu Mar 31 11:20:17 2005
@@ -1,13 +1,14 @@
-This is m4.info, produced by makeinfo version 4.6 from m4.texinfo.
+This is m4.info, produced by makeinfo version 4.7 from m4.texinfo.
 
+INFO-DIR-SECTION GNU programming tools
 START-INFO-DIR-ENTRY
 * m4: (m4).                    A powerful macro processor.
 END-INFO-DIR-ENTRY
 
-   This file documents the GNU `m4' utility.
+   This file documents GNU M4 1.4.2a.
 
-   Copyright (C) 1989, 1990, 1991, 1992, 1993, 1994, 2004 Free Software
-Foundation, Inc.
+   Copyright (C) 1989, 1990, 1991, 1992, 1993, 1994, 2004, 2005 Free
+Software Foundation, Inc.
 
    Permission is granted to make and distribute verbatim copies of this
 manual provided the copyright notice and this permission notice are
@@ -26,8 +27,8 @@
 
 File: m4.info,  Node: Top,  Next: Preliminaries,  Prev: (dir),  Up: (dir)
 
-GNU `m4'
-********
+GNU M4
+******
 
 GNU `m4' is an implementation of the traditional UNIX macro processor.
 It is mostly SVR4 compatible, although it has some extensions (for
@@ -48,10 +49,9 @@
    An experimental feature, which would improve `m4' usefulness, allows
 for changing the syntax for what is a "word" in `m4'.  You should use:
      ./configure --enable-changeword
-
-if you want this feature compiled in.  The current implementation slows
-down `m4' considerably and is hardly acceptable.  So, it might go away,
-do not count on it yet.
+   if you want this feature compiled in.  The current implementation
+slows down `m4' considerably and is hardly acceptable.  So, it might go
+away, do not count on it yet.
 
 * Menu:
 
@@ -185,8 +185,8 @@
 
 File: m4.info,  Node: Preliminaries,  Next: Syntax,  Prev: Top,  Up: Top
 
-Introduction and preliminaries
-******************************
+1 Introduction and preliminaries
+********************************
 
 This first chapter explains what is GNU `m4', where `m4' comes from,
 how to read and use this documentation, how to call the `m4' program
@@ -207,8 +207,8 @@
 
 File: m4.info,  Node: Intro,  Next: History,  Prev: Preliminaries,  Up: 
Preliminaries
 
-Introduction to `m4'
-====================
+1.1 Introduction to `m4'
+========================
 
 `m4' is a macro processor, in the sense that it copies its input to the
 output, expanding macros as it goes.  Macros are either builtin or
@@ -238,8 +238,8 @@
 
 File: m4.info,  Node: History,  Next: Invoking m4,  Prev: Intro,  Up: 
Preliminaries
 
-Historical references
-=====================
+1.2 Historical references
+=========================
 
 The historical notes included here are fairly incomplete, and not
 authoritative at all.  Please knowledgeable users help us to more
@@ -261,8 +261,8 @@
 
 File: m4.info,  Node: Invoking m4,  Next: Bugs,  Prev: History,  Up: 
Preliminaries
 
-Invoking `m4'
-=============
+1.3 Invoking `m4'
+=================
 
 The format of the `m4' command is:
 
@@ -445,8 +445,8 @@
 
 File: m4.info,  Node: Bugs,  Next: Manual,  Prev: Invoking m4,  Up: 
Preliminaries
 
-Problems and bugs
-=================
+1.4 Problems and bugs
+=====================
 
 If you have problems with GNU `m4' or think you've found a bug, please
 report it.  Before reporting a bug, make sure you've actually found a
@@ -474,8 +474,8 @@
 
 File: m4.info,  Node: Manual,  Prev: Bugs,  Up: Preliminaries
 
-Using this manual
-=================
+1.5 Using this manual
+=====================
 
 This manual contains a number of examples of `m4' input and output, and
 a simple notation is used to distinguish input, output and error
@@ -513,8 +513,8 @@
 
 File: m4.info,  Node: Syntax,  Next: Macros,  Prev: Preliminaries,  Up: Top
 
-Lexical and syntactic conventions
-*********************************
+2 Lexical and syntactic conventions
+***********************************
 
 As `m4' reads its input, it separates it into "tokens".  A token is
 either a name, a quoted string, or any single character, that is not a
@@ -531,8 +531,8 @@
 
 File: m4.info,  Node: Names,  Next: Quoted strings,  Prev: Syntax,  Up: Syntax
 
-Names
-=====
+2.1 Names
+=========
 
 A name is any sequence of letters, digits, and the character `_'
 (underscore), where the first character is not a digit.  If a name has
@@ -544,8 +544,8 @@
 
 File: m4.info,  Node: Quoted strings,  Next: Other tokens,  Prev: Names,  Up: 
Syntax
 
-Quoted strings
-==============
+2.2 Quoted strings
+==================
 
 A quoted string is a sequence of characters surrounded by the quotes
 ``' and `'', where the number of start and end quotes within the string
@@ -568,8 +568,8 @@
 
 File: m4.info,  Node: Other tokens,  Next: Comments,  Prev: Quoted strings,  
Up: Syntax
 
-Other tokens
-============
+2.3 Other tokens
+================
 
 Any character, that is neither a part of a name, nor of a quoted string,
 is a token by itself.
@@ -577,8 +577,8 @@
 
 File: m4.info,  Node: Comments,  Prev: Other tokens,  Up: Syntax
 
-Comments
-========
+2.4 Comments
+============
 
 Comments in `m4' are normally delimited by the characters `#' and
 newline.  All characters between the comment delimiters are ignored,
@@ -596,8 +596,8 @@
 
 File: m4.info,  Node: Macros,  Next: Definitions,  Prev: Syntax,  Up: Top
 
-How to invoke macros
-********************
+3 How to invoke macros
+**********************
 
 This chapter covers macro invocation, macro arguments and how macro
 expansion is treated.
@@ -613,8 +613,8 @@
 
 File: m4.info,  Node: Invocation,  Next: Inhibiting Invocation,  Prev: Macros, 
 Up: Macros
 
-Macro invocation
-================
+3.1 Macro invocation
+====================
 
 Macro invocations has one of the forms
 
@@ -643,8 +643,8 @@
 
 File: m4.info,  Node: Inhibiting Invocation,  Next: Macro Arguments,  Prev: 
Invocation,  Up: Macros
 
-Preventing macro invocation
-===========================
+3.2 Preventing macro invocation
+===============================
 
 An innovation of the `m4' language, compared to some of its
 predecessors (like Stratchey's `GPM', for example), is the ability to
@@ -725,8 +725,8 @@
 
 File: m4.info,  Node: Macro Arguments,  Next: Quoting Arguments,  Prev: 
Inhibiting Invocation,  Up: Macros
 
-Macro arguments
-===============
+3.3 Macro arguments
+===================
 
 When a name is seen, and it has a macro definition, it will be expanded
 as a macro.
@@ -756,8 +756,8 @@
 
 File: m4.info,  Node: Quoting Arguments,  Next: Macro expansion,  Prev: Macro 
Arguments,  Up: Macros
 
-Quoting macro arguments
-=======================
+3.4 Quoting macro arguments
+===========================
 
 Each argument has leading unquoted whitespace removed.  Within each
 argument, all unquoted parentheses must match.  For example, if FOO is
@@ -780,8 +780,8 @@
 
 File: m4.info,  Node: Macro expansion,  Prev: Quoting Arguments,  Up: Macros
 
-Macro expansion
-===============
+3.5 Macro expansion
+===================
 
 When the arguments, if any, to a macro call have been collected, the
 macro is expanded, and the expansion text is pushed back onto the input
@@ -800,8 +800,8 @@
 
 File: m4.info,  Node: Definitions,  Next: Conditionals,  Prev: Macros,  Up: Top
 
-How to define new macros
-************************
+4 How to define new macros
+**************************
 
 Macros can be defined, redefined and deleted in several different ways.
 Also, it is possible to redefine a macro, without losing a previous
@@ -822,8 +822,8 @@
 
 File: m4.info,  Node: Define,  Next: Arguments,  Prev: Definitions,  Up: 
Definitions
 
-Defining a macro
-================
+4.1 Defining a macro
+====================
 
 The normal way to define or redefine macros is to use the builtin
 `define':
@@ -853,8 +853,8 @@
 
 File: m4.info,  Node: Arguments,  Next: Pseudo Arguments,  Prev: Define,  Up: 
Definitions
 
-Arguments to macros
-===================
+4.2 Arguments to macros
+=======================
 
 Macros can have arguments.  The Nth argument is denoted by `$n' in the
 expansion text, and is replaced by the Nth actual argument, when the
@@ -904,8 +904,8 @@
 
 File: m4.info,  Node: Pseudo Arguments,  Next: Undefine,  Prev: Arguments,  
Up: Definitions
 
-Special arguments to macros
-===========================
+4.3 Special arguments to macros
+===============================
 
 There is a special notation for the number of actual arguments supplied,
 and for all the actual arguments.
@@ -972,8 +972,8 @@
 
 File: m4.info,  Node: Undefine,  Next: Defn,  Prev: Pseudo Arguments,  Up: 
Definitions
 
-Deleting a macro
-================
+4.4 Deleting a macro
+====================
 
 A macro definition can be removed with `undefine':
 
@@ -1003,8 +1003,8 @@
 
 File: m4.info,  Node: Defn,  Next: Pushdef,  Prev: Undefine,  Up: Definitions
 
-Renaming macros
-===============
+4.5 Renaming macros
+===================
 
 It is possible to rename an already defined macro.  To do this, you need
 the builtin `defn':
@@ -1039,8 +1039,8 @@
 
 File: m4.info,  Node: Pushdef,  Next: Indir,  Prev: Defn,  Up: Definitions
 
-Temporarily redefining macros
-=============================
+4.6 Temporarily redefining macros
+=================================
 
 It is possible to redefine a macro temporarily, reverting to the
 previous definition at a later time.  This is done with the builtins
@@ -1109,15 +1109,14 @@
 
 File: m4.info,  Node: Indir,  Next: Builtin,  Prev: Pushdef,  Up: Definitions
 
-Indirect call of macros
-=======================
+4.7 Indirect call of macros
+===========================
 
 Any macro can be called indirectly with `indir':
 
      indir(NAME, ...)
-
-which results in a call to the macro NAME, which is passed the rest of
-the arguments.  This can be used to call macros with "illegal" names
+   which results in a call to the macro NAME, which is passed the rest
+of the arguments.  This can be used to call macros with "illegal" names
 (`define' allows such names to be defined):
 
      define(`$$internal$macro', `Internal macro (name `$0')')
@@ -1134,24 +1133,23 @@
 
 File: m4.info,  Node: Builtin,  Prev: Indir,  Up: Definitions
 
-Indirect call of builtins
-=========================
+4.8 Indirect call of builtins
+=============================
 
 Builtin macros can be called indirectly with `builtin':
 
      builtin(NAME, ...)
-
-which results in a call to the builtin NAME, which is passed the rest
-of the arguments.  This can be used, if NAME has been given another
-definition that has covered the original.
+   which results in a call to the builtin NAME, which is passed the
+rest of the arguments.  This can be used, if NAME has been given
+another definition that has covered the original.
 
    The macro `builtin' is recognized only with parameters.
 
 
 File: m4.info,  Node: Conditionals,  Next: Debugging,  Prev: Definitions,  Up: 
Top
 
-Conditionals, loops and recursion
-*********************************
+5 Conditionals, loops and recursion
+***********************************
 
 Macros, expanding to plain text, perhaps with arguments, are not quite
 enough.  We would like to have macros expand to different things, based
@@ -1169,8 +1167,8 @@
 
 File: m4.info,  Node: Ifdef,  Next: Ifelse,  Prev: Conditionals,  Up: 
Conditionals
 
-Testing macro definitions
-=========================
+5.1 Testing macro definitions
+=============================
 
 There are two different builtin conditionals in `m4'.  The first is
 `ifdef':
@@ -1194,8 +1192,8 @@
 
 File: m4.info,  Node: Ifelse,  Next: Loops,  Prev: Ifdef,  Up: Conditionals
 
-Comparing strings
-=================
+5.2 Comparing strings
+=====================
 
 The other conditional, `ifelse', is much more powerful.  It can be used
 as a way to introduce a long comment, as an if-else construct, or as a
@@ -1242,8 +1240,8 @@
 
 File: m4.info,  Node: Loops,  Prev: Ifelse,  Up: Conditionals
 
-Loops and recursion
-===================
+5.3 Loops and recursion
+=======================
 
 There is no direct support for loops in `m4', but macros can be
 recursive.  There is no limit on the number of recursion levels, other
@@ -1334,8 +1332,8 @@
 
 File: m4.info,  Node: Debugging,  Next: Input Control,  Prev: Conditionals,  
Up: Top
 
-How to debug macros and input
-*****************************
+6 How to debug macros and input
+*******************************
 
 When writing macros for `m4', most of the time they woould not work as
 intended (as is the case with most programming languages).  There is a
@@ -1351,8 +1349,8 @@
 
 File: m4.info,  Node: Dumpdef,  Next: Trace,  Prev: Debugging,  Up: Debugging
 
-Displaying macro definitions
-============================
+6.1 Displaying macro definitions
+================================
 
 If you want to see what a name expands into, you can use the builtin
 `dumpdef':
@@ -1383,8 +1381,8 @@
 
 File: m4.info,  Node: Trace,  Next: Debug Levels,  Prev: Dumpdef,  Up: 
Debugging
 
-Tracing macro calls
-===================
+6.2 Tracing macro calls
+=======================
 
 It is possible to trace macro calls and expansions through the builtins
 `traceon' and `traceoff':
@@ -1426,8 +1424,8 @@
 
 File: m4.info,  Node: Debug Levels,  Next: Debug Output,  Prev: Trace,  Up: 
Debugging
 
-Controlling debugging output
-============================
+6.3 Controlling debugging output
+================================
 
 The `-d' option to `m4' controls the amount of details presented, when
 using the macros described in the preceding sections.
@@ -1486,10 +1484,9 @@
 control of the debugging output format:
 
      debugmode(opt FLAGS)
-
-The argument FLAGS should be a subset of the letters listed above.  As
-special cases, if the argument starts with a `+', the flags are added
-to the current debug flags, and if it starts with a `-', they are
+   The argument FLAGS should be a subset of the letters listed above.
+As special cases, if the argument starts with a `+', the flags are
+added to the current debug flags, and if it starts with a `-', they are
 removed.  If no argument is present, the debugging flags are set to
 zero (as if no `-d' was given), and with an empty argument the flags
 are reset to the default.
@@ -1497,24 +1494,23 @@
 
 File: m4.info,  Node: Debug Output,  Prev: Debug Levels,  Up: Debugging
 
-Saving debugging output
-=======================
+6.4 Saving debugging output
+===========================
 
 Debug and tracing output can be redirected to files using either the
 `-o' option to `m4', or with the builtin macro `debugfile':
 
      debugfile(opt FILENAME)
-
-will send all further debug and trace output to FILENAME.  If FILENAME
-is empty, debug and trace output are discarded and if `debugfile' is
-called without any arguments, debug and trace output are sent to the
-standard error output.
+   will send all further debug and trace output to FILENAME.  If
+FILENAME is empty, debug and trace output are discarded and if
+`debugfile' is called without any arguments, debug and trace output are
+sent to the standard error output.
 
 
 File: m4.info,  Node: Input Control,  Next: File Inclusion,  Prev: Debugging,  
Up: Top
 
-Input control
-*************
+7 Input control
+***************
 
 This chapter describes various builtin macros for controlling the input
 to `m4'.
@@ -1530,16 +1526,15 @@
 
 File: m4.info,  Node: Dnl,  Next: Changequote,  Prev: Input Control,  Up: 
Input Control
 
-Deleting whitespace in input
-============================
+7.1 Deleting whitespace in input
+================================
 
 The builtin `dnl' reads and discards all characters, up to and
 including the first newline:
 
      dnl
-
-and it is often used in connection with `define', to remove the newline
-that follow the call to `define'.  Thus
+   and it is often used in connection with `define', to remove the
+newline that follow the call to `define'.  Thus
 
      define(`foo', `Macro `foo'.')dnl A very simple macro, indeed.
      foo
@@ -1560,15 +1555,14 @@
 
 File: m4.info,  Node: Changequote,  Next: Changecom,  Prev: Dnl,  Up: Input 
Control
 
-Changing the quote characters
-=============================
+7.2 Changing the quote characters
+=================================
 
 The default quote delimiters can be changed with the builtin
 `changequote':
 
      changequote(opt START, opt END)
-
-where START is the new start-quote delimiter and END is the new
+   where START is the new start-quote delimiter and END is the new
 end-quote delimiter.  If any of the arguments are missing, the default
 quotes (``' and `'') are used instead of the void arguments.
 
@@ -1613,15 +1607,14 @@
 
 File: m4.info,  Node: Changecom,  Next: Changeword,  Prev: Changequote,  Up: 
Input Control
 
-Changing comment delimiters
-===========================
+7.3 Changing comment delimiters
+===============================
 
 The default comment delimiters can be changed with the builtin macro
 `changecom':
 
      changecom(opt START, opt END)
-
-where START is the new start-comment delimiter and END is the new
+   where START is the new start-comment delimiter and END is the new
 end-comment delimiter.  If any of the arguments are void, the default
 comment delimiters (`#' and newline) are used instead of the void
 arguments.  The comment delimiters can be of any length.
@@ -1656,8 +1649,8 @@
 
 File: m4.info,  Node: Changeword,  Next: M4wrap,  Prev: Changecom,  Up: Input 
Control
 
-Changing the lexical structure of words
-=======================================
+7.4 Changing the lexical structure of words
+===========================================
 
      The macro `changeword' and all associated functionnality is
      experimental.  It is only available if the `--enable-changeword'
@@ -1742,8 +1735,8 @@
 
 File: m4.info,  Node: M4wrap,  Prev: Changeword,  Up: Input Control
 
-Saving input
-============
+7.5 Saving input
+================
 
 It is possible to `save' some text until the end of the normal input has
 been seen.  Text can be saved, to be read again by `m4' when the normal
@@ -1753,9 +1746,8 @@
    To save input text, use the builtin `m4wrap':
 
      m4wrap(STRING, ...)
-
-which stores STRING and the rest of the arguments in a safe place, to
-be reread when end of input is reached.
+   which stores STRING and the rest of the arguments in a safe place,
+to be reread when end of input is reached.
 
      define(`cleanup', `This is the `cleanup' actions.
      ')
@@ -1778,8 +1770,8 @@
 
 File: m4.info,  Node: File Inclusion,  Next: Diversions,  Prev: Input Control, 
 Up: Top
 
-File inclusion
-**************
+8 File inclusion
+****************
 
 `m4' allows you to include named files at any point in the input.
 
@@ -1791,8 +1783,8 @@
 
 File: m4.info,  Node: Include,  Next: Search Path,  Prev: File Inclusion,  Up: 
File Inclusion
 
-Including named files
-=====================
+8.1 Including named files
+=========================
 
 There are two builtin macros in `m4' for including files:
 
@@ -1820,10 +1812,9 @@
      Include file start
      foo
      Include file end
-
-Normally file inclusion is used to insert the contents of a file into
-the input stream.  The contents of the file will be read by `m4' and
-macro calls in the file will be expanded:
+   Normally file inclusion is used to insert the contents of a file
+into the input stream.  The contents of the file will be read by `m4'
+and macro calls in the file will be expanded:
 
      define(`foo', `FOO')
      =>
@@ -1856,8 +1847,8 @@
 
 File: m4.info,  Node: Search Path,  Prev: Include,  Up: File Inclusion
 
-Searching for include files
-===========================
+8.2 Searching for include files
+===============================
 
 GNU `m4' allows included files to be found in other directories than
 the current working directory.
@@ -1875,8 +1866,8 @@
 
 File: m4.info,  Node: Diversions,  Next: Text handling,  Prev: File Inclusion, 
 Up: Top
 
-Diverting and undiverting output
-********************************
+9 Diverting and undiverting output
+**********************************
 
 Diversions are a way of temporarily saving output.  The output of `m4'
 can at any time be diverted to a temporary file, and be reinserted into
@@ -1903,8 +1894,8 @@
 
 File: m4.info,  Node: Divert,  Next: Undivert,  Prev: Diversions,  Up: 
Diversions
 
-Diverting output
-================
+9.1 Diverting output
+====================
 
 Output is diverted using `divert':
 
@@ -1947,8 +1938,8 @@
 
 File: m4.info,  Node: Undivert,  Next: Divnum,  Prev: Divert,  Up: Diversions
 
-Undiverting output
-==================
+9.2 Undiverting output
+======================
 
 Diverted text can be undiverted explicitly using the builtin `undivert':
 
@@ -2015,8 +2006,8 @@
 
 File: m4.info,  Node: Divnum,  Next: Cleardiv,  Prev: Undivert,  Up: Diversions
 
-Diversion numbers
-=================
+9.3 Diversion numbers
+=====================
 
 The builtin `divnum':
 
@@ -2044,8 +2035,8 @@
 
 File: m4.info,  Node: Cleardiv,  Prev: Divnum,  Up: Diversions
 
-Discarding diverted text
-========================
+9.4 Discarding diverted text
+============================
 
 Often it is not known, when output is diverted, whether the diverted
 text is actually needed.  Since all non-empty diversion are brought back
@@ -2077,8 +2068,8 @@
 
 File: m4.info,  Node: Text handling,  Next: Arithmetic,  Prev: Diversions,  
Up: Top
 
-Macros for text handling
-************************
+10 Macros for text handling
+***************************
 
 There are a number of builtins in `m4' for manipulating text in various
 ways, extracting substrings, searching, substituting, and so on.
@@ -2096,8 +2087,8 @@
 
 File: m4.info,  Node: Len,  Next: Index,  Prev: Text handling,  Up: Text 
handling
 
-Calculating length of strings
-=============================
+10.1 Calculating length of strings
+==================================
 
 The length of a string can be calculated by `len':
 
@@ -2115,8 +2106,8 @@
 
 File: m4.info,  Node: Index,  Next: Regexp,  Prev: Len,  Up: Text handling
 
-Searching for substrings
-========================
+10.2 Searching for substrings
+=============================
 
 Searching for substrings is done with `index':
 
@@ -2136,8 +2127,8 @@
 
 File: m4.info,  Node: Regexp,  Next: Substr,  Prev: Index,  Up: Text handling
 
-Searching for regular expressions
-=================================
+10.3 Searching for regular expressions
+======================================
 
 Searching for regular expressions is done with the builtin `regexp':
 
@@ -2169,8 +2160,8 @@
 
 File: m4.info,  Node: Substr,  Next: Translit,  Prev: Regexp,  Up: Text 
handling
 
-Extracting substrings
-=====================
+10.4 Extracting substrings
+==========================
 
 Substrings are extracted with `substr':
 
@@ -2190,8 +2181,8 @@
 
 File: m4.info,  Node: Translit,  Next: Patsubst,  Prev: Substr,  Up: Text 
handling
 
-Translating characters
-======================
+10.5 Translating characters
+===========================
 
 Character translation is done with `translit':
 
@@ -2229,14 +2220,13 @@
 
 File: m4.info,  Node: Patsubst,  Next: Format,  Prev: Translit,  Up: Text 
handling
 
-Substituting text by regular expression
-=======================================
+10.6 Substituting text by regular expression
+============================================
 
 Global substitution in a string is done by `patsubst':
 
      patsubst(STRING, REGEXP, opt REPLACEMENT)
-
-which searches STRING for matches of REGEXP, and substitutes
+   which searches STRING for matches of REGEXP, and substitutes
 REPLACEMENT for each match.  The syntax for regular expressions is the
 same as in GNU Emacs.
 
@@ -2284,8 +2274,8 @@
 
 File: m4.info,  Node: Format,  Prev: Patsubst,  Up: Text handling
 
-Formatted output
-================
+10.7 Formatted output
+=====================
 
 Formatted output can be made with `format':
 
@@ -2327,8 +2317,8 @@
 
 File: m4.info,  Node: Arithmetic,  Next: UNIX commands,  Prev: Text handling,  
Up: Top
 
-Macros for doing arithmetic
-***************************
+11 Macros for doing arithmetic
+******************************
 
 Integer arithmetic is included in `m4', with a C-like syntax.  As
 convenient shorthands, there are builtins for simple increment and
@@ -2342,8 +2332,8 @@
 
 File: m4.info,  Node: Incr,  Next: Eval,  Prev: Arithmetic,  Up: Arithmetic
 
-Decrement and increment operators
-=================================
+11.1 Decrement and increment operators
+======================================
 
 Increment and decrement of integers are supported using the builtins
 `incr' and `decr':
@@ -2365,8 +2355,8 @@
 
 File: m4.info,  Node: Eval,  Prev: Incr,  Up: Arithmetic
 
-Evaluating integer expressions
-==============================
+11.2 Evaluating integer expressions
+===================================
 
 Integer expressions are evaluated with `eval':
 
@@ -2486,8 +2476,8 @@
 
 File: m4.info,  Node: UNIX commands,  Next: Miscellaneous,  Prev: Arithmetic,  
Up: Top
 
-Running UNIX commands
-*********************
+12 Running UNIX commands
+************************
 
 There are a few builtin macros in `m4' that allow you to run UNIX
 commands from within `m4'.
@@ -2502,8 +2492,8 @@
 
 File: m4.info,  Node: Syscmd,  Next: Esyscmd,  Prev: UNIX commands,  Up: UNIX 
commands
 
-Executing simple commands
-=========================
+12.1 Executing simple commands
+==============================
 
 Any shell command can be executed, using `syscmd':
 
@@ -2525,8 +2515,8 @@
 
 File: m4.info,  Node: Esyscmd,  Next: Sysval,  Prev: Syscmd,  Up: UNIX commands
 
-Reading the output of commands
-==============================
+12.2 Reading the output of commands
+===================================
 
 If you want `m4' to read the output of a UNIX command, use `esyscmd':
 
@@ -2555,8 +2545,8 @@
 
 File: m4.info,  Node: Sysval,  Next: Maketemp,  Prev: Esyscmd,  Up: UNIX 
commands
 
-Exit codes
-==========
+12.3 Exit codes
+===============
 
 To see whether a shell command succeeded, use `sysval':
 
@@ -2577,8 +2567,8 @@
 
 File: m4.info,  Node: Maketemp,  Prev: Sysval,  Up: UNIX commands
 
-Making names for temporary files
-================================
+12.4 Making names for temporary files
+=====================================
 
 Commands specified to `syscmd' or `esyscmd' might need a temporary
 file, for output or for some other purpose.  There is a builtin macro,
@@ -2599,8 +2589,8 @@
 
 File: m4.info,  Node: Miscellaneous,  Next: Frozen files,  Prev: UNIX 
commands,  Up: Top
 
-Miscellaneous builtin macros
-****************************
+13 Miscellaneous builtin macros
+*******************************
 
 This chapter describes various builtins, that do not really belong in
 any of the previous chapters.
@@ -2613,14 +2603,13 @@
 
 File: m4.info,  Node: Errprint,  Next: M4exit,  Prev: Miscellaneous,  Up: 
Miscellaneous
 
-Printing error messages
-=======================
+13.1 Printing error messages
+============================
 
 You can print error messages using `errprint':
 
      errprint(MESSAGE, ...)
-
-which simply prints MESSAGE and the rest of the arguments on the
+   which simply prints MESSAGE and the rest of the arguments on the
 standard error output.
 
    The expansion of `errprint' is void.
@@ -2639,8 +2628,7 @@
 
      __file__
      __line__
-
-which expands to the quoted name of the current input file, and the
+   which expands to the quoted name of the current input file, and the
 current input line number in that file.
 
      errprint(`m4:'__file__:__line__: `Input error
@@ -2651,16 +2639,15 @@
 
 File: m4.info,  Node: M4exit,  Prev: Errprint,  Up: Miscellaneous
 
-Exiting from `m4'
-=================
+13.2 Exiting from `m4'
+======================
 
 If you need to exit from `m4' before the entire input has been read,
 you can use `m4exit':
 
      m4exit(opt CODE)
-
-which causes `m4' to exit, with exit code CODE.  If CODE is left out,
-the exit code is zero.
+   which causes `m4' to exit, with exit code CODE.  If CODE is left
+out, the exit code is zero.
 
      define(`fatal_error', `errprint(`m4: '__file__: __line__`: fatal error: $*
      ')m4exit(1)')
@@ -2676,8 +2663,8 @@
 
 File: m4.info,  Node: Frozen files,  Next: Compatibility,  Prev: 
Miscellaneous,  Up: Top
 
-Fast loading of frozen states
-*****************************
+14 Fast loading of frozen states
+********************************
 
 Some bigger `m4' applications may be built over a common base
 containing hundreds of definitions and other costly initializations.
@@ -2791,8 +2778,8 @@
 
 File: m4.info,  Node: Compatibility,  Next: Concept index,  Prev: Frozen 
files,  Up: Top
 
-Compatibility with other versions of `m4'
-*****************************************
+15 Compatibility with other versions of `m4'
+********************************************
 
 This chapter describes the differences between this implementation of
 `m4', and the implementation found under UNIX, notably System V,
@@ -2810,8 +2797,8 @@
 
 File: m4.info,  Node: Extensions,  Next: Incompatibilities,  Prev: 
Compatibility,  Up: Compatibility
 
-Extensions in GNU `m4'
-======================
+15.1 Extensions in GNU `m4'
+===========================
 
 This version of `m4' contains a few facilities, that do not exist in
 System V `m4'.  These extra facilities are all suppressed by using the
@@ -2868,8 +2855,8 @@
 
 File: m4.info,  Node: Incompatibilities,  Next: Other Incompat,  Prev: 
Extensions,  Up: Compatibility
 
-Facilities in System V `m4' not in GNU `m4'
-===========================================
+15.2 Facilities in System V `m4' not in GNU `m4'
+================================================
 
 The version of `m4' from System V contains a few facilities that have
 not been implemented in GNU `m4' yet.
@@ -2880,8 +2867,8 @@
 
 File: m4.info,  Node: Other Incompat,  Prev: Incompatibilities,  Up: 
Compatibility
 
-Other incompatibilities
-=======================
+15.3 Other incompatibilities
+============================
 
 There are a few other incompatibilities between this implementation of
 `m4', and the System V version.
@@ -2934,141 +2921,142 @@
 Concept index
 *************
 
+ * Menu:
 
-* Arguments to macros:                   Arguments.
-* arguments to macros:                   Macro Arguments.
-* arguments to macros, special:          Pseudo Arguments.
-* arguments, quoted macro:               Quoting Arguments.
-* arithmetic:                            Arithmetic.
-* builtins, indirect call of:            Builtin.
-* call of builtins, indirect:            Builtin.
-* call of macros, indirect:              Indir.
-* changing comment delimiters:           Changecom.
-* changing the quote delimiters:         Changequote.
-* characters, translating:               Translit.
-* command line, filenames on the:        Invoking m4.
-* command line, macro definitions on the: Invoking m4.
-* command line, options:                 Invoking m4.
-* commands, exit code from UNIX:         Sysval.
-* commands, running UNIX:                UNIX commands.
-* comment delimiters, changing:          Changecom.
-* comments:                              Comments.
-* comments, copied to output:            Changecom.
-* comparing strings:                     Ifelse.
-* compatibility:                         Compatibility.
-* conditionals:                          Ifdef.
-* controlling debugging output:          Debug Levels.
-* counting loops:                        Loops.
-* debugging output, controlling:         Debug Levels.
-* debugging output, saving:              Debug Output.
-* decrement operator:                    Incr.
-* defining new macros:                   Definitions.
-* definitions, displaying macro:         Dumpdef.
-* deleting macros:                       Undefine.
-* deleting whitespace in input:          Dnl.
-* discarding diverted text:              Cleardiv.
-* displaying macro definitions:          Dumpdef.
-* diversion numbers:                     Divnum.
-* diverted text, discarding:             Cleardiv.
-* diverting output to files:             Divert.
-* dumping into frozen file:              Frozen files.
-* error messages, printing:              Errprint.
-* evaluation, of integer expressions:    Eval.
-* executing UNIX commands:               UNIX commands.
-* exit code from UNIX commands:          Sysval.
-* exiting from m4:                       M4exit.
-* expansion of macros:                   Macro expansion.
-* expansion, tracing macro:              Trace.
-* expressions, evaluation of integer:    Eval.
-* extracting substrings:                 Substr.
-* fast loading of frozen files:          Frozen files.
-* file inclusion <1>:                    Undivert.
-* file inclusion:                        File Inclusion.
-* filenames, on the command line:        Invoking m4.
-* files, diverting output to:            Divert.
-* files, names of temporary:             Maketemp.
-* forloops:                              Loops.
-* formatted output:                      Format.
-* frozen files for fast loading:         Frozen files.
-* GNU extensions <1>:                    Extensions.
-* GNU extensions <2>:                    Frozen files.
-* GNU extensions <3>:                    Esyscmd.
-* GNU extensions <4>:                    Format.
-* GNU extensions <5>:                    Patsubst.
-* GNU extensions <6>:                    Regexp.
-* GNU extensions <7>:                    Undivert.
-* GNU extensions <8>:                    Search Path.
-* GNU extensions <9>:                    Debug Output.
-* GNU extensions <10>:                   Debug Levels.
-* GNU extensions <11>:                   Builtin.
-* GNU extensions <12>:                   Indir.
-* GNU extensions:                        Arguments.
-* included files, search path for:       Search Path.
-* inclusion, of files <1>:               Undivert.
-* inclusion, of files:                   File Inclusion.
-* increment operator:                    Incr.
-* indirect call of builtins:             Builtin.
-* indirect call of macros:               Indir.
-* initialization, frozen states:         Frozen files.
-* input tokens:                          Syntax.
-* input, saving:                         M4wrap.
-* integer arithmetic:                    Arithmetic.
-* integer expression evaluation:         Eval.
-* length of strings:                     Len.
-* lexical structure of words:            Changeword.
-* loops:                                 Loops.
-* loops, counting:                       Loops.
-* macro definitions, on the command line: Invoking m4.
-* macro expansion, tracing:              Trace.
-* macro invocation:                      Invocation.
-* macros, arguments to <1>:              Arguments.
-* macros, arguments to:                  Macro Arguments.
-* macros, displaying definitions:        Dumpdef.
-* macros, expansion of:                  Macro expansion.
-* macros, how to define new:             Definitions.
-* macros, how to delete:                 Undefine.
-* macros, how to rename:                 Defn.
-* macros, indirect call of:              Indir.
-* macros, quoted arguments to:           Quoting Arguments.
-* macros, recursive:                     Loops.
-* macros, special arguments to:          Pseudo Arguments.
-* macros, temporary redefinition of:     Pushdef.
-* messages, printing error:              Errprint.
-* multibranches:                         Ifelse.
-* names:                                 Names.
-* options, command line:                 Invoking m4.
-* output, diverting to files:            Divert.
-* output, formatted:                     Format.
-* output, saving debugging:              Debug Output.
-* pattern substitution:                  Patsubst.
-* printing error messages:               Errprint.
-* quote delimiters, changing the:        Changequote.
-* quoted macro arguments:                Quoting Arguments.
-* quoted string:                         Quoted strings.
-* recursive macros:                      Loops.
-* redefinition of macros, temporary:     Pushdef.
-* regular expressions <1>:               Patsubst.
-* regular expressions:                   Regexp.
-* reloading a frozen file:               Frozen files.
-* renaming macros:                       Defn.
-* running UNIX commands:                 UNIX commands.
-* saving debugging output:               Debug Output.
-* saving input:                          M4wrap.
-* search path for included files:        Search Path.
-* special arguments to macros:           Pseudo Arguments.
-* strings, length of:                    Len.
-* substitution by regular expression:    Patsubst.
-* substrings, extracting:                Substr.
-* temporary filenames:                   Maketemp.
-* temporary redefinition of macros:      Pushdef.
-* tokens:                                Syntax.
-* tracing macro expansion:               Trace.
-* translating characters:                Translit.
-* undefining macros:                     Undefine.
-* UNIX commands, exit code from:         Sysval.
-* UNIX commands, running:                UNIX commands.
-* words, lexical structure of:           Changeword.
+* arguments to macros:                   Macro Arguments.     (line   6)
+* Arguments to macros:                   Arguments.           (line   6)
+* arguments to macros, special:          Pseudo Arguments.    (line   6)
+* arguments, quoted macro:               Quoting Arguments.   (line   6)
+* arithmetic:                            Arithmetic.          (line   6)
+* builtins, indirect call of:            Builtin.             (line   6)
+* call of builtins, indirect:            Builtin.             (line   6)
+* call of macros, indirect:              Indir.               (line   6)
+* changing comment delimiters:           Changecom.           (line   6)
+* changing the quote delimiters:         Changequote.         (line   6)
+* characters, translating:               Translit.            (line   6)
+* command line, filenames on the:        Invoking m4.         (line 176)
+* command line, macro definitions on the: Invoking m4.        (line 143)
+* command line, options:                 Invoking m4.         (line  10)
+* commands, exit code from UNIX:         Sysval.              (line   6)
+* commands, running UNIX:                UNIX commands.       (line   6)
+* comment delimiters, changing:          Changecom.           (line   6)
+* comments:                              Comments.            (line   6)
+* comments, copied to output:            Changecom.           (line  28)
+* comparing strings:                     Ifelse.              (line   6)
+* compatibility:                         Compatibility.       (line   6)
+* conditionals:                          Ifdef.               (line   6)
+* controlling debugging output:          Debug Levels.        (line   6)
+* counting loops:                        Loops.               (line  42)
+* debugging output, controlling:         Debug Levels.        (line   6)
+* debugging output, saving:              Debug Output.        (line   6)
+* decrement operator:                    Incr.                (line   6)
+* defining new macros:                   Definitions.         (line   6)
+* definitions, displaying macro:         Dumpdef.             (line   6)
+* deleting macros:                       Undefine.            (line   6)
+* deleting whitespace in input:          Dnl.                 (line   6)
+* discarding diverted text:              Cleardiv.            (line   6)
+* displaying macro definitions:          Dumpdef.             (line   6)
+* diversion numbers:                     Divnum.              (line   6)
+* diverted text, discarding:             Cleardiv.            (line   6)
+* diverting output to files:             Divert.              (line   6)
+* dumping into frozen file:              Frozen files.        (line   6)
+* error messages, printing:              Errprint.            (line   6)
+* evaluation, of integer expressions:    Eval.                (line   6)
+* executing UNIX commands:               UNIX commands.       (line   6)
+* exit code from UNIX commands:          Sysval.              (line   6)
+* exiting from m4:                       M4exit.              (line   6)
+* expansion of macros:                   Macro expansion.     (line   6)
+* expansion, tracing macro:              Trace.               (line   6)
+* expressions, evaluation of integer:    Eval.                (line   6)
+* extracting substrings:                 Substr.              (line   6)
+* fast loading of frozen files:          Frozen files.        (line   6)
+* file inclusion <1>:                    Undivert.            (line  53)
+* file inclusion:                        File Inclusion.      (line   6)
+* filenames, on the command line:        Invoking m4.         (line 176)
+* files, diverting output to:            Divert.              (line   6)
+* files, names of temporary:             Maketemp.            (line   6)
+* forloops:                              Loops.               (line  42)
+* formatted output:                      Format.              (line   6)
+* frozen files for fast loading:         Frozen files.        (line   6)
+* GNU extensions <1>:                    Undivert.            (line  53)
+* GNU extensions <2>:                    Patsubst.            (line   6)
+* GNU extensions <3>:                    Extensions.          (line   6)
+* GNU extensions <4>:                    Search Path.         (line   6)
+* GNU extensions <5>:                    Frozen files.        (line   6)
+* GNU extensions <6>:                    Indir.               (line   6)
+* GNU extensions <7>:                    Regexp.              (line   6)
+* GNU extensions <8>:                    Debug Output.        (line   6)
+* GNU extensions <9>:                    Debug Levels.        (line  59)
+* GNU extensions <10>:                   Builtin.             (line   6)
+* GNU extensions <11>:                   Format.              (line   6)
+* GNU extensions <12>:                   Esyscmd.             (line   6)
+* GNU extensions:                        Arguments.           (line  28)
+* included files, search path for:       Search Path.         (line   6)
+* inclusion, of files <1>:               File Inclusion.      (line   6)
+* inclusion, of files:                   Undivert.            (line  53)
+* increment operator:                    Incr.                (line   6)
+* indirect call of builtins:             Builtin.             (line   6)
+* indirect call of macros:               Indir.               (line   6)
+* initialization, frozen states:         Frozen files.        (line   6)
+* input tokens:                          Syntax.              (line   6)
+* input, saving:                         M4wrap.              (line   6)
+* integer arithmetic:                    Arithmetic.          (line   6)
+* integer expression evaluation:         Eval.                (line   6)
+* length of strings:                     Len.                 (line   6)
+* lexical structure of words:            Changeword.          (line   6)
+* loops:                                 Loops.               (line  10)
+* loops, counting:                       Loops.               (line  42)
+* macro definitions, on the command line: Invoking m4.        (line 143)
+* macro expansion, tracing:              Trace.               (line   6)
+* macro invocation:                      Invocation.          (line   6)
+* macros, arguments to <1>:              Arguments.           (line   6)
+* macros, arguments to:                  Macro Arguments.     (line   6)
+* macros, displaying definitions:        Dumpdef.             (line   6)
+* macros, expansion of:                  Macro expansion.     (line   6)
+* macros, how to define new:             Definitions.         (line   6)
+* macros, how to delete:                 Undefine.            (line   6)
+* macros, how to rename:                 Defn.                (line   6)
+* macros, indirect call of:              Indir.               (line   6)
+* macros, quoted arguments to:           Quoting Arguments.   (line   6)
+* macros, recursive:                     Loops.               (line   6)
+* macros, special arguments to:          Pseudo Arguments.    (line   6)
+* macros, temporary redefinition of:     Pushdef.             (line   6)
+* messages, printing error:              Errprint.            (line   6)
+* multibranches:                         Ifelse.              (line  33)
+* names:                                 Names.               (line   6)
+* options, command line:                 Invoking m4.         (line  10)
+* output, diverting to files:            Divert.              (line   6)
+* output, formatted:                     Format.              (line   6)
+* output, saving debugging:              Debug Output.        (line   6)
+* pattern substitution:                  Patsubst.            (line   6)
+* printing error messages:               Errprint.            (line   6)
+* quote delimiters, changing the:        Changequote.         (line   6)
+* quoted macro arguments:                Quoting Arguments.   (line   6)
+* quoted string:                         Quoted strings.      (line   6)
+* recursive macros:                      Loops.               (line   6)
+* redefinition of macros, temporary:     Pushdef.             (line   6)
+* regular expressions <1>:               Patsubst.            (line   6)
+* regular expressions:                   Regexp.              (line   6)
+* reloading a frozen file:               Frozen files.        (line   6)
+* renaming macros:                       Defn.                (line   6)
+* running UNIX commands:                 UNIX commands.       (line   6)
+* saving debugging output:               Debug Output.        (line   6)
+* saving input:                          M4wrap.              (line   6)
+* search path for included files:        Search Path.         (line   6)
+* special arguments to macros:           Pseudo Arguments.    (line   6)
+* strings, length of:                    Len.                 (line   6)
+* substitution by regular expression:    Patsubst.            (line   6)
+* substrings, extracting:                Substr.              (line   6)
+* temporary filenames:                   Maketemp.            (line   6)
+* temporary redefinition of macros:      Pushdef.             (line   6)
+* tokens:                                Syntax.              (line   6)
+* tracing macro expansion:               Trace.               (line   6)
+* translating characters:                Translit.            (line   6)
+* undefining macros:                     Undefine.            (line   6)
+* UNIX commands, exit code from:         Sysval.              (line   6)
+* UNIX commands, running:                UNIX commands.       (line   6)
+* words, lexical structure of:           Changeword.          (line   6)
 
 
 File: m4.info,  Node: Macro index,  Prev: Concept index,  Up: Top
@@ -3080,132 +3068,133 @@
 the first time.  Names starting and ending with `__' have these
 characters removed in the index.
 
+ * Menu:
 
-* builtin:                               Builtin.
-* changecom:                             Changecom.
-* changequote:                           Changequote.
-* changeword:                            Changeword.
-* debugfile:                             Debug Output.
-* debugmode:                             Debug Levels.
-* decr:                                  Incr.
-* define:                                Define.
-* defn:                                  Defn.
-* divert:                                Divert.
-* divnum:                                Divnum.
-* dnl:                                   Dnl.
-* dumpdef:                               Dumpdef.
-* errprint:                              Errprint.
-* esyscmd:                               Esyscmd.
-* eval:                                  Eval.
-* file:                                  Errprint.
-* format:                                Format.
-* gnu:                                   Other Incompat.
-* ifdef:                                 Ifdef.
-* ifelse:                                Ifelse.
-* include:                               Include.
-* incr:                                  Incr.
-* index:                                 Index.
-* indir:                                 Indir.
-* len:                                   Len.
-* line:                                  Errprint.
-* m4exit:                                M4exit.
-* m4wrap:                                M4wrap.
-* maketemp:                              Maketemp.
-* patsubst:                              Patsubst.
-* popdef:                                Pushdef.
-* pushdef:                               Pushdef.
-* regexp:                                Regexp.
-* shift:                                 Loops.
-* sinclude:                              Include.
-* substr:                                Substr.
-* syscmd:                                Syscmd.
-* sysval:                                Sysval.
-* traceoff:                              Trace.
-* traceon:                               Trace.
-* translit:                              Translit.
-* undefine:                              Undefine.
-* undivert:                              Undivert.
-* unix:                                  Other Incompat.
+* builtin:                               Builtin.              (line  6)
+* changecom:                             Changecom.            (line  6)
+* changequote:                           Changequote.          (line  6)
+* changeword:                            Changeword.           (line  6)
+* debugfile:                             Debug Output.         (line  6)
+* debugmode:                             Debug Levels.         (line 59)
+* decr:                                  Incr.                 (line  6)
+* define:                                Define.               (line  6)
+* defn:                                  Defn.                 (line  6)
+* divert:                                Divert.               (line  6)
+* divnum:                                Divnum.               (line  6)
+* dnl:                                   Dnl.                  (line  6)
+* dumpdef:                               Dumpdef.              (line  6)
+* errprint:                              Errprint.             (line  6)
+* esyscmd:                               Esyscmd.              (line  6)
+* eval:                                  Eval.                 (line  6)
+* file:                                  Errprint.             (line 26)
+* format:                                Format.               (line  6)
+* gnu:                                   Other Incompat.       (line 44)
+* ifdef:                                 Ifdef.                (line  6)
+* ifelse:                                Ifelse.               (line  6)
+* include:                               Include.              (line  6)
+* incr:                                  Incr.                 (line  6)
+* index:                                 Index.                (line  6)
+* indir:                                 Indir.                (line  6)
+* len:                                   Len.                  (line  6)
+* line:                                  Errprint.             (line 26)
+* m4exit:                                M4exit.               (line  6)
+* m4wrap:                                M4wrap.               (line  6)
+* maketemp:                              Maketemp.             (line  6)
+* patsubst:                              Patsubst.             (line  6)
+* popdef:                                Pushdef.              (line  7)
+* pushdef:                               Pushdef.              (line  7)
+* regexp:                                Regexp.               (line  6)
+* shift:                                 Loops.                (line 13)
+* sinclude:                              Include.              (line  6)
+* substr:                                Substr.               (line  6)
+* syscmd:                                Syscmd.               (line  6)
+* sysval:                                Sysval.               (line  6)
+* traceoff:                              Trace.                (line  6)
+* traceon:                               Trace.                (line  6)
+* translit:                              Translit.             (line  6)
+* undefine:                              Undefine.             (line  6)
+* undivert:                              Undivert.             (line  6)
+* unix:                                  Other Incompat.       (line 47)
 
 
 
 Tag Table:
-Node: Top947
-Node: Preliminaries6948
-Node: Intro7670
-Node: History9276
-Node: Invoking m410194
-Node: Bugs16987
-Node: Manual18252
-Node: Syntax19615
-Node: Names20199
-Node: Quoted strings20569
-Node: Other tokens21151
-Node: Comments21365
-Node: Macros22025
-Node: Invocation22515
-Node: Inhibiting Invocation23323
-Node: Macro Arguments26466
-Node: Quoting Arguments27727
-Node: Macro expansion28529
-Node: Definitions29189
-Node: Define29962
-Node: Arguments30770
-Node: Pseudo Arguments32247
-Node: Undefine34095
-Node: Defn34754
-Node: Pushdef35908
-Node: Indir37741
-Node: Builtin38500
-Node: Conditionals38941
-Node: Ifdef39645
-Node: Ifelse40411
-Node: Loops42174
-Node: Debugging45443
-Node: Dumpdef46019
-Node: Trace46865
-Node: Debug Levels48242
-Node: Debug Output50623
-Node: Input Control51140
-Node: Dnl51674
-Node: Changequote52796
-Node: Changecom54157
-Node: Changeword55438
-Node: M4wrap58647
-Node: File Inclusion59846
-Node: Include60159
-Node: Search Path62084
-Node: Diversions62867
-Node: Divert64101
-Node: Undivert65230
-Node: Divnum67161
-Node: Cleardiv67703
-Node: Text handling68736
-Node: Len69453
-Node: Index69848
-Node: Regexp70430
-Node: Substr71518
-Node: Translit72135
-Node: Patsubst73575
-Node: Format75663
-Node: Arithmetic77149
-Node: Incr77591
-Node: Eval78092
-Node: UNIX commands81088
-Node: Syscmd81556
-Node: Esyscmd82267
-Node: Sysval83210
-Node: Maketemp83614
-Node: Miscellaneous84354
-Node: Errprint84720
-Node: M4exit85708
-Node: Frozen files86490
-Node: Compatibility91407
-Node: Extensions92022
-Node: Incompatibilities94375
-Node: Other Incompat94814
-Node: Concept index96974
-Node: Macro index103979
+Node: Top985
+Node: Preliminaries6984
+Node: Intro7710
+Node: History9324
+Node: Invoking m410250
+Node: Bugs17051
+Node: Manual18324
+Node: Syntax19695
+Node: Names20283
+Node: Quoted strings20661
+Node: Other tokens21251
+Node: Comments21473
+Node: Macros22141
+Node: Invocation22635
+Node: Inhibiting Invocation23451
+Node: Macro Arguments26602
+Node: Quoting Arguments27871
+Node: Macro expansion28681
+Node: Definitions29349
+Node: Define30126
+Node: Arguments30942
+Node: Pseudo Arguments32427
+Node: Undefine34283
+Node: Defn34950
+Node: Pushdef36112
+Node: Indir37953
+Node: Builtin38722
+Node: Conditionals39173
+Node: Ifdef39881
+Node: Ifelse40655
+Node: Loops42426
+Node: Debugging45703
+Node: Dumpdef46283
+Node: Trace47137
+Node: Debug Levels48522
+Node: Debug Output50912
+Node: Input Control51439
+Node: Dnl51977
+Node: Changequote53109
+Node: Changecom54480
+Node: Changeword55771
+Node: M4wrap58988
+Node: File Inclusion60197
+Node: Include60514
+Node: Search Path62449
+Node: Diversions63240
+Node: Divert64478
+Node: Undivert65615
+Node: Divnum67554
+Node: Cleardiv68104
+Node: Text handling69145
+Node: Len69868
+Node: Index70273
+Node: Regexp70865
+Node: Substr71963
+Node: Translit72590
+Node: Patsubst74040
+Node: Format76140
+Node: Arithmetic77636
+Node: Incr78084
+Node: Eval78595
+Node: UNIX commands81601
+Node: Syscmd82075
+Node: Esyscmd82796
+Node: Sysval83749
+Node: Maketemp84163
+Node: Miscellaneous84913
+Node: Errprint85285
+Node: M4exit86287
+Node: Frozen files87081
+Node: Compatibility92004
+Node: Extensions92625
+Node: Incompatibilities94988
+Node: Other Incompat95437
+Node: Concept index97607
+Node: Macro index107458
 
 End Tag Table




reply via email to

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