Next: Location, Up: Miscellaneous [Contents][Index]
You can print error messages using errprint
:
Prints message and the rest of the arguments to standard error, separated by spaces. Standard error is used, regardless of the --debugfile option (see Invoking m4).
The expansion of errprint
is void.
The macro errprint
is recognized only with parameters.
errprint(`Invalid arguments to forloop ') error→Invalid arguments to forloop ⇒ errprint(`1')errprint(`2',`3 ') error→12 3 ⇒
A trailing newline is not printed automatically, so it should be
supplied as part of the argument, as in the example. Unfortunately, the
exact output of errprint
is not very portable to other m4
implementations: POSIX requires that all arguments be printed,
but some implementations of m4
only print the first.
Furthermore, some BSD implementations always append a newline
for each errprint
call, regardless of whether the last argument
already had one, and POSIX is silent on whether this is
acceptable.