autoconf: Forbidden Patterns
1
1 8.3.10 Forbidden Patterns
1 -------------------------
1
1 M4sugar provides a means to define suspicious patterns, patterns
1 describing tokens which should not be found in the output. For
1 instance, if an Autoconf `configure' script includes tokens such as
1 `AC_DEFINE', or `dnl', then most probably something went wrong
1 (typically a macro was not evaluated because of overquotation).
1
1 M4sugar forbids all the tokens matching `^_?m4_' and `^dnl$'.
1 Additional layers, such as M4sh and Autoconf, add additional forbidden
1 patterns to the list.
1
1 -- Macro: m4_pattern_forbid (PATTERN)
1 Declare that no token matching PATTERN must be found in the output.
1 Comments are not checked; this can be a problem if, for instance,
1 you have some macro left unexpanded after an `#include'. No
1 consensus is currently found in the Autoconf community, as some
1 people consider it should be valid to name macros in comments
1 (which doesn't make sense to the authors of this documentation:
1 input, such as macros, should be documented by `dnl' comments;
1 reserving `#'-comments to document the output).
1
1 Of course, you might encounter exceptions to these generic rules, for
1 instance you might have to refer to `$m4_flags'.
1
1 -- Macro: m4_pattern_allow (PATTERN)
1 Any token matching PATTERN is allowed, including if it matches an
1 `m4_pattern_forbid' pattern.
1