This is m4.info, produced by makeinfo version 7.3 from m4.texi. This manual (15 May 2026) is for GNU M4 (version 1.4.21), a package containing an implementation of the m4 macro language. Copyright © 1989-1994, 2004-2014, 2016-2017, 2020-2026 Free Software Foundation, Inc. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License." INFO-DIR-SECTION Text creation and manipulation START-INFO-DIR-ENTRY * M4: (m4). A powerful macro processor. END-INFO-DIR-ENTRY  Indirect: m4.info-1: 828 m4.info-2: 317295  Tag Table: (Indirect) Node: Top828 Node: Preliminaries9770 Node: Intro10476 Node: History12167 Node: Bugs16220 Node: Manual17483 Node: Invoking m420986 Node: Operation modes23190 Node: Preprocessor features26289 Node: Limits control29459 Node: Frozen state33470 Node: Debugging options34309 Node: Command line files36361 Node: Syntax38012 Node: Names39167 Node: Quoted strings39649 Node: Comments40316 Node: Other tokens41219 Node: Input processing41813 Ref: Input processing-Footnote-150250 Node: Macros50447 Node: Invocation50941 Node: Inhibiting Invocation51742 Node: Macro Arguments55984 Node: Quoting Arguments59104 Node: Macro expansion61240 Node: Definitions61958 Node: Define62743 Node: Arguments65261 Node: Pseudo Arguments69027 Node: Undefine72656 Node: Defn73815 Node: Pushdef78878 Node: Indir81618 Node: Builtin83785 Node: Conditionals86060 Node: Ifdef87006 Node: Ifelse87888 Node: Shift91274 Node: Forloop102094 Node: Foreach104775 Node: Stacks110397 Node: Composition113532 Node: Debugging121209 Node: Dumpdef121802 Node: Trace123220 Node: Debug Levels126872 Node: Debug Output131742 Node: Input Control133055 Node: Dnl133596 Node: Changequote135538 Node: Changecom145270 Node: Changeword149156 Node: M4wrap154761 Node: File Inclusion158846 Node: Include159167 Node: Search Path161984 Node: Diversions162933 Node: Divert164640 Node: Undivert167206 Node: Divnum170591 Node: Cleardivert171064 Node: Text handling172285 Node: Len173012 Node: Index macro173406 Node: Regexp174299 Node: Substr177460 Node: Translit178518 Node: Patsubst181309 Node: Format185950 Node: Arithmetic189358 Node: Incr189811 Node: Eval191486 Node: Shell commands200230 Node: Platform macros201168 Node: Syscmd203370 Node: Esyscmd205745 Node: Sysval207328 Node: Mkstemp209295 Node: Miscellaneous213352 Node: Errprint213789 Node: Location215041 Node: M4exit217918 Node: Frozen files220044 Node: Using frozen files220842 Node: Frozen file format224223 Node: Compatibility227373 Node: Extensions228455 Node: Incompatibilities232509 Node: Other Incompatibilities241813 Node: Answers244543 Node: Improved exch245357 Node: Improved forloop245910 Node: Improved foreach251366 Node: Improved copy264744 Node: Improved m4wrap268801 Node: Improved cleardivert271297 Node: Improved capitalize272295 Node: Improved fatal_error277331 Node: Copying This Package278428 Node: GNU General Public License278907 Node: Copying This Manual317295 Node: GNU Free Documentation License317819 Node: Indices342943 Node: Macro index343227 Node: Concept index349837  End Tag Table  Local Variables: coding: utf-8 End: