m4: Errprint

 
 14.1 Printing error messages
 ============================
 
 You can print error messages using 'errprint':
 
  -- Builtin: errprint (MESSAGE, ...)
      Prints MESSAGE and the rest of the arguments to standard error,
      separated by spaces.  Standard error is used, regardless of the
      '--debugfile' option (⇒Invoking m4 Debugging options.).
 
      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.