* Provide some GNUisms as extensions.
* Provide dynamically growable string space.
* Make define(defn(foo)) work correctly for builtins.
(The current version is supposed to be capable of satisfying autoconf.)
All still relevant NetBSD changes have been preserved in this version, and
formatting and style fixes have been applied in various places.
Thanks to Masao Uebayashi <uebayasi@soum.co.jp> for pointing this out.
in `The M4 Macro Processor', by Kernighan and Ritchie.
* `|' and `||' are both logical or. There is no binary or.
* `&' and `&&' are both logical and. There is no binary and.
* `!' has a much higher precedence.
* The equal and relation operators have the same precedence.
* `**' is implemented, and `^' is for exponentation (not xor).
* Unary `+' in implemented.
I've coded exponentiation to return what appears to be the same results
that other versions of m4 return.