File: m4.info, Node: Operation modes, Next: Preprocessor features, Up: Invoking m4 2.1 Command line options for operation modes ============================================ Several options control the overall operation of ‘m4’: ‘--help’ Print a help summary on standard output, then immediately exit ‘m4’ without reading any input files or performing any other actions. ‘--version’ Print the version number of the program on standard output, then immediately exit ‘m4’ without reading any input files or performing any other actions. ‘-E’ ‘--fatal-warnings’ Controls the effect of warnings. If unspecified, then execution continues and exit status is unaffected when a warning is printed. If specified exactly once, warnings become fatal; when one is issued, execution continues, but the exit status will be non-zero. If specified multiple times, then execution halts with non-zero status the first time a warning is issued. The introduction of behavior levels is new to M4 1.4.9; for behavior consistent with earlier versions, you should specify ‘-E’ twice. ‘-i’ ‘--interactive’ ‘-e’ Makes this invocation of ‘m4’ interactive. This means that all output will be unbuffered, and interrupts will be ignored. The spelling ‘-e’ exists for compatibility with other ‘m4’ implementations, and issues a warning because it may be withdrawn in a future version of GNU M4. ‘-P’ ‘--prefix-builtins’ Internally modify _all_ builtin macro names so they all start with the prefix ‘m4_’. For example, using this option, one should write ‘m4_define’ instead of ‘define’, and ‘m4___file__’ instead of ‘__file__’. This option has no effect if ‘-R’ is also specified. ‘-Q’ ‘--quiet’ ‘--silent’ Suppress warnings, such as missing or superfluous arguments in macro calls, or treating the empty string as zero. ‘--warn-macro-sequence[=REGEXP]’ Issue a warning if the regular expression REGEXP has a non-empty match in any macro definition (either by ‘define’ or ‘pushdef’). Empty matches are ignored; therefore, supplying the empty string as REGEXP disables any warning. If the optional REGEXP is not supplied, then the default regular expression is ‘\$\({[^}]*}\|[0-9][0-9]+\)’ (a literal ‘$’ followed by multiple digits or by an open brace), since these sequences will change semantics in the default operation of GNU M4 2.0 (due to a change in how more than 9 arguments in a macro definition will be handled, *note Arguments::). Providing an alternate regular expression can provide a useful reverse lookup feature of finding where a macro is defined to have a given definition. ‘-W REGEXP’ ‘--word-regexp=REGEXP’ Use REGEXP as an alternative syntax for macro names. This experimental option will not be present in all GNU ‘m4’ implementations (*note Changeword::).