Exiting from `m4'
=================
If you need to exit from `m4' before the entire input has been read,
you can use `m4exit':
m4exit(opt CODE)
which causes `m4' to exit, with exit code CODE. If CODE is left out,
the exit code is zero.
define(`fatal_error', `errprint(`m4: '__file__: __line__`: fatal error: $*
')m4exit(1)')
=>
fatal_error(`This is a BAD one, buster')
error-->m4: 57.m4exit: 5: fatal error: This is a BAD one, buster
After this macro call, `m4' will exit with exit code 1. This macro
is only intended for error exits, since the normal exit procedures are
not followed, e.g., diverted text is not undiverted, and saved text
(Note:M4wrap) is not reread.