I've used return in a couple of places (twice with an integer return value),
which I fear may break on old platforms. Otherwise I've assumed that all
shell variables are in global scope, and that positional parameters are
stacked and restored at function call boundaries to an arbitrary nesting
limit.
Thanks for cross-posting to the Autoconf mailing list. Unfortunately, the assumption about positional parameters being restored is invalid. Please take a look at these recent messages to the autoconf-patches mailing list:
http://mail.gnu.org/archive/html/autoconf-patches/2003-12/msg00009.html http://mail.gnu.org/archive/html/autoconf-patches/2003-12/msg00016.html http://mail.gnu.org/archive/html/autoconf-patches/2003-12/msg00018.html
I have been planning to write a blurb for the Autoconf manual regarding this issue, but I am, at present, still waiting for my paperwork to be processed.
-- ES