\initial {A} \entry {arguments to macros}{8} \entry {Arguments to macros}{10} \entry {arguments to macros, special}{11} \entry {arguments, quoted macro}{9} \entry {arithmetic}{35} \initial {B} \entry {builtins, indirect call of}{14} \initial {C} \entry {call of builtins, indirect}{14} \entry {call of macros, indirect}{14} \entry {changing comment delimiters}{22} \entry {changing the quote delimiters}{21} \entry {characters, translating}{32} \entry {command line, filenames on the}{5} \entry {command line, macro definitions on the}{4} \entry {command line, options}{2} \entry {commands, exit code from UNIX}{38} \entry {commands, running UNIX}{38} \entry {comment delimiters, changing}{22} \entry {comments}{6} \entry {comments, copied to output}{22} \entry {comparing strings}{15} \entry {compatibility}{43} \entry {conditionals}{15} \entry {controlling debugging output}{19} \entry {counting loops}{16} \initial {D} \entry {debugging output, controlling}{19} \entry {debugging output, saving}{20} \entry {decrement operator}{35} \entry {defining new macros}{10} \entry {definitions, displaying macro}{18} \entry {deleting macros}{12} \entry {deleting whitespace in input}{21} \entry {discarding diverted text}{29} \entry {displaying macro definitions}{18} \entry {diversion numbers}{29} \entry {diverted text, discarding}{29} \entry {diverting output to files}{27} \entry {dumping into frozen file}{41} \initial {E} \entry {error messages, printing}{40} \entry {evaluation, of integer expressions}{35} \entry {executing UNIX commands}{38} \entry {exit code from UNIX commands}{38} \entry {exiting from \code {m4}}{40} \entry {expansion of macros}{9} \entry {expansion, tracing macro}{18} \entry {expressions, evaluation of integer}{35} \entry {extracting substrings}{32} \initial {F} \entry {fast loading of frozen files}{41} \entry {file inclusion}{25, 28} \entry {filenames, on the command line}{5} \entry {files, diverting output to}{27} \entry {files, names of temporary}{39} \entry {forloops}{16} \entry {formatted output}{33} \entry {frozen files for fast loading}{41} \initial {G} \entry {GNU extensions}{10, 14, 19, 20, 26, 28, 31, 33, 38, 41, 43} \initial {I} \entry {included files, search path for}{26} \entry {inclusion, of files}{25, 28} \entry {increment operator}{35} \entry {indirect call of builtins}{14} \entry {indirect call of macros}{14} \entry {initialization, frozen states}{41} \entry {input tokens}{6} \entry {input, saving}{24} \entry {integer arithmetic}{35} \entry {integer expression evaluation}{35} \initial {L} \entry {length of strings}{31} \entry {lexical structure of words}{22} \entry {loops}{16} \entry {loops, counting}{16} \initial {M} \entry {macro definitions, on the command line}{4} \entry {macro expansion, tracing}{18} \entry {macro invocation}{7} \entry {macros, arguments to}{8, 10} \entry {macros, displaying definitions}{18} \entry {macros, expansion of}{9} \entry {macros, how to define new}{10} \entry {macros, how to delete}{12} \entry {macros, how to rename}{12} \entry {macros, indirect call of}{14} \entry {macros, quoted arguments to}{9} \entry {macros, recursive}{16} \entry {macros, special arguments to}{11} \entry {macros, temporary redefinition of}{13} \entry {messages, printing error}{40} \entry {multibranches}{15} \initial {N} \entry {names}{6} \initial {O} \entry {options, command line}{2} \entry {output, diverting to files}{27} \entry {output, formatted}{33} \entry {output, saving debugging}{20} \initial {P} \entry {pattern substitution}{33} \entry {printing error messages}{40} \initial {Q} \entry {quote delimiters, changing the}{21} \entry {quoted macro arguments}{9} \entry {quoted string}{6} \initial {R} \entry {recursive macros}{16} \entry {redefinition of macros, temporary}{13} \entry {regular expressions}{31, 33} \entry {reloading a frozen file}{41} \entry {renaming macros}{12} \entry {running UNIX commands}{38} \initial {S} \entry {saving debugging output}{20} \entry {saving input}{24} \entry {search path for included files}{26} \entry {special arguments to macros}{11} \entry {strings, length of}{31} \entry {substitution by regular expression}{33} \entry {substrings, extracting}{32} \initial {T} \entry {temporary filenames}{39} \entry {temporary redefinition of macros}{13} \entry {tokens}{6} \entry {tracing macro expansion}{18} \entry {translating characters}{32} \initial {U} \entry {undefining macros}{12} \entry {UNIX commands, exit code from}{38} \entry {UNIX commands, running}{38} \initial {W} \entry {words, lexical structure of}{22}